Archiv der Kategorie: Uncategorized

Rückblick und Ausblick

Nach fast zwei Jahren kam für mich der Moment, den Erfolg (in Form von Zugriffszahlen) der verschiedenen Themen und die von mir eingeschlagene Richtung zu betrachten.

Die meisten Zugriffe bekam das Thema „praktische Probleme“, allen voran der „Polymorphismus in Sequenzdiagrammen„. Auf der anderen Seite bekam die Metamodellierung wenig Zugriffe.

Da die Auswertung der Zugriffe vor allem Suchmaschinentreffer bewertet, ist das Ergebnis lediglich eine Annäherung an die wirklichen Interessen der Leser. Trotzdem habe ich beschlossen, in Zukunft anstatt reiner Metamodellierung mehr Praxisthemen zu behandeln.

Zustandsautomaten / State machines

Ein UML State Machine Diagram beschreibt das Verhalten eines Systems, es ist daher ein dynamisches Diagramm. Es besteht aus Zuständen (States), Zustandsübergängen (Transitions) und Ereignissen (Events). Dieser Diagrammtyp basiert auf der Theorie der endlichen Automaten.

In der Anwendungsentwicklung wird dieser Diagrammtyp häufig zur Darstellung eines Lebenszyklus verwendet, in der hardwarenahen Programmierung (z.B. mit VHDL) wird oft das ganze System als Zustandsautomat definiert.

Das State Machine Diagram verdeutlicht zum einen die Reaktion eines Systems auf Ereignisse, zum anderen die erlaubte Abfolge von Zustandsübergängen. In der Objektorientierung ist die Basis dieses Diagrammtyps ein Objekt, das die definierten Zustände annehmen kann. Als vereinfachtes Beispiel für ein State Machine Diagram kann folgende Telefon-Modellierung dienen:

example state machine
UML beinhaltet noch weitere Elemente für das Zustandsdiagramm:
– Transition Actions
– Guards
– Nested States
Vor allem die Transition Actions ermöglichen die Integration mit statischen Diagrammen, da hinter einer Transition Action ein Methodenaufruf stehen kann.