Sequenzdiagramm
Ein Sequenzdiagramm ist ein Verhaltensdiagramm der Unified Modeling Language (UML) und stellt eine Interaktion grafisch dar. Im Diagramm wird der Austausch von Nachrichten zwischen Kommunikationspartnern mittels Lebenslinien beschrieben.
Sequenzdiagramme erstellen Sie komfortabel mit dem bewährten Modellierungstool von MID.
Innovator Enterprise Modeling Suite kostenlos testen.
Definition
Das UML-Sequenzdiagramm (engl. sequence diagram) ist ein Verhaltensdiagramm und gehört zu den UML-Interaktionsdiagrammen. Es zeigt eine bestimmte Sicht auf die dynamischen Aspekte des modellierten Systems, insbesondere auf den Austausch von Nachrichten zwischen Kommunikationspartnern.
Das Symbol zeigt ein Diagramm mit zwei Kommunikationspartnern.
Besitzerhierarchie/Vorbedingungen
- Ein Sequenzdiagramm zeigt den Inhalt genau einer Interaktion
- Das Sequenzdiagramm zeigt den Nachrichtenaustausch immer vollständig an
- Jedes Sequenzdiagramm braucht einen verhaltensspezifischen Classifier, dessen Nachrichtenaustausch es beschreiben soll
Verwendung
Das Sequenzdiagramm kann in der Modellstruktur unterhalb eines verhaltensspezifischen Classifiers neu angelegt werden.
Ein Sequenzdiagramm ist eine grafische Darstellung einer Interaktion und beschreibt den Austausch von Nachrichten zwischen Kommunikationspartnern, die als Lebenslinien dargestellt werden.
Die Interaktion ist dabei in zwei Richtungen lesbar. Von links nach rechts sind die Kommunikationspartner, dargestellt als Lebenslinien, aufgereiht. Von oben nach unten verläuft eine imaginäre Zeitachse, auf der die zeitliche Abfolge der einzelnen Kommunikationsschritte, der ausgetauschten Nachrichten, erkennbar ist. Allerdings haben die Abstände auf dieser Zeitachse keine Bedeutung und selbst die Reihenfolge der dargestellten Ereignisauftritte von Nachrichten bezieht sich ausschließlich auf die jeweilige Lebenslinie, nicht jedoch auf die anderen.
Mit kombinierten Fragmenten kennzeichnen Sie einen Teil einer Interaktion, für den bestimmte Regeln gelten. Diese Regeln beeinflussen die Auswahl und Reihenfolge der gesendeten Sende- und Empfangsereignisse und deren Häufigkeit in dem Fragment. Ein kombiniertes Fragment wird durch einen Interaktionsoperator näher bestimmt und kann aus einem oder mehreren Bereichen, den Interaktionsoperanden, bestehen. Wird kein Interaktionsoperator angegeben, so gilt immer der Operator Lose Ordnung (seq).
Elemente im Sequenzdiagramm
Knoten
Die folgenden Modellelemente können als Knoten in Sequenzdiagrammen dargestellt werden.
Symbol | Element | Beschreibung |
---|---|---|
Lebenslinie |
Eine Lebenslinie stellt einen Teilnehmer einer Interaktion dar. Die von dieser Lebenslinie repräsentierte Teilnehmerrolle wird beim Erstellen der Lebenslinie abgefragt. |
|
Alternatives Fragment |
Mit alternativen Fragmenten modellieren Sie alternative Ablaufmöglichkeiten. Kürzel im Diagramm: alt |
|
Paralleles Fragment | Mit einem parallelen Fragment modellieren Sie nebenläufige Interaktionen. Kürzel im Diagramm: par |
|
Optionales Fragment |
Mit einem optionalen Fragment modellieren Sie optionale Interaktionsteile. Kürzel im Diagramm: opt |
|
Schleifen-Fragment (Loop) |
Mit einer Schleife modellieren Sie iterative Interaktionen. Kürzel im Diagramm: loop |
|
Kritischer Bereich |
Mit einem kritischen Bereich modellieren Sie atomare (nicht unterbrechbare) Interaktionen. Kürzel im Diagramm: critical |
|
Sicherstellung |
Mit einer Sicherstellung modellieren Sie unabdingbare Interaktionen. Kürzel im Diagramm: assert |
|
Abbruchfragment |
Mit einem Abbruchfragment modellieren Sie Interaktionen in Ausnahmefällen. Kürzel im Diagramm: break |
|
Relevante Nachricht |
Mit einem Bereich Relevante Nachrichten modellieren Sie einen Filter für wichtige Nachrichten. Kürzel im Diagramm: consider |
|
Irrelevante Nachricht |
Mit einem Bereich Irrelevante Nachrichten modellieren Sie einen Filter für unwichtige Nachrichten. Kürzel im Diagramm: ignore |
|
Lose Ordnung |
Mit einer losen Ordnung modellieren Sie von Lebenslinie und Operanden abhängige chronologische Abläufe. Kürzel im Diagramm: seq |
|
Strenge Ordnung |
Mit einer strengen Ordnung modellieren Sie von Lebenslinie und Operanden unabhängige chronologische Abläufe. Kürzel im Diagramm: strict |
|
Negationsfragment |
Mit einem Negationsfragment modellieren Sie ungültige Interaktionen. Kürzel im Diagramm: neg |
|
Interaktionsoperand | Ein Interaktionsoperand fügt einen zusätzlichen Operanden in ein kombiniertes Fragment ein. | |
Fortsetzung | Die Fortsetzung definiert die Fortsetzung einer Interaktion, die durch alternative Fragmente verzweigt worden ist. | |
Interaktionsreferenz | Die Interaktionsreferenz stellt einen Bereich dar, der eine andere ausgelagerte Interaktion referenziert. | |
Aktionsausführung | Die Aktionsausführung ist ein Element der Lebenslinie, das die Ausführung einer Aktion repräsentiert. | |
Verhaltensausführung | Die Verhaltensausführung ist ein Element der Lebenslinie, das die Ausführung eines Verhaltens repräsentiert. | |
Invariante | Die Invariante ist ein Element der Lebenslinie, das eine Laufzeitbedingung repräsentiert, die zur Spezifikation verschiedenster Einschränkungen genutzt werden kann. | |
Nachricht verloren/gefunden | Nachrichten-Start oder Nachrichten-Ende stellen den Ersatz nicht vorhandener Sende- oder Empfangsereignisse an einem Ende der Nachricht dar. | |
Vorbedingung | Die Vorbedingung gibt an, welche Bedingung erfüllt sein muss, wenn das Verhalten aufgerufen wird. | |
Nachbedingung | Die Nachbedingung gibt an, welche Bedingung erfüllt sein muss, nachdem das Verhalten abgeschlossen ist. | |
Interaktionsbedingung | Die Interaktionsbedingung steuert durch einen logischen Ausdruck die Aktivierung oder Ausführung eines Interaktionsoperanden. |
Kanten
Kanten stellen in Sequenzdiagrammen Nachrichten oder Ordnungsbeziehungen dar.
Symbol | Element | Beschreibung |
---|---|---|
Synchroner Aufruf | Eine Nachricht einfügen, die durch den synchronen Aufruf einer Operation erzeugt wurde. | |
Antwort | Eine Antwortnachricht einfügen, die durch den synchronen Aufruf einer Operation erzeugt wurde. | |
Asynchroner Aufruf | Eine Nachricht einfügen, die durch den asynchronen Aufruf einer Operation erzeugt wurde. | |
Aus Signal... | Eine Nachricht einfügen, die durch eine asynchrone Senden-Aktion erzeugt wurde. | |
Erzeugung | Eine Nachricht einfügen, die das Erzeugen einer neue Lebenslinie kennzeichnet. | |
Zerstörung | Eine Nachricht einfügen, die das Beenden einer Lebenslinie kennzeichnet. | |
Ordnungsbeziehung | Eine Beziehung einfügen, die für zwei Ereignisse eine bestimmte Reihenfolge vorschreibt. |
Weitere Informationen