Folien

Werbung
Statecharts
Ein visueller Formalismus für komplexe Systeme
[nach David Harel‘s „Statecharts: A Visual Formalism for Complex Systems“, Science of Computer Programming 8 (1987)]
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
1
Überblick
Einleitung
Motivation
Statecharts
1.
2.
3.
Superstates
Orthogonalität
erweiterte Transitionen
1.
2.
3.
4.
5.
Szenario: Fahrradcomputer
Zusammenfassung
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
2
1. Einleitung
Transformationales
System
System
„Gebilde, dessen
Elemente sich
als Einheit von der
Umwelt abgrenzen“
Reaktives System
Def. nach Wikipedia (03.05.2006)
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
3
1. Einleitung
Klassische Zustands-Ereignis-Diagramme:
Deterministischer Endlicher
Automat
Moore-Automat
Harald Detering
Mealy-Automat
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
4
2. Motivation
Defizite klassischer Zustands-Diagramme:




Gruppierung / Verfeinerung von Zuständen
Darstellen der Unabhängigkeit von
Zuständen
Allgemeinere Transitionen
Vielzahl von Zuständen, da „flach“
Zur Beschreibung komplexer,
reaktiver Systeme ungeeignet!
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
5
3. Statecharts
Entwickelt von David Harel in 1984

1978 Habilitation am Massachusetts Institute

(seit 1980 am Weizmann Institute of
Science)
of Technology
Fachgebiete:
 Komplexität
 Dynamische Logik
 Datenbanktheorie
 Automatentheorie
 Visuelle Programmierung (MDD)
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
6
3. Statecharts
„Statecharts =
Zustandsdiagramme
+ Tiefe
+ Orthogonalität
+ Broadcast-Kommunikation“
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
7
3. Statecharts
Notation:
Default
Zustand
A
Transition
a
Ereignis
B
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
8
3. Statecharts
wesentliche Merkmale:
1.
2.
3.
Superstates
Orthogonalität (Unabhängigkeit)
Erweiterte Transitionen
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
9
3.1 Superstates
Zustände können ineinander
geschachtelt werden
Ermöglichen Gruppierung und
Verfeinerung von Zuständen
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
10
3.1 Superstates
Weiterer Vorteil: Zoom-In / -Out
möglich
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
11
3.2 Orthogonalität
Darstellung der Nebenläufigkeit,
Unabhängigkeit von Zuständen:
• Konfiguration =
Kombination aus
Zuständen aller
Substates
• Nebenläufige States
können Bezug aufeinander nehmen
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
12
3.3 erweiterte Transitionen
Transitionen erweitert um

Historie
Beim Eintritt in einen Zustand
wird in den letztbesuchte
Unterzustand gesprungen

Aktionen
Transitionen können selbst
Ereignisse auslösen, die von
allen anderen Zuständen
wahrgenommen werden
( Broadcast-Kommunikation)
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
13
3.3 erweiterte Transitionen
Transitionen erweitert um

Bedingungen
Transition wird nur dann
ausgeführt, wenn best.
Bedingung zutrifft

Selektion
Auswahl eines
Unterzustandes aufgrund
eines Selektionskriteriums
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
14
4. Szenario
b
c
Funktionen:







Tageskilometer
Fahrzeit
durchschn. km/h
max. km/h
Uhrzeit
Kilometer gesamt
Fahrzeit gesamt
a
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
15
4. Szenario
Resultierender Statechart:
Sigma BC 1106
Display
15 min.
keine Aktion
aktiv
Standby
a
a
OR
i (in Rechner.stop)
Rechner
Tages-km
run
a
Gesamtzeit
Fahrzeit
a
a
a
Harald Detering
stop
durchschn.
km/h
gesamt km
Uhrzeit
2 Sek.
kein i
i
a
a
max. km/h
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
16
5. Zusammenfassung

Stärken:


Graphische Beschreibung komplexer
Systeme
Schwächen:
schwerer formalisierbar als „klassische“
Zustandsautomaten
 Widersprüche/Zyklen möglich

Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
17
5. Zusammenfassung

Hat in einer Variante Einzug in die
UML gefunden („UML-Statechart“)

diverse Tools:
Rhapsody
 Statemate
 Poseidon


1997: Weiterentwicklung
„Objektorientierte Statecharts“
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
18
Fragen?
Harald Detering
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
19
Herunterladen