Ein UML-Sequenzdiagramm zeichnen
Ein Szenario, die Teilnehmer, die es wirklich berührt, der Gutfall der Reihe nach, dann die Verzweigungen - und ein harter Schnitt nach einem Bildschirm.
7 Min. LesezeitUML 2.5.110 von 35
Die kurze Antwort
- Beginnen Sie mit einem Szenario, als Satz geschrieben. Wer den einen Durchlauf nicht in einem Satz benennen kann, hat einen Anwendungsfall, kein Sequenzdiagramm.
- Teilnehmer von links nach rechts in der Reihenfolge, in der der Ablauf sie zuerst berührt, der Akteur ganz links. Alles andere garantiert kreuzende Pfeile.
- Kreuzende Pfeile sind hier kein Stilproblem - sie machen die Lesereihenfolge mehrdeutig, und die Reihenfolge ist der ganze Zweck.
- Ein Bildschirm, etwa fünfzehn Nachrichten. Darüber wird gescrollt statt gelesen, und die zweite Hälfte gehört hinter ein ref-Fragment.
01Schritt eins und zwei: ein Szenario, dann seine Teilnehmer#
Schreiben Sie das Szenario als Satz, bevor Sie irgendetwas zeichnen. "Ein Gast bucht ein Zimmer, das frei ist" ist ein Szenario. "Buchung" ist keines - das ist ein Anwendungsfall, der jeden Ablauf abdeckt, auch die fehlschlagenden, und ein Diagramm, das sie alle sein will, ist das, welches achtzig Nachrichten lang endet. Enthält Ihr Satz das Wort "oder", haben Sie zwei Szenarien oder ein alt-Fragment, und Sie sollten entscheiden, welches, bevor Sie weitermachen.
Listen Sie dann die Teilnehmer auf, die das Szenario tatsächlich berührt, und setzen Sie sie von links nach rechts in der Reihenfolge, in der es sie erreicht. Der Akteur steht ganz links. Vier oder fünf ist der Arbeitsbereich; haben Sie sieben, sind mindestens zwei davon Implementierungsdetails, über die der Ablauf nicht nachdenkt, und sie zu löschen verliert nichts, was eine Leserin brauchte.
02Schritt drei: der Gutfall, der Reihe nach, und sonst nichts#
Zeichnen Sie den Ablauf, in dem alles klappt, von oben nach unten, ganz ohne Fragmente. Das ist das Diagramm oben im Artikel, und als Arbeitsergebnis ist es fertig, auch wenn es als Diagramm nicht fertig ist - die Reihenfolge steht, und das ist der teure Teil.
Zwei Konventionen tragen den meisten Sinn. Eine Nachrichtenbeschriftung ist eine Operation mit ihren Argumenten, keine Beschreibung: isFree(dates, roomType)sagt einer Leserin, was der Empfänger anbieten muss, während "prüft Verfügbarkeit" ihr eine Geschichte erzählt, die sie schon kannte. Und jede Antwort ist gestrichelt - ein durchgezogener Pfeil zurück ist ein zweiter Aufruf und bedeutet etwas anderes.
Aktivierungsbalken sind in UML 2.5.1 optional und lohnen sich. Sie sind das Einzige auf dem Diagramm, das zeigt, dass ein synchroner Aufruf seinen Aufrufer für den gesamten verschachtelten Austausch darunter blockiert - und das ist meist genau die Tatsache, derentwegen das Diagramm gezeichnet wurde.
03Schritt vier und fünf: die Verzweigungen, und aufhören#
Erst jetzt ergänzen Sie die Fragmente, und zwar eines nach dem anderen, mit der Frage an jedes: ändert dieser Zweig, was gebaut werden muss? Ein Zweig, der einen Fehler zurückgibt und endet, tut das selten und ist im Text des Anwendungsfalls besser aufgehoben. Ein Zweig, der andere Arbeit tut - wie das Anbieten alternativer Termine oben -, tut es immer und gehört auf das Diagramm.
Legen Sie den Rahmen um die Stelle, an der die Pfade auseinandergehen, nicht um das ganze Diagramm. Das alt oben beginnt, nachdem das Verfügbarkeitsurteil zurückkommt, weil alles davor beiden Ausgängen gemeinsam ist; ein Rahmen um alle neun Nachrichten wäre technisch legal und würde der Leserin nichts darüber sagen, wo die Entscheidung liegt.
Dann hören Sie bei einem Bildschirm auf. Das ist keine weiche Empfehlung: ein Sequenzdiagramm existiert, um eine Reihenfolge auf einen Blick sichtbar zu machen, und ein Diagramm, das gescrollt werden muss, hat das aufgegeben und alle Kosten behalten. Passt ein Ablauf nicht, teilen Sie ihn an einer natürlichen Naht, benennen Sie beide Hälften und verweisen Sie aus der ersten mit einem ref-Fragment auf die zweite - oder zeichnen Sie über den Satz ein Interaktionsübersichtsdiagramm.
In je einer Zeile
- 01Schreiben Sie das Szenario zuerst als Satz. Enthält er 'oder', entscheiden Sie zwischen zwei Diagrammen und einem alt.
- 02Teilnehmer stehen von links nach rechts in der Reihenfolge, in der der Ablauf sie erreicht, Akteur zuerst.
- 03Zeichnen Sie den Gutfall ohne Fragmente. Beschriftungen sind Operationen mit Argumenten; jede Antwort ist gestrichelt.
- 04Ergänzen Sie einen Zweig nur, wenn er ändert, was gebaut wird, und legen Sie den Rahmen dorthin, wo die Pfade sich trennen.
- 05Ein Bildschirm. Darüber hinaus teilen und ein ref-Fragment nehmen.
Drei fertige Abläufe zum Abschauen: die durchgearbeiteten Beispiele.
04Häufige Fragen#
Womit beginnt man ein Sequenzdiagramm?
Mit einem Szenario, als Satz geschrieben, nicht mit den Kästen. Ein Sequenzdiagramm beschreibt einen einzelnen Durchlauf, und wer nicht in einem Satz sagen kann welchen, hat noch kein Diagramm - sondern einen Anwendungsfall, und das ist ein anderes Bild.
In welcher Reihenfolge stehen die Teilnehmer?
Von links nach rechts in der Reihenfolge, in der der Ablauf sie zuerst berührt, mit dem Akteur ganz links. Alles andere garantiert kreuzende Pfeile, und kreuzende Pfeile sind hier kein Stilproblem: sie machen die Lesereihenfolge tatsächlich mehrdeutig.
Wie lang darf ein Sequenzdiagramm sein?
Ein Bildschirm, also etwa fünfzehn Nachrichten. Darüber wird das Diagramm nicht mehr von oben nach unten gelesen, sondern gescrollt, und die Reihenfolge, für die man es überhaupt gezeichnet hat, ist nicht mehr sichtbar. Teilen Sie es und verweisen Sie per ref-Fragment auf die zweite Hälfte.
In dieser Reihe
- 01Was ist UML?
- 02UML-Symbole
- 03Diagramm auswählen
- 04Klassendiagramme
- 05Klassendiagramm-Beispiele
- 06Klassendiagramm zeichnen
- 07Klassendiagramm-Symbole
- 08Sequenzdiagramme
- 09Sequenzdiagramm-Beispiele
- 10Sequenzdiagramm zeichnen
- 11Anwendungsfalldiagramme
- 12Anwendungsfall-Beispiele
- 13Aktivitätsdiagramme
- 14Aktivitätsbeispiele
- 15Zustandsdiagramme
- 16Zustandsdiagramm-Beispiele
- 17Komponentendiagramme
- 18Komponenten-Beispiele
- 19Komponentendiagramm zeichnen
- 20Komponenten-Symbole
- 21Verteilungsdiagramme
- 22Verteilungsbeispiele
- 23Objektdiagramme
- 24Paketdiagramme
- 25Kompositionsstrukturdiagramme
- 26Kommunikationsdiagramme
- 27Sequenz vs Kommunikation
- 28Zeitverlaufsdiagramme
- 29Interaktionsübersichtsdiagramme
- 30Profildiagramme
- 31UML mit KI
- 32E-Commerce-Beispiel
- 33Banken-Beispiel
- 34Microservices-Beispiel
- 35AWS-Beispiel
Passend dazu
Verhaltensdiagramme
Verhaltensdiagramme
Verhaltensdiagramme
Verhaltensdiagramme
Verhaltensdiagramme
Verhaltensdiagramme