20.2. Zustand

Ein Zustand modelliert eine Situation, in denen einige (in der Regel implizite) invariante Bedingung für die Elternklasse gelten. Diese Invarianz, kann eine statische Situation sein, wie ein Objekt, dass auf einige extern auftretende Ereignisse wartet, oder einige „laufende“ dynamische Aktivitäten.

Ein Zustand wird in einem Zustandsdiagramm von ArgoUML als Rechteck mit abgerundeten Ecken dargestellt, mit einer horizontalen Linie, die den Namen im oberen Teil von der Beschreibung des Verhaltens im unteren Teil trennt. Die Beschreibung des Verhaltens schließt die Ein- und Ausgangs-Aktionen und jede interne Transition ein.

20.2.1. Detail-Register Zustand

Die aktiven Detail-Register für Zustände sind die folgenden.

Zu-Bearbeiten-Element

Standard-Register.

Eigenschaften

Siehe Abschnitt 20.2.2, „ Eigenschaftssymbolleiste Zustand und Abschnitt 20.2.3, „ Eigenschaftsfelder für einen Zustand unten.

Dokumentation

Standard-Register.

Darstellung

Standard-Register. Die Werte der Begrenzung des Zustandes definieren den umgebenden Rahmen des Zustandes.

Stereotyp

Standard-Register.

Eigenschaftswerte

Standard-Register.

20.2.2. Eigenschaftssymbolleiste Zustand

Nach oben

Navigiert in der Paketstruktur nach oben.

Neuer Stereotyp

Erzeugt einen neuen Stereotyp (siehe Abschnitt 16.6, „ Stereotyp) für den markierten Zustand und springt sofort in das Register Eigenschaften dieses Stereotyps.

Löschen

Löscht den Zustand aus dem Modell.

[Anmerkung]Anmerkung

Dies ist ein Löschen aus dem Modell, nicht nur aus dem Diagramm. Sie können einen Zustand aus dem Diagramm entfernen und ihn innerhalb des Modelles erhalten, wie dies in den anderen Diagrammen möglich ist.

20.2.3. Eigenschaftsfelder für einen Zustand

Name

Textfeld. Der Name des Zustandes. Per Konvention beginnen die Zustandsnamen mit einem Kleinbuchstaben und verwenden die Groß-/Kleinschreibung, um Wörter innerhalb des Namens voneinander zu trennen.

[Anmerkung]Anmerkung

ArgoUML erzwingt diese Namenskonvention nicht.

Container

Textfeld. Zeigt den Container dieses Zustandes. Dies ist die Zustandshierarchie.

Ein Taste 1-Doppelklick auf diesen Eintrag navigiert zu dem zusammengesetzten Zustand, der diesen Zustand enthält. Alle Zustände sind mindestens in einem versteckten Zustand auf oberster Ebene enthalten („top“ genannt), der die Wurzel der Zustands-Container-Hierarchie bildet.

Eintritt-Aktion

Textfeld. Zeigt den Namen der Aktion (falls vorhanden), die beim Eintritt in diesen Zustand ausgeführt wird.

[Anmerkung]Anmerkung

Dieses Feld zeigt den Namen der Aktion, während im Diagramm der Ausdruck der Aktion dargestellt wird.

Ein Taste 1-Doppelklick navigiert zu dem markierten Eintrag, Taste 2 öffnet ein Popup-Menü mit zwei Einträgen:

  • Neu. Fügt eine neue Eintritt-Aktion einer bestimmten Art ein. Dieses Menü hat die folgenden Submenüs, um die Art der Aktion auszuwählen: Call Action, Create Action, Destroy Action, Return Action, Send Action, Terminate Action, Uninterpreted Action.

  • Aus Modell entfernen. Löscht die Eintritt-Aktion.

Austritt-Aktion

Textfeld. Zeigt die Aktion (falls vorhanden) die beim Verlassen des Zustandes ausgeführt wird.

Ein Taste 1-Klick navigiert zu der markierten Aktion, Taste 2 öffnet ein Popup-Menü mit zwei Einträgen.

  • Neu. Fügt eine neue Austritt-Aktion einer bestimmten Art ein. Dieses Menü hat die folgenden Submenüs, um die Art der Aktion auszuwählen: Call Action, Create Action, Destroy Action, Return Action, Send Action, Terminate Action, Uninterpreted Action.

  • Aus Modell entfernen. Löscht die Austritt-Aktion.

Ausführen-Aktion

Textfeld. Zeigt die Aktion (falls vorhanden), die ausgeführt wird, solange Sie sich in dem Zustand befinden.

Ein Taste 1-Klick navigiert zu der markierten Aktion, Taste 2 öffnet ein Popup-Menü mit zwei Einträgen.

  • Neu. Fügt eine neue Ausführen-Aktion einer bestimmten Art ein. Dieses Menü hat die folgenden Submenüs, um die Art der Aktion auszuwählen: Call Action, Create Action, Destroy Action, Return Action, Send Action, Terminate Action, Uninterpreted Action.

  • Aus Modell entfernen. Löscht die Ausführen-Aktion.

Verzögerbare Ereignisse

Textfeld. Zeigt eine Liste von Ereignissen, die Kandidaten dafür sind, dass sie durch den Zustandsautomaten zurückgehalten werden, wenn sie keine Transitionen aus dem Zustand auslösen (nicht verbraucht).

Ein Taste 1-Klick navigiert zu dem markierten Ereignis, Taste 2 auf ein Ereignis öffnet ein Popup-Menü mit den folgenden Einträgen:

  • Auswählen. Erlaubt das hinzufügen bereits existierender Ereignisse zur Liste der aufgeschobenen Ereignisse.

  • Neu. Fügt ein neues Ereignis einer bestimmten Art hinzu. Dieses Menü hat die folgenden Submenüs, um die Art des Ereignisses auszuwählen: Call Event, Change Event, Signal Event, Time Event.

  • Aus Modell entfernen. Löscht das Ereignis.

Ankommend

Textbereich. Listet alle Transitionen auf, die in diesen Zustand eintreten.

Ein Taste 1-Doppelklick navigiert zu dem markierten Eingang.

Abgehend

Textbereich. Listet alle Transitionen auf, die diesen Zustand verlassen.

Ein Taste 1-Doppelklick navigiert zu dem markierten Eingang.

Interne Transitionen

Textbereich. Listet alle internen Transitionen des Zustandes auf. Solche Transitionen weder verlassen noch gehen in den Zustand hinein, so dass sie keinen Zustandswechsel verursachen. Das bedeutet, das die Eintritt- und Austritt- Aktionen nicht aufgerufen werden.

[Anmerkung]Anmerkung

Dieses Feld zeigt den Namen der Transition, während im Diagramm der Name des Auslösers, mit einem / getrennt vom Auswirkungsskript angezeigt wird.

Ein Taste 1-Doppelklick navigiert zu der markierten Transition, Taste 2 öffnet ein Popup-Menü mit einem Eintrag.

  • Neu. Fügt eine neue interne Transition hinzu.