20.6. Subautomaten Zustand

Ein Subautomaten-Zustand ist eine syntaktische Bequemlichkeit, die die Wiederverwendung und die Modularisation erleichert. Es ist eine Kurzform die eine makroähnliche Erweiterung durch einen anderen Zustandsautomaten darstellt, der sematisch einem zusammengesetzten Zustand entspricht. Der eingefügte Zustandsautomat wird referenzierter Zustandsautomat genannt, während der Zustandsautomat, der den Subautomaten-Zustand enthält, der haltende Zustandsautomat genannt wird. Der gleiche Zustandsautomat kann mehr als einmal im Kontext eines einfachen haltenden Zustandsautomaten referenziert werden. In der Tat stellt ein Subautomaten-Zustand ein Aufruf einer Subroutine eines Zustandsautomaten dar, mit einem oder mehreren Eintritts- und Austrittspunkten. Die Eintritts- und Austrittspunkte werden durch flache Zustände spezifiziert.

Der Subautomaten-Zustand wird dargestellt wie ein normaler Zustand mit einer zusätzlichen include-Deklaration (und durch eine Linie getrennt) oberhalb seines internen Transitionsbereiches. Der Ausdruck, der dem reservierten Wort include folgt, ist der Name des aufgerufenen Subautomaten.

ArgoUML unterstützt aktuell nur die horizontale Teilung eines nebenläufigen zusammengesetzten Zustandes in Regionen.

Die Beschreibung der Detailfenster einer nebenläufigen Region ist immer identisch mit einem zusammengesetzten Zustand (siehe Abschnitt 20.4, „ Zusammengesetzter Zustand und wird daher hier nicht wiederholt. Der einzige Unterschied ist ein zusätzliches Feld:

Subautomat

Kombinationsfeld. Erlaubt das Auswählen des Subautomaten, der in diesen zusammengesetzten Zustand eingefügt wird.