Altova UModel 2025 Professional Edition

Generieren von Code anhand von Zustandsdiagrammen

Zur Startseite Zurück Nach oben Weiter

Sie können in UModel ausführbaren Code (Java, VB.NET) anhand von Zustandsdiagrammen generieren. Es werden beinahe alle Zustandsdiagrammelemente und -funktionen unterstützt:

 

Zustand

Zusammengesetzter Zustand, mit jeder hierarchischen Ebene

Orthogonaler Zustand, mit beliebig vielen Regionen

Region

Anfangszustand

Endzustand

Transition

Guard

Trigger

Aufrufereignis

Gabelung

Vereinigung

Entscheidung

Kreuzung

DeepHistory

ShallowHistory

Eintritts-/Austritts-/Do-Aktion

Effekt

 

Die Generierung von Zustandsautomatencode ist in das normale Round Trip Engineering integriert, d.h. der Zustandsautomatencode kann bei jedem Forward Engineering automatisch aktualisiert werden.

 

codeStm1

 

 

In der Abbildung oben sehen Sie das Zustandsdiagramm AirCondition aus dem Verzeichnis ..\StateMachineCodeGeneration unter...\UModelExamples. Für jede der Sprachen, in der in UModel Code generiert werden kann, gibt es ein eigenes Verzeichnis.

 

Jedes Verzeichnis enthält jeweils einen Ordner AirCondition und einen Ordner Complex, die jeweils das entsprechende UModel-Projekt, die Programmiersprachen-Projektdateien sowie die generierten Quelldateien enthalten. Die Projektdatei Complex.ump enthält beinahe alle der von UModel beim Generieren von Zustandsdiagrammcode unterstützten Modellierungselemente und Funktionalitäten.

 

Außerdem enthält jedes Verzeichnis eine Testapplikation, z.B. TestSTMAirCondition.sln für C#, sodass Sie mit den generierten Quellcodedateien sofort arbeiten können.

 

state-mach-app

So generieren Sie anhand eines Zustandsdiagramms Code:

Klicken Sie mit der rechten Maustaste in das Zustandsdiagramm und wählen Sie den Befehl "Zustandsautomatencode generieren" oder

Wählen Sie die Menüoption Projekt | Zustandsautomatencode generieren.

 

codeStm12

 

In der Abbildung oben sehen Sie die Standardeinstellungen. Klicken Sie zur Codegenerierung auf OK.

 

 

Der Zustandsautomatencode wird automatisch aktualisiert, wenn Sie das Forward Engineering starten. Sie können diese Einstellung allerdings ändern, indem Sie auf den Hintergrund des Zustandsdiagramms klicken und das Kontrollkästchen "Code automatisch aktualisieren" deaktivieren.

 

Am generierten Code sollten keine manuellen Änderungen vorgenommen werden, da diese Änderungen beim Reverse Engineering nicht im Zustandsdiagramm übernommen werden.

 

codeStm13

 

Wenn Sie neben dem Feld "Code automatisch aktualisieren" auf das Symbol ic-more klicken, wird das Dialogfeld "Zustandsautomatencode generieren" geöffnet, wo Sie die Codegenerierungseinstellungen ändern können.

So führen Sie in einem Zustandsdiagramm eine Syntaxüberprüfung durch:

Klicken Sie mit der rechten Maustaste auf das Diagramm und wählen Sie den Befehl Zustandsautomatensyntax überprüfen.

© 2018-2024 Altova GmbH