Dies sind die archivierten Webseiten des Lehrstuhls für Programmierung und Softwaretechnik (PST).
Die Seiten des Software and Computational Systems Lab (SoSy) finden Sie auf https://www.sosy-lab.org/.

Software Engineering für spezielle Anwendungsgebiete: Entwurf und Implementierung paralleler Programme

Aktuelles

[12. November] Mündliche Nachholprüfungen am Freitag, 23. November: Die genauen Prüfungszeiten werden heute per EMail mitgeteilt. Prfüngstermine werden nur an diejenigen ausgegeben, die ihre Prüfungsanmeldung gemäß der vor einer Woche verschickten Aufforderung bestätigt haben.

[2. August] Die Klausurergebnisse wurden über UniWorX veröffentlicht.

ÄNDERUNG Die Klausureinsicht findet am Dienstag, 14. August 2012, im Raum F007, Oettingenstr. 67, zwischen 12:00 und 13:00 Uhr statt.

[19. Juli] Es findet eine Nachholprüfung statt (voraussichtlich mündliche Prüfung) am Freitag, 23. November 2012. Anmeldung ab sofort unter UniWorX bis spätestens 30. September 2012.

[18. Juli] Zur Klausur am Freitag bitte aktuellen Studentenausweis und Lichtbildausweis (z.B. Personalausweis) mitbringen. Es sind keine Hilfsmittel erlaubt.

[2. Juli] Das Übungsblatt 10 wird auf die beiden Übungen am 6. und 13. Juli aufgeteilt, so dass bereits am 6. Juli Fragen zum gesamten Stoff gestellt werden können.

[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

  • Es findet eine Nachholprüfung statt (voraussichtlich mündliche Prüfung) am Freitag, 23. November 2012. Anmeldung ab sofort unter  UniWorXbis spätestens 30. September 2012.

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.

  • Kapitel 1 (vollständig)
  • Kapitel 2 (vollständig)
  • Kapitel 3 (vollständig)
  • Kapitel 4 (vollständig)
  • Kapitel 5 (vollständig)
  • Kapitel 6 (vollständig)
  • Kapitel 7 (vollständig)
  • Kapitel 8 (vollständig)
  • FSP-Prozesse für SingleLaneBridge (txt-Format, lts-Format)
  • Kapitel 9 (vollständig)
  • Inhaltsverzeichnis der Vorlesung

Letzte Aktualisierung:

Dienstag, 17.07.12: Kapitel 8: Folien 15, 20, 23 erneuert; FSP-Prozesse für SingleLaneBridge bereit gestellt; Kapitel 9 und Inhaltsverzeichnis hinzugefügt. Die Folien umfassen den Stoff bis zur 13. und letzten Vorlesung am 19.07.12.

Übung

Die Übungen unterliegen dem Copyright. Teilnehmern der Vorlesung ist die Verwendung für persönliche Studien gestattet. Alle anderen Rechte sind vorbehalten.

Hörerkreis

Diplomstudiengänge in Informatik, Master Informatik, Bachelor Informatik (Vertiefende Themen), Nebenfach Informatik zu Diplom-Mathematik oder Diplom-Physik

Benötigte Vorkenntnisse

Sequentielles Java sowie Grundkenntnisse der Unified Modeling Language UML

Literatur

  • 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