Vorlesung: Software-Engineering im Sommersemester 2006
Mo 16.30, Raum DE 15, 0506
Voraussetzungen:
Objektorientierte Programmierung, Algorithmen und Datenstrukturen
Inhalt:
- Einführung
Begriffsbestimmung, Systeme, Modelle, Qualitätskriterien
- Phasen
und Vorgehensmodelle
Ueberblick, Planungsphase, Lastenheft
Validierung vs. Verifikation
- Aufwandsabschätzung
- Definitionsphase
Pflichtenheft, Begriffliche Analyse, Metriken für Code-Eigenschaften
- Teil-Ganzes-Beziehungen
Formale Grundlagen (Mereologie)
- Spezifikation
mit UML: Strukturdiagramme Teil 1
Klassendiagramme, Klassen, Attribute, Operationen, Assoziationen, Multiplizitäten,
- Semantik von UML-Klassendiagrammen
Schlußfolgern über Klassendiagramme
- Spezifikation
mit UML: Objekt-, Paket- und Verhaltensdiagramme
Objektdiagramme, Paketdiagramme, Use-Case-Diagramme, Aktivitäten, Zustandsdiagramme,
Interaktionsdiagramme
Automatentheoretische Semantik der Verhaltensdiagramme
- OCL:
Object Constraint Language
Erhöhung der Ausdruckskraft in Struktur- und Verhaltensmodellierung
- Definitionsformen
für die Semantik von Struktur- und Verhaltensmodellen
Schwache Spezifikation der Semantik von Struktur- und Verhaltensdiagrammen auf Metaebene (Metamodellierung)
Semantik von Aktivitäten durch Vor- und Nachbedingungen
- Spezifikation
und Verifikation
mit Vor- und Nachbedingungen
Schwächste Vorbedingungen und stärkste Nachbedingungen (nach Hoare)
- Software-Abstraktionen: Agile Methoden vs. Design mit automatischer Analyseunterstützung
Extreme
Programming als Beispiel für Agile Methoden, Alloy als Beispiel für Design mit automatischer Analyseunterstützung
Uebungen:
- Planungsphase
- Aufwandsabschätzung
- Lastenheft, Pflichtenheft
- Function-Point-Methode
-
UML Klassenmodelle 1 -
Musterlösung
-
UML Klassenmodelle 2 -
Musterlösung
-
UML Verhaltensdiagramme -
Musterlösung
-
UML Statecharts -
Musterlösung
-
OCL -
Musterlösung
Optional Exercise, mit Musterlösung
-
Metamodellierung -
Musterlösung
-
Verifikation 1 -
Musterlösung
-
Verifikation 2 -
Musterlösung
-
Pfadüberdeckung
Literatur:
(siehe Folien)
Klausuren aus früheren Semestern:
Bitte beachten Sie, daß sich die Inhalte dieser
Vorlesung gegenüber vorigen Semestern verändert
haben. Es sind Lehreinheiten zum Themenfeld Design mit
automatischer Analyseunterstützung hinzugekommen.
Die vorigen Klausuren dienen also als Uebungsmaterial für
die restlichen Lehrinhalte.
Ralf Möller
Last modified: 16.6.05