Sie sind auf Seite 1von 26

Systementwicklung und IT-Architekturen 2

Building Competence. Crossing Borders.


Endre Gaspar
endre.gaspar@zhaw.ch
Zustandsdiagramme
in UML 2

2
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Mit Zustandsdiagrammen in UML wird die Möglichkeit


gegeben das Verhalten des Systems zu modellieren

ƒ Speziell die Zustände und Zustandsübergänge von sog.


Classifiern kann beschrieben werden

ƒ Classifiern in UML sind z.B.: Klassen, UseCases, Actors

3
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Um Zustände modellieren zu können braucht man einen


Classifier

ƒ Beispiel Bahnübergang:
ƒ Die Klasse Schranke kann verschiedene Zustände
annehmen
ƒ Z.B. Offen, Geschlossen
ƒ Die Klasse Schranke ist ein Classifier

4
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Das modellierende System befindet sich zu einem


bestimmten Zeitpunkt genau in einem Zustand
ƒ Die Klasse Schranke kann nicht gleichzeitig offen oder zu
sein
Ein Zustandsübergang erfolgt ohne zeitlich Verzögerung
ƒ Ein Ereignis ist eingetreten also wurde auch der neue
Zustand angenommen

5
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Was ist aber wenn die Bahnschranke sich gerade öffnet


oder gerade schliesst?

ƒ Für „öffnen“ oder „schliessen“ können wieder Zustände


modelliert werden

ƒ Zustand: Schranke schliesst sich gerade


ƒ Zustand: Schranke öffnet sich gerade

6
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Bahnschranke hat also folgende Zustände:


ƒ Offen
ƒ Geschlossen
ƒ Wird geöffnet
ƒ Wird geschlossen

7
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Wie steuert man aber die Zustände?

ƒ Durch Ereignisse auch Event oder Trigger genannt

ƒ Tritt ein bestimmtes Ereignis ein so wechselt das System


sein Zustand
ƒ Signal Zug kommt wird empfangen Æ Schranke schliesst
sich – als Zustand
ƒ Zug ist vorbeigefahren Æ Schranke öffnet sich - als Zustand

8
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Die wichtigsten Elemente eines Zustandsdiagrams sind:

ƒ Zustände
ƒ Ereignisse, Events, Trigger
ƒ Zustandsübergänge, Transitionen

9
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Notationselemente eines Zustandsdiagramms:


ƒ Zustände
ƒ Zustandsübergänge, Transitionen
ƒ Das Zustandsdiagramm/der Zustandsautomat an sich
ƒ Regionen
ƒ Start- und Endzustände
Es werden noch unterschieden:
ƒ Einfache Zustände
ƒ Zusammengesetzte Zustände
ƒ Unterzustandsautomatenzustände

10
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme - Notationselemente

11
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Klassen und Zustandsautomaten


ƒ Klassen haben Attribute die Attribute können verwendet
werden um Zustände zu speichern

12
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Klassen und Zustandsautomaten


ƒ Dazu ein Zustandsdiagramm

13
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Protokollzustandsautomaten
ƒ Classifier können Protokolle realisieren (TCP-Transmission
Control Protocol)
ƒ Protokoll – eine erlaubte Abfolge von Aufrufen der
Operationen eines Classifiers (bei einer Klasse die
Methoden/Operationen)
ƒ Einsatz zusammen mit Ports (Port – Interaktionspunkt,
Schnittstelle)

14
Die Notationselemente

15
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Einfacher Zustand
ƒ Eintrittsaktivität – entry
ƒ Austrittsativität – exit
ƒ Andauernde Aktivität – do

16
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Transition – Zustandsübergang
ƒ Eine Transition wird durch eine durchgezogene, gerichtete
und eventuell beschriftete Linie dargestellt
ƒ Die Beschriftung erhaltet folgende Elemente:
ƒ Trigger: der Auslöser der Transition
ƒ Guard: Eine Bedingung
ƒ Aktivität: die bei der Durchlaufen der Transition ausgeführt
wird

17
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Transition – Zustandsübergang
ƒ Trigger können sein:
ƒ Signal Trigger
ƒ Call Trigger (wird eine Operation ausgelöst)
ƒ Time Trigger (Timeout)
ƒ Change Trigger (wenn Werte sich ändern)

18
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Startzustand
ƒ Bildet den Startpunkt für das betreten eines
Zustandsautomaten
Endzustand
ƒ Wenn der Endzustand erreicht ist, so ist die
Abarbeitung des Zustandsautomaten beendet

19
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Startzustand
ƒ Bildet den Startpunkt für das betreten eines
Zustandsautomaten
Endzustand
ƒ Wenn der Endzustand erreicht ist, so ist die
Abarbeitung des Zustandsautomaten beendet

20
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Kreuzungen
ƒ Mit Kreuzungen können komplizierte Bedingungen
abgebildet werden

21
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme – Spieler im Labyrinth

22
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme
ƒ Entscheidung
ƒ Eine Entscheidung sollte verwendet werden wenn
das Ergebnis der Entscheidung von dem Ergebnis
von vorher getätigten Aktivitäten abhängt

23
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Terminator

ƒ Das erreichen eines Terminators bricht die


Ausführung des Zustandsautomaten ab

ƒ Sollte man bei Fehlerfällen gebrauchen

24
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme

ƒ Zusammengesetzter Zustand
ƒ Beispiel Fahrkartenautomat

25
Systementwicklung und IT-Architekturen 2
Zustandsdiagramme – Ein Beispiel – Zustände von Sternen

26

Das könnte Ihnen auch gefallen