Home. 
.

transparent

transparent

transparent

UML-Zustandsdiagramme

Mit Altova UModel® 2012 lassen sich Zustände und Übergänge (Transitionen) eines Objekts im Laufe seines Lebenszyklus ganz einfach darstellen.

UML-Zustandsdiagramme dienen zum Beschreiben des Verhaltens einer Klasse in einem zeitlichen Ablauf. Dabei werden die Zustände und Transitionen dargestellt, die ein einzelnes Objekt während eines Ablaufs durchläuft. Zustandsdiagramme sind eine bekannte objektorientierte Methode, um ein Verhalten darzustellen und zu dokumentieren, wie ein Objekt auf Ereignisse - sowohl interne als auch externe Stimuli - reagiert.

Ob Sie nun die Business Logic eines Geschäftsobjekts wie z.B. einer Rechnung - deren Zustände z.B. "ausgestellt", "bezahlt", "fällig" sein könnten - erstellen oder das Verhalten eines komplexen Hardware-basierten Systems, UModel® 2012 erweist sich als intuitives und hilfreiches Tool beim Entwickeln von Zustandsdiagrammen.

Sie können Ihr Projekt sogar noch schneller ausführen, indem Sie anhand Ihres UModel Zustandsdiagramms ein komplettes ausführbares Quellcodeprojekt in Java, C# oder Visual Basic generieren.



UML state machine diagram

Übersicht über die Funktionen von Altova UModel

Altova UModel® 2012 ist ein intuitives, erschwingliches Tool mit allen Funktionen zum Erstellen von UML-Zustandsdiagrammen, mit dem Sie auch alle zusätzlichen Vorteile der UML-basierten Softwareentwicklung nutzen können. UModel unterstützt die folgenden komplexen Funktionen:

Download Klicken Sie hier um eine kostenlose 30-Tage Testversion von Altova® UModel® 2012 mit dem vollen Funktionsumfang herunterzuladen!

Erstellen von Zustandsdiagrammen

Die UModel® 2012 Zustandsdiagramm-Symbolleiste enthält alle UML 2 Elemente, die Sie für diesen Diagrammtyp benötigen.



UML state machine diagram toolbar

Über diese Symbolleiste stehen Ihnen beim Zeichnen Ihres Diagramms alle benötigten UML-Elemente in übersichtlicher Form zur Verfügung, denn einige der UML-Elementsymbole, aber nicht alle, kommen auch in Aktivitätsdiagrammen zum Einsatz.

Wenn Sie bei der Entwicklung iterativ vorgehen, werden Sie Ihre Zustandsdiagramme aufgrund neuer Ideen und dem Feedback von Seiten Ihrer Projektmitarbeiter immer wieder überarbeiten und erweitern.

In UModel® 2012 können vorhandene Diagramme jederzeit problemlos geändert werden. Wenn Sie einen Zustand auswählen, der geändert werden muss, verhalten sich alle damit verknüpften Transitionspfeile entsprechend, sodass zusätzliche Schritte überflüssig werden. Wenn Sie z.B. das Element "Endzustand" zuerst auswählen und dann löschen, wird der Transitionspfeil, der es verbindet, ebenfalls automatisch gelöscht.



UML state machine diagram edit

Als nächstes könnten Sie z.B. eine neue Transition von einem Zustand zu einem anderen erstellen. UModel verbindet die Zustände automatisch mit der kürzestmöglichen Linie.



UML state machine diagram transition

Beachten Sie, dass der neue Transitionspfeil nach Verbindung der Zustände ausgewählt bleibt. Der neue Transitionspfeil hat drei kleine Symbole, so genannte Ziehpunkte, über die Sie die Linieneigenschaften ändern können. Über die Layout-Symbolleiste sehen Sie, welcher Linienstil gerade ausgewählt ist.



UML state machine diagram layout toolbar

Klicken Sie einfach auf die Linie und ziehen Sie sie in die gewünschte Position.



UML state machine diagram transition



UML state machine diagram transition

