 |
 | |  |  | | Beschreibung |  | In verteilten Systemen wird das Verhalten von Komponenten mittels State Transition Diagrams (STDs) beschrieben. Ein STD beschreibt das Verhalten eines Systems oder einer Komponente in Form der Reaktionen auf Eingaben aus der Umgebung und der daraus resultierenden Ausgaben in die Umgebung. Die Reaktionen hängen vom aktuellen Zustand der Komponente ab. Visuell werden STDs durch Graphen mit ovalen Knoten für die Zustände und annotierte Pfeile für die Transitionen repräsentiert.
Kontrollzustände
Die möglichen Kontrollzustände des Zustandsübergangssystems werden durch die Knoten im STD beschrieben (bezeichnete Ellipsen). Die Bezeichnung ist ein bloßer Name, ohne Einfluss auf das Verhalten. In jedem STD muss genau ein Zustand als Initialzustand (Anfangszustand) markiert werden. In diesem Zustand befindet sich das System beim Start. Der Initialzustand wird durch einen schwarzen Kreis links in der Ellipse gekennzeichnet.
Typische Situationen, in denen sich unsere Ampelanlage befinden kann, ergeben sich aus ihren Anzeigen. Daher legen wir fest, dass die Komponente Controller immer in einem der folgenden Zustände ist: Green, Yellow, Red, RedYellow. Zusätzlich gibt es einen Zustand für die Initialisierung (Init). Abbildung 1 zeigt die Zustände des Controllers
Abbildung 1: Zustände der Controller-Komponente
Lokale Variablen
Jede Systemkomponente kann (beliebig viele) lokale Variablen besitzen. Lokale Variablen tragen einen Namen und haben einen zugeordneten Typ. Sie heißen lokal, weil sie jeweils genau einer Komponenten zugeordnet sind. Deshalb deklariert man sie in AutoFOCUS in der Systemstruktur (SSD) bei der entsprechenden Komponente. Nur die mit der Komponente verknüpfte Zustandsübergangssystem kann auf die lokale Variablen zugreifen, sie also lesen oder auf sie schreiben. In den lokalen Variablen können Daten unabhängig vom Kontrollzustand gehalten werden. Lokale Variablen in AutoFOCUS entsprechen den internen Parametern eines Zustandsübergangssystems, wie es in Kapitel Verhaltenssicht beschrieben wurde. Eine Belegung aller lokalen Variablen einer Komponente wird als Datenzustand bezeichnet.
Datenzustände
Zusätzlich zum Kontrollzustand, in dem sich das Zustandsübergangsystem aktuell befindet und der durch einen Knoten des Graphen im STD dargestellt wird, exisitiert immer ein Datenzustand. Der Datenzustand wird durch die Belegung der internen Parameter (lokale Variablen) und externen Parametern (Ports) der Komponente repräsentiert. Der gesamte Zustand, in dem sich eine Komponente befinden kann, setzt sich immer sowohl aus dem Kontrollzustand als auch aus dem Datenzustand zusammen.
Der Controller zur Steuerung der Ampelanlage hat zusätzlich zum Kontrollzustand eine lokale Variable t, die als Zeitmesser (Timer) verwendet wird. Beim Umschalten in einen neuen Kontrollzustand (z.B. Yellow) soll die Variable t auf einen bestimmten Wert gesetzt und fortlaufend um 1 verringert werden. Sobald t == 0 erreicht ist, schaltet die Ampel in den nächsten Kontorllzustand. Obwohl der Controller also im Kontrollzustand Yellow verbleibt ändert sich fortlaufend der Datenzustand und damit der gesamte Zustand.
(c) 2000 LMU München, TU München
|  |
 | |  |  | |  | |  | |  |  |  | | Zu dieser Seite wurden noch keine Kommentare oder Bewertungen abgegeben. |
|
|  | |  |  |   | Übergeordnet |  |  |  | |  |  |  |  |  | STD |  |  |  |  |   | Untergeordnet |  |  |  | |  |  |  |  | Weitere Themen |  |  |  | |  |  |  |  |  |  |
|