Übungsklausur Software Engineering
Software Engineering
Software Engineering
-
- 1 / 53
-
Cartes-fiches
Was ist eine Verbessernde Wartung?
Die Software wird so verändert, dass bestimmte Qualitätsmerkmale der Software verbessert werden
Welche Ratschläge gibt es in der Codierung
- keine zu genialen Programmiertricks verwenden
- keine leeren Zweige in Bedingungen
- keine zu verschachtelten Anweisungen
- Keine Seiteneffekte
- Nicht den Code zu sehr optimieren
Welche Codierregeln gibt es?
- Methoden mit mehr als 5 Parametern deuten auf Fehler im Entwurf
- Bezeichner darf nur einem Zweck dienen
- Ausdrücke verständlich. wenn teue, dann auch positiv
- keine Text- und Zahlenliterale ausser 0 und1
- jedes Programm muss ausreichend kommentiert sein
was ist das Ziel des Regressionstests?
unerwünschte Seiteeffekte die im Zuge der Wartung entstanden sind zu erkennen
Welche Anforderungen an die Kommentierung gibt es?
- Sprechenden Bezeichner wählen
- nicht das im Code sichtbare wiederholen oder ergänzen
- Kommentare immer so knapp wie möglich, aber mit allen Infos versehen
- Auf Plural achten, kann sehr für Verwirrung sorgen
- Kommentare durch Formatierung vom Code abheben
- Automatische Generierung der Doku z.B. JavaDocs
Systematischer Test?
- Randbedingungen definiert und präzise erfasst
- Eingaben systematisch ausgewählt
- Ergebnisse dokumentiert und nach Kriterien beurteilt, die vor dem Test festgelegt wurden
Systematischer Test besteht aus welchen Schritten?
- Vorberitung (Aufwändig)
- Ausführung
- Auswertung
Was ist das Testgeschirr
- Testtreiber (versorgt Prüfling mit Eingaben)
- Platzhalter/Stubs (steht für Komponente die von Prufling bebötigt wird, aber noch nicht implementiert ist)
was ist das Hauptziel der Testvorbereitung
Möglichst automatische Ausführung des Tests
Regeln für einen guten systematisch Test
- Keine spezielle Testvariante des Prüflings
- kein Abbruch bei Fehler
- keine Modifikation während dem Test
- kein Wechsel zw. Test und Debugging
Resultate der Aufwands- und Kostenschätzung benötigt man für?
- Make or Buy Entscheidung
- Kalkulation und Kostenschätzung
- Personalplanung
- Nachkalkulation
Welche Ansätze zur Kostenschätzung gibt es?
- Expertenschätzung
- Delphi-Verfahren
- Algorithmische Verfahren wie
- Cocomo
- CocomoII
- Function Point Verfahren
Aufgaben der Konfigurationsverwaltung
- Versions-, Konfigurations-, und Änderungskontrolle
- Konstruktion ausführbarer Programme
- Koordination der Teamarbeit