TU Wien:Objektorientierte Modellierung VU (Kappel)/Kapitel Sequenzdiagramm

Aus VoWi
Zur Navigation springen Zur Suche springen

Folien

Wikifizierung (in Bearbeitung) von Media:TU Wien-Objektorientierte Modellierung VU (Kappel) - Zusammenfassung Sequenzdiagramm.pdf

Arten von Interaktionsdiagrammen

  • Sequenzdiagramm
  • Kommunikationsdiagramm
  • Zeitdiagramm
  • Interaktionsübersichtsdiagramm

2 Dimensionen:

  • horizontal: Interaktionspartner
  • vertikal: Zeitachse

Lebenslinien[Bearbeiten | Quelltext bearbeiten]

  • Kopf: Rolle : Typ
  • strichlierte Linie: Dauer der Existenz des Objektes
  • Löschsymbol: ×
Ausführungsspezifikation
Dargestellt als Balken entlang von Lebenslinie.
  • direkte Ausführung: ausgefüllter Balken
  • indirekte Ausführung: leerer Balken
aktives Objekt
Hat eigenen Kontrollfluss (kann unabhängig agieren).
Notation: Kopf hat doppelten Rand links und rechts, Balken statt Linie

Nachrichten[Bearbeiten | Quelltext bearbeiten]

Dargestellt als Pfeil zwischen Sender und Empfänger.

  • synchrone Kommunikation ───►
  • asynchrone Kommunikation ───>
  • Antwortnachricht (optional) --->
    Attribut = Nachrichtenname : Rückgabewert

Spezielle Nachrichtenarten:

  • new
    ---->
  • lost
    ───>●
  • found
    ●───>

Kombinierte Fragmente[Bearbeiten | Quelltext bearbeiten]

Ein kombiniertes Fragment besteht aus einem Operator und einem oder mehreren Operanden, welche durch strichlierte Linien voneinander getrennt werden.

Bedingte Fragmente[Bearbeiten | Quelltext bearbeiten]

Bewachungsbedingungen werden links oben in Operanden in eckigen Klammern angegeben. Wenn sie ausgelassen werden, gelten sie als true.

alt
Mindestens 2 Operanden; es wird nur einer ausgeführt. Es gilt Indeterminismus zu vermeiden.
opt
Der Operand wird nur ausgeführt wenn die Bewachungsbedingung erfüllt ist.
break
Wie opt bloß, dass das umschließende Fragment abgebrochen wird, wenn die Bewachungsbedingung erfüllt ist.
loop(min,max)
Operand wird so oft wie angegeben ausgeführt. loop = loop(0,*), loop(8)=loop(8,8). Nach min Iterationen wird die Bewachungsbedingung vor jeder Iteration überprüft.

Nebenläufigkeit und Ordnung[Bearbeiten | Quelltext bearbeiten]

seq
sequentiell mit schwacher Ordnung (default)
strict
sequentiell in Operanden (strenge Ordnung)
par
Operanden können beliebig überlappen.
critical
atomarer Nachrichtenablauf (darf nicht unterbrochen werden)

Filterungen und Zusicherungen[Bearbeiten | Quelltext bearbeiten]

ignore{}
Nachrichten, welche ignoriert werden können werden als Parameter übergeben.
consider{}
Gegenteil von ignore.
assert
Nachrichten müssen exakt wie modelliert auftreten.
neg
Verbotener Sachverhalt. Sollte sparsam eingesetzt werden.