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

31
Semantik von UML Sequenzdiagramme n Christopher Lie (227249) Betreuer: Dr. Erika Abraham

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

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

Semantik von UML Sequenzdiagrammen

Christopher Lie (227249)

Betreuer: Dr. Erika Abraham

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

Gliederung

Einleitung Grundlagen Semantik von UML Sequenzdiagrammen Refinement Zusammenfassung

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

Einleitung

Wir formulieren die Semantik von UML Sequenzdiagrammen mit Hilfe von Büchi Automaten.

Wir zeigen die Kompositionalität der Verfeinerung.

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

Gliederung

Einleitung Grundlagen Semantik von UML Sequenzdiagrammen Refinement Zusammenfassung

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

Grundlagen

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

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

NFA

NFA = Nichtdeterministischer endlicher Automat

‹Σ,S,δ,S0,F› - 5 Tupel Σ : Eingabealphabet S : Zustandsmenge δ : S × Σ × S : Übergangsrelation S0 ⊆ S : Startzustände F ⊆ S : EndzuständeAkzeptiert endliche Wörter.

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

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.

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

Büchi Automat

Ein Büchi Automat ist ein endlicher Automat der unendliche Wörter akzeptiert.

Akzeptanzbedingung:Unendlich viele Endzustände besuchen

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

Safety Eigenschaft P P ist eine Eigenschaft, die besagt, dass etwas

Schlechtes nicht passiert.

∀α∈Σωτ.α⊨P ↔ ∀i >0. ∃β∈ Σω

τ. α[1..i]β ⊨P

Liveness Eigenschaft PP ist eine Eigenschaft, die besagt, dass

irgendwann etwas Gutes passiert.

∀α∈Σ*τ. ∃β ∈ Σω

τ. αβ ⊨P

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

Gliederung

Einleitung Grundlagen Semantik von UML Sequenzdiagrammen Refinement Zusammenfassung

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

Semantik v. UML Sequenzdiagrammen

High SD

High NFA

Positive NFA Negative NFA

„Liveness“ Büchi „Safety“ Büchi

xSemantik

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

Sequenzdiagramme

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

Partielle Ordnung →NFA

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

Partielle Ordnung →NFA

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.

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

High SD zu High NFA

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

Negativer & positiver NFA

Negativer NFA Positiver NFA

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

Flattening vom negativen NFA

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

Flattening vom positiven NFA

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

Negativer NFA → Safety Büchi

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

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

Negativer NFA → Safety Büchi

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

Positiver NFA → Liveness Büchi

P = Positiver Automat NFA P → Büchi Automat A Reduziere A Live(A) = A ∪ ¬Safe(A)

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

Positiver NFA → Liveness Büchi

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

Semantik von SD

Definition:

Sei S SD, Sl = Live(pos(S)), Ss = Safe(¬neg(S)) dann

L(S) = L(Sl × Ss).

Theorem: L(S) = L(Sl) ∩ L(Ss)

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

Gliederung

Einleitung Grundlagen Semantik von Sequenzdiagrammen Refinement Zusammenfassung

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

Refinement Definition :

Seien S1 und S2 Sequenzdiagramme.

S1 verfeinert S2 wenn L(S1) ⊆ L(S2) Satz :

Seien S1 und S2 Sequenzdiagramme. Für i = 1,2 seien Pi = pos(Si) und Ni = neg(Si).

Dann S1≼S2 wenn gilt:L(N2) ⊆ L(N1) undRej(L(P2)) ⊆ Rej(L(P1)), wobei

Rej(L(A)) = Safe(L(A)) – L(A)

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

Refinement

SD1SD2 SD≼ 1

SD2SD3 SD≼ 2 ⇒ SD1(SD2SD3) SD≼ 1(SD2)

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

Refinement Korollar :

Sei S,T,U Sequenzdiagramm, L(pos(S)) ∩ Rej(L(pos(T))) = L(pos(T)) ∩ Rej(L(pos(S))) = Ø, dannSU 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. ≼ ⇒ ≼ ≼

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

Gliederung

Einleitung Grundlagen Semantik von Sequenzdiagrammen Refinement Zusammenfassung

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

Zusammenfassung

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.

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

Refinement

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

NFA → Büchi Automat