Die Ausbildung
In diesem Kurs wird der Bogen gespannt von der Definition und Analyse der Typsicherheit von Programmiersprachen hin zur Technik des formalen Modellierens in Form des "Design by Contract" und es werden so die fundamentalen Techniken und Grundlagen des Software Engineering vermittelt.
Der Fokus liegt insbesondere auf Techniken und Methoden zur Entwicklung von „dependable systems“.
Design by Contract wird unter anderem zur Konstruktion von Software für sicherheitskritische Anwendungen eingesetzt. Verbunden mit Verifikation stellt es sicher, dass es beim Einsatz der Software nicht zu unvorhergesehenen Situationen bzw. zu Systemabstürzen kommt.
Die automatische Generierung von Testdaten ist essentiell zur Durchführung von Funktions- und Integrationstests von Softwarekomponenten.
Weitere Themen sind elementare semi-formale Modellierungstechniken, wichtige UML-Diagramme, sowie OCL. Aufbauend auf diese Grundlagen werden Object Oriented Analysis und Design, Meta-Modellierung und MDE, Design Patterns und Testen behandelt.