Der neue Transitionspfeil in diesem Beispiel benötigt ein "Guard", d.h. eine Boolesche Anweisung, die ein Ereignis oder eine Bedingung definiert, auf die hin die Transition fortgesetzt werden soll. Ohne die Guard-Anweisung, definiert der neue Pfeil, dass der Luftentfeuchter sich abschaltet, wenn der Tank voll ist und anschließend sofort in den Mess-Status übergeht. Was passiert jedoch, wenn die Luftfeuchtigkeit immer noch hoch ist? Der Schaltkreis schaltet sich wieder ein und der Tank geht über.

Über das UModel-Eingabehilfenfenster "Eigenschaften" können Sie jederzeit ein Guard hinzufügen.



UML state machine diagram guard

Guard-Text muss in Klammern gesetzt werden, die von UModel automatisch vorgegeben werden. Sie können die Guard-Anweisung im Diagrammfenster auswählen und an jede beliebige Stelle verschieben. Der Text kann im Fenster "Eigenschaften" oder auf Wunsch auch direkt im Design-Fenster bearbeitet werden.



UML state machine diagram transition

Im Beispiel des Luftentfeuchters fehlt nur noch ein einziges Detail: Was würde geschehen, wenn die Luftfeuchtigkeit im Zimmer weder über noch unter dem gemessenen Schwellenwert liegt, sondern diesem exakt entspricht? Um ein Heißlaufen der Schaltkreise aufgrund von ständigem Ein- und Ausschalten des Systems zu verhindern, wäre die einfachste und wirtschaftlichste Methode, eine Verzögerung zur Transition hinzuzufügen, die aus dem Mess-Status hinausverweist.

Die UML-Syntax gestattet Ihnen, eine Aktivität hinzuzufügen, die während des Übergangs (Transition) aus einem beliebigen Zustand heraus durchgeführt wird. So seltsam dies auch klingen mag, in diesem Fall handelt es sich bei der Aktivität um eine kurze Zeitspanne, in der nichts geschieht.

Sie können in UModel® 2012 den Transitionspfeil auswählen und anschließend über das Kontextmenü eine neue Aktivität einfügen.



UML state machine diagram tranisiton activity

Nach Eingabe des Texts können Sie die Aktivität an eine beliebige Stelle verschieben. Die Überarbeitungen an dem Zustandsdiagramm in diesem Beispiel sind nun abgeschlossen.



UML state machine diagram

Erstellen von Operationen anhand von Transitionen

Wenn Sie eine neue Transition zu einem Zustandsdiagramm, das sich innerhalb einer Klasse oder Schnittstelle befindet, hinzufügen, können Sie ihr einen Message-Namen zuweisen oder ihr über die Dropdown-Liste im Fenster "Eigenschaften" eine bestehende Operation aus der Zielklasse zuweisen.

Wenn Sie die Option "Automatische Erstellung von Operationen" in der Symbolleiste des Zustandsdiagramms aktivieren, können Sie durch Eingabe der neuen Operation in die Transition in Ihrem Kommunikationsdiagramm eine neue Operation in der Zielklasse erstellen.

UML state machine diagram toolbar

Kompositionsstrukturdiagramme

Wenn Ihr Projekt mehr als ein einziges Steuerelement für einen Luftentfeuchter enthält, so bietet UModel® 2012 Elemente für zusammengesetzte Zustände, orthogonale Zustände und Unterautomatenzustände, die ebenso leicht platziert und bearbeitet werden können wie einfache Zustände.

Mit einem einzigen Mausklick können Sie UML-Vereinigungen und Gabelungen in verschiedenen Ausrichtungen sowie History- und Verbindungspunktreferenzelemente auswählen. Somit stehen Ihnen alle Hilfsmittel zur Erstellung komplexer Zustandsdiagramme zur Verfügung.

Altova UModel composite state machine diagram

Zum Vergrößern Bild anklicken

Generieren von Code anhand von Zustandsdiagrammen

