Zustandsdiagramme: Ein Überblick

avatar

Mithilfe von Sequenzdiagrammen wurde das ablauforientierte Verhalten von Operationen modelliert. Diese Modellierung reicht aber nicht, wenn Objekte mit einem komplexen Zusammenspiel von Zuständen und Operationen auftreten. Dieses zustandsorientierte Verhalten von Objekten modelliert man mit Hilfe von Zustandsdiagrammen.

Zustand

In einem Zustandsdiagramm wird beispielsweise dargestellt, wie die Instanzen einer Klasse in Abhängigkeit von ihrem Zustand und weiteren Bedingungen auf bestimmte Ereignisse wie z. B. den Aufruf einer Operation reagieren.
Der Zustand eines Objekts zu einem bestimmten Zeitpunkt ist durch die vorliegende Kombination seiner konkreten Attributwerte und Verbindungen zu anderen Objekten bestimmt.

Zustände werden in der UML als abgerundete Rechtecke dargestellt, in denen der Bezeichner des Zustands angegeben werden kann.


Abbildung 1: Darstellung eines Zustands

Ereignis

Objekte ändern ihre Attributwerte durch die Ausführung von Operationen. Als Ereignis bezeichnet man das Eintreten eines bestimmten Sachverhalts zu einem bestimmten Zeitpunkt, das im Kontext der Modellierung eine Zeitdauer besitzt. Ereignisse werden mit Ereignisnamen versehen. Da Ereignisse über einen Namen und ggf. Attribute verfügen, werden sie in der UML graphisch wie Klassen dargestellt, obwohl sie natürlich keine Klassen sind und weder über Operationen noch über Assoziationen verfügen.

Ein Zustandsübergang wird in der UML als Pfeil mit offener Spitze vom Ausgangs- zum Folgezustand dargestellt, der mit dem Namen des den Zustandsübergang auslösenden Ereignisses beschriftet werden kann. Oft ist es sinnvoll, modellieren zu können, dass ein und dasselbe Ereignis für denselben Objektzustand unterschiedliche Übergänge auslösen kann. Welcher Übergang stattfindet, hängt dann z. B. von den konkreten Werten der Ereignisattribute ab. Zur Modellierung solcher Sachverhalte können Zustandsübergänge mit Bedingungen versehen werden.

Eine Bedingung, auch Wächterbedingung genannt, ist ein Ausdruck, der sich u. A. auf Parameter des auslösenden Ereignisses sowie auf Attribute und Verbindungen des betroffenen Objekts beziehen kann. Die Wächterbedingung eines Zustandsübergangs wird im Zustandsdiagramm in eckigen Klammern hinter dem Ereignisnamen angegeben.


Abbildung 2: Zustandsdiagramm mit Bedingungen

Quellen
OMG: Unified Modeling Language Specification V. 1.4, OMG, Sept. 2001



0
0
0.000
0 comments