Vorlesung: Softwaremodellierung mit formalen Methoden
Veranstaltung L.079.05609
Sommersemester 2017
Dozentin: Heike Wehrheim
Tutorin: Marie-Christine Jakobs
Die Veranstaltung wird über die koaLA Platform organisiert. Die Anmeldung zur Veranstaltung findet über PAUL statt.
Inhalt
Formale Methoden sind Sprachen zur Modellierung/Spezifikation von Systemen. Ein Modell eines (Soft- oder Hardware) Systems beschreibt auf einer gewissen Abstraktionsebene die Funktionalität des Systems. Im Gegensatz zu (den meisten) Programmiersprachen besitzen formale Methoden eine genau festgelegte Semantik, d.h. eine mathematische Beschreibung der Bedeutung einer Spezifikation. Diese Festlegung der Semantik erlaubt es, das Systemmodell bereits vor der eigentlichen Implementierung formal zu analysieren und mögliche Fehler frühzeitig zu finden.
In der Vorlesung sollen verschiedene formale Methoden eingeführt werden, die für unterschiedliche Systemarten geeignet sind. Für jede dieser formalen Methoden werden Semantik und Analysetechniken vorgestellt und Modellierungsbeispiele zur Illustration des Einsatzbereiches besprochen.
Am Anfang der Vorlesung wird es vorrangig um die Modellierung von Parallelität und Kommunikation gehen. Hier werden Petrinetze und die Prozessalgebra CCS vorgestellt. Danach werden wir uns mit Sprachen zur Beschreibung von zeitlichen Aspekten (Timed Automata) und gegebenenfalls auch mit zustandsbasierten Formalismen zur Spezifikationen von Daten und Operationen (Z und Object-Z) beschäftigen.
Allgemeine Informationen
- Hörerkreis: Studierende der Informatik im Bachelorstudiengang, 2. Studienabschnitt
- Modul: II.1.1 Softwaretechnik und Informationssysteme (siehe Modulhandbuch)
- ECTS-Punkte: 4