UModel® 2012 gestattet die Generierung von Code anhand von Zustandsdiagrammen, der zur Gänze ausführbar ist. Dadurch können Sie schnell mit dem Testen der durch Ihr Zustandsdiagramm dargestellten Programmlogik beginnen. Sie können den Code entweder im Rahmen der normalen Projektcodegenerierung durch Auswahl der entsprechenden Option im Menü "Projekt" generieren oder direkt über das Zustandsdiagramm-Kontextmenü.

UModel state machine context menu

Außerdem steht im Kontextmenü eine Option zur Verfügung, mit der Sie die Syntax des Zustandsdiagramms überprüfen können, um die Generierung von ungültigem Code zu vermeiden. Im Dialogfeld "Zustandsautomatencode generieren" können Sie Einstellungen zur Codegenerierung definieren und sogar festlegen, ob der Zustandsautomatencode bei der Projektcodegenerierung automatisch neu generiert werden soll.

UModel Generate State Machine Code user settings

Die UModel® 2012 Beispiele enthalten auch Visual Studio Solution-Dateien für C# und Visual Basic sowie eine Java Test-Applikation, die die Ausführung von Zustandsautomatencode demonstriert und problemlos für Ihre eigenen Zustandsdiagramme angepasst werden kann.

UModel State Machine Code test application

Automatische Aktualisierung von Zustandsautomatencode

Jedes Entwicklungsprojekt durchläuft mehrere Iterationsphasen. UModel bietet praktische Funktionen zur Verwaltung der Generierung von Zustandsautomatencode im Laufe Ihres Projekts:

  • Fall seit der ersten Codegenerierung anhand Ihres Projekts keine Änderungen am Zustandsdiagramm vorgenommen wurden, generiert UModel den identischen Code nicht mehr neu und spart dadurch Zeit und Mühe, vor allem, wenn der Code in einem Versionskontrollsystem gespeichert ist. In diesem Fall wird während der Codegenerierung eine Meldung angezeigt, dass der Zustandsautomatencode aktuell ist.
  • Wenn Sie sofort Code anhand von Ihrem Projekt generieren möchten, aber ein oder mehrere Zustandsdiagramme nicht fertig gestellt sind, können Sie die Option "Automatische Aktualisierung" im Eigenschaftsfenster des Zustandsdiagramms deaktivieren. Dadurch wird verhindert, dass Zustandsautomatencode verfrüht generiert wird. Diese Einstellung kann für jedes Zustandsdiagramm einzeln vorgenommen werden, sodass Sie diese einzeln fertig stellen können.

Altova UModel state machine diagram properties

Protokoll-Zustandsdiagramme

Protokoll-Zustandsdiagramme sind eine Zustandsdiagrammvariante und werden zur Beschreibung komplexer Protokolle wie z.B. dem Datenbankzugriff über eine spezielle Schnittstelle oder Kommunikationsprotokollen wie TCP/IP verwendet. UModel unterstützt Protokoll-Zustandsdiagramme als eigenen Diagrammtyp und bietet dafür eine eigene Diagramm-Symbolleiste. Klicken Sie hier, um mehr über die Unterstützung von Protokoll-Zustandsdiagrammen in UModel® 2012 zu erfahren.

SysML-Zustandsdiagramme

UModel unterstützt auch SysML-Zustandsdiagramme, die mit dem zusätzlichen SysML-allocate-Element eine Erweiterung zu UML-Aktivitätsdiagrammen bilden. Klicken Sie hier, um mehr über die Unterstützung von SysML in UModel® 2012 zu erfahren.

Sehen Sie selbst, wie einfach sich UML 2-Zustandsdiagramme mit UModel® 2012 erstellen lassen! Downloaden Sie jetzt eine kostenlose 30-Tage-Testversion!



transparent
Download
Pricelist
Buy
Video
Comparison
Datasheet
Print
Mail
Like It
.
.

UML logo

.
.

Lesen Sie den Altova Blog
Read the Altova Blog!

.

Im Altova Blog lesen Sie über die neuesten Altova-Produktankündigungen, neue Produktfunktionen, technische Tipps und Informationen über die Branche. Registrieren Sie sich jetzt!

.
.

transparent

transparent