Software Engineering für spezielle Anwendungsgebiete: Entwurf und Implementierung paralleler Programme
Aktuelles
[16. April] Folien für die 1. Vorlesung am 19. April bereit gestellt. Die Folien bitte ausgedruckt zur Vorlesung mitbringen! Freie Stellen werden in der Vorlesung ergänzt.
[10. April] Die erste Vorlesung findet am 19. April statt.
[12. März] Bitte melden Sie sich über UniWorX zur Vorlesung an.
Inhalte
In komplexen Systemen werden häufig eine Vielzahl von Prozessen gleichzeitig (bzw. quasi-gleichzeitig) ausgeführt. In dieser Vorlesung werden Methoden und Techniken zur Entwicklung von Softwaresystemen auf der Grundlage paralleler Programme besprochen.
Für die formale Spezifikation und den Entwurf paralleler Programme wird die auf endlichen Zustandsmaschinen beruhende Sprache FSP (Finite State Processes) von Magee und Kramer verwendet. Damit können typische Phänomene und Eigenschaften, die bei der Programmierung paraller Programme auftreten, wie z.B. Prozess-Synchronisation, Sicherheits- und Lebendigkeits-Eigenschaften und Deadlocks, erfasst und analysiert werden. Zur Analyse werden Methoden des Model-Checking eingesetzt.
Für die Implementierung paralleler Programme wird das Thread-Konzept von Java verwendet. Es werden methodische Richtlinien für die Überführung von Prozessmodellen in Java-Programme besprochen. Zur Modellierung der Implementierung paralleler Systeme wird die Unified Modeling Language UML verwendet.
Termine
Vorlesung (3-stündig)
- Donnerstag 11-14 Uhr, Oettingenstr. 67, BU101
Übung (2-stündig)
- Freitag 12-14 Uhr, Oettingenstr. 67, 115
- Freitag 14-16 Uhr, Oettingenstr. 67, 115
Klausur
- Freitag, 20.07.2012, 14:30 - 16:30 Uhr, Oettingenstr. 67, B001
Nachholklausur
- Wird noch bekannt gegeben.
Personen
Dozent
Übungsleiter
Materialien
Vorlesung
Die folgenden Vorlesungsfolien unterliegen dem Copyright. Teilnehmern der Vorlesung ist die Verwendung für persönliche Studien gestattet. Alle anderen Rechte sind vorbehalten.
Letzte Aktualisierung:
Montag, 07.05.12: Kapitel 3, Abschnitt 3.1 hinzugefügt. Die Folien umfassen den Stoff bis zur 4. Vorlesung am 10.05.12.
Übung
Die Übungen unterliegen dem Copyright. Teilnehmern der Vorlesung ist die Verwendung für persönliche Studien gestattet. Alle anderen Rechte sind vorbehalten.- Übungsblatt 1.
- Lösungen dazu: Aufgabe 1, Aufgabe 2, Aufgabe 3,
- Übungsblatt 2,
- Übungsblatt 3,
- Lösung dazu: zip-Archiv mit Java Dateien, Klassendiagramm,
- Übungsblatt 4,
- Lösungen dazu: Aufgabe 1, Aufgabe 2 (Teile a) und b))
- Übungsblatt 4 gilt auch noch für die 5. Übungsstunde am 25.05.
Hörerkreis
Diplomstudiengänge in Informatik, Master Informatik, Bachelor Informatik (Vertiefende Themen), Nebenfach Informatik zu Diplom-Mathematik oder Diplom-PhysikBenötigte Vorkenntnisse
Sequentielles Java sowie Grundkenntnisse der Unified Modeling Language UMLLiteratur
- Jeff Magee, Jeff Kramer: Concurrency: State Models and Java Programs, Wiley & Sons; Auflage: 2nd ed. (21. April 2006).
Weitere Inhalte (z.B. Folien zum Buch) hier verfügbar:
http://www.doc.ic.ac.uk/~jnm/book/
Tool
- LTSA - Labelled Transition System Analyser
http://www.doc.ic.ac.uk/ltsa/




