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/.

Formale Objektorientierte Software-Entwicklung

Aktuelles

Inhalt

Software-Engineering kann sich im Bereich der Sicherheit und Verlässlichkeit noch keineswegs mit anderen Ingenieurdisziplinen messen. In der Vorlesung wird darauf eingegangen, wie diese Kluft überbrückt werden kann, indem pragmatische Methoden der objektorientierten Software-Entwicklung durch fundierte, formale Techniken ergänzt werden. Als Modellierungssprache wird hierbei die Unified Modeling Language UML verwendet. Für die formale Beschreibung von Eigenschaften objektorientierter Systeme wird die Object Constraint Language OCL eingesetzt. Mit Hilfe von OCL können Klassen- und Komponenten-Invarianten sowie Vor- und Nachbedingungen für Operationen spezifiziert werden.

In diesem Rahmen werden Spezifikationsmethoden und Validierungstechniken für Systemmodelle besprochen und Methoden zum Nachweis der Korrektheit von Verfeinerungen und Implementierungen vorgestellt. Als semantische Grundlage werden dabei markierte Transitionssysteme mit Output verwendet.


Hörerkreis:

Studierende im Hauptstudium mit Hauptfach Informatik. Nebenfach-Studenten mit Interesse an Mathematik-basierten Spezifikationsmethoden sind ebenfalls willkommen.

Voraussetzungen:

UML und Kenntnisse in Prädikatenlogik und formalen Methoden

Literaturhinweise:

  • Jos Warmer, Anneke Kleppe. The Object-Constraint Language Second Edition, Addison Wesley, 2003.
  • Object Management Group. UML 2.0 OCL Specification (Final Adopted Specification 03-10-14)
  • Object Management Group. UML 2.1.1 OCL Specification vom 1. Mai 2006 (formal/06-05-01)
  • Bernhard Rumpe. Agile Modellierung mit UML: Codegenerierung, Testfälle, Refactoring. Xpert.press, 2005.
  • Hubert Baumeister, Rolf Hennicker, Alexander Knapp, Martin Wirsing. OCL Component Invariants. Proc. Wsh. Montery - Engineering Automation for Software Intensive System Integration, pages 208-215. U.S. Naval Postgraduate School, Monterey, 2001.
  • The ITP/OCL Project