Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Semantik von UML Sequenzdiagrammen Christopher Lie (227249) Betreuer: Dr. Erika Abraham.

Ähnliche Präsentationen


Präsentation zum Thema: "Semantik von UML Sequenzdiagrammen Christopher Lie (227249) Betreuer: Dr. Erika Abraham."—  Präsentation transkript:

1 Semantik von UML Sequenzdiagrammen Christopher Lie (227249) Betreuer: Dr. Erika Abraham

2 Gliederung Einleitung Grundlagen Semantik von UML Sequenzdiagrammen Refinement Zusammenfassung

3 Einleitung Wir formulieren die Semantik von UML Sequenzdiagrammen mit Hilfe von Büchi Automaten. Wir zeigen die Kompositionalität der Verfeinerung.

4 Gliederung Einleitung Grundlagen Semantik von UML Sequenzdiagrammen Refinement Zusammenfassung

5 Grundlagen NFA Hi-level NFA Büchi Automat Safety Eigenschaft Liveness Eigenschaft

6 NFA NFA = Nichtdeterministischer endlicher Automat Σ,S,δ,S 0,F - 5 Tupel Σ : Eingabealphabet S : Zustandsmenge δ : S × Σ × S : Übergangsrelation S 0 S : Startzustände F S : Endzustände Akzeptiert endliche Wörter.

7 High-level NFA Ein Hi-Level NFA ist ein NFA, dessen Zustände Basic-NFAs oder andere nicht rekursive Hi-Level NFAs sind. Transitionen von Hi-Level NFAs werden mit beschriftet.

8 Büchi Automat Ein Büchi Automat ist ein endlicher Automat der unendliche Wörter akzeptiert. Akzeptanzbedingung: Unendlich viele Endzustände besuchen

9 Safety Eigenschaft P P ist eine Eigenschaft, die besagt, dass etwas Schlechtes nicht passiert. αΣ ω τ.αP i >0. β Σ ω τ. α[1..i]β P Liveness Eigenschaft P P ist eine Eigenschaft, die besagt, dass irgendwann etwas Gutes passiert. αΣ * τ. β Σ ω τ. αβ P

10 Gliederung Einleitung Grundlagen Semantik von UML Sequenzdiagrammen Refinement Zusammenfassung

11 Semantik v. UML Sequenzdiagrammen High SD High NFA Positive NFANegative NFA Liveness BüchiSafety Büchi x Semantik

12 Sequenzdiagramme

13 Partielle Ordnung NFA

14 Sei P := Potenzmenge der Aktionen A, Dann definiert man P' := {p P| i, j. i P j < i j P}. Schließlich definieren wir die Transitionen: T := {t P' × A × P' | b = a {e} t = (a, l(e), b) }. Endzustand ist A.

15 High SD zu High NFA

16 Negativer & positiver NFA Negativer NFA Positiver NFA

17 Flattening vom negativen NFA

18 Flattening vom positiven NFA

19 Negativer NFA Safety Büchi N = Negativer Büchi Automat Sei B = ¬ N Reduziere B Mache alle Zustände akzeptierend Safe(B)

20 Negativer NFA Safety Büchi

21 Positiver NFA Liveness Büchi P = Positiver Automat NFA P Büchi Automat A Reduziere A Live(A) = A ¬Safe(A)

22 Positiver NFA Liveness Büchi

23 Semantik von SD Definition: Sei S SD, S l = Live(pos(S)), S s = Safe(¬neg(S)) dann L(S) = L(S l × S s ). Theorem: L(S) = L(S l ) L(S s )

24 Gliederung Einleitung Grundlagen Semantik von Sequenzdiagrammen Refinement Zusammenfassung

25 Refinement Definition : Seien S 1 und S 2 Sequenzdiagramme. S 1 verfeinert S 2 wenn L(S 1 ) L(S 2 ) Satz : Seien S 1 und S 2 Sequenzdiagramme. Für i = 1,2 seien P i = pos(S i ) und N i = neg(S i ). Dann S 1 S 2 wenn gilt: L(N 2 ) L(N 1 ) und Rej(L(P 2 )) Rej(L(P 1 )), wobei Rej(L(A)) = Safe(L(A)) – L(A)

26 Refinement SD 1 SD 2 SD 1 SD 2 SD 3 SD 2 SD 1 (SD 2 SD 3 ) SD 1 (SD 2 )

27 Refinement Korollar : Sei S,T,U Sequenzdiagramm, L(pos(S)) Rej(L(pos(T))) = L(pos(T)) Rej(L(pos(S))) = Ø, dann SU S; S + S; S+T S und S + T T; S||T S und S||T T. T U ST SU; S T (S)* (T)*; T U S+T S+U und T+S U+S; T U S||T S||U und T||S U||S.

28 Gliederung Einleitung Grundlagen Semantik von Sequenzdiagrammen Refinement Zusammenfassung

29 Wir haben die Semantik von SDs mit Hilfe von Safety und Lifeness Eigenschaften bestimmt. Wenn man ein SD verfeinert, dann verfeinert man auch dessen Semantik.

30 Refinement

31 NFA Büchi Automat


Herunterladen ppt "Semantik von UML Sequenzdiagrammen Christopher Lie (227249) Betreuer: Dr. Erika Abraham."

Ähnliche Präsentationen


Google-Anzeigen