Zum Inhalt springen

Informatik · Klasse 10–12 · aktualisiert

Sequenzdiagramm lesen und erstellen – UML erklärt

Du liest Lebenslinien und Nachrichten, unterscheidest Aufrufarten und überträgst einfache Abläufe mit Bedingungen in ein Sequenzdiagramm.

0 von 9 Aufgaben gelöst

Sequenzdiagramm lesen und erstellen – UML erklärt

Kurz gesagt

Ein Sequenzdiagramm zeigt, welche Beteiligten sich in welcher Reihenfolge Nachrichten senden. Du zeichnest ihre Lebenslinien nebeneinander und ordnest die Nachrichten im einfachen Ablauf von oben nach unten an.

UML steht für Unified Modeling Language, auf Deutsch etwa „vereinheitlichte Modellierungssprache“. Sie bietet Zeichenregeln, um den Aufbau und die Abläufe von Systemen darzustellen. Ein Sequenzdiagramm ist ein Modell, also eine vereinfachte Darstellung eines Ablaufs, und kein ausführbares Programm. Alle folgenden Anwendungsbeispiele sind erfunden.

Deine Lernziele

Hake ab, was du schon kannst. Löst du alle Aufgaben eines Abschnitts, hakt Termi das Ziel für dich ab.

4 Abschnitte

Ein Beteiligter kann zum Beispiel ein Nutzer, ein Gerät oder ein Programmteil sein. Seine Lebenslinie besteht aus einem Kopf mit seinem Namen und einer senkrechten gestrichelten Linie darunter. Die Beteiligten stehen nebeneinander. Ihre Reihenfolge von links nach rechts legt keine zeitliche Reihenfolge fest.

Eine Nachricht zeigt eine Kommunikation zwischen Beteiligten. Ihr Pfeil führt vom Sender zum Empfänger. Die Beschriftung nennt zum Beispiel eine angeforderte Tätigkeit oder ein zurückgegebenes Ergebnis. Die Schreibweise „Sender → Empfänger“ nennt in unseren Textbeschreibungen die Richtung. Welche Pfeilform du im Diagramm zeichnen sollst, steht jeweils dabei.

In den hier betrachteten einfachen Abläufen liest du die vorgegebene Nachrichtenfolge von oben nach unten. Sendet derselbe Beteiligte zwei Nachrichten nacheinander, steht die spätere weiter unten. Die senkrechten Abstände zeigen keine gemessene Dauer: Ein größerer Abstand bedeutet keine längere Bearbeitungszeit.

Eine Operation ist hier eine Tätigkeit, die ein Beteiligter ausführt. Ein Aktivierungsbalken ist ein schmales senkrechtes Rechteck auf seiner Lebenslinie. Es zeigt einen Abschnitt, in dem der Beteiligte eine Operation ausführt. Die obere Kante markiert den Beginn, die untere das Ende dieser Ausführung. Ohne zusätzliche Zeitangaben kannst du auch aus der Balkenhöhe keine genaue Dauer ablesen.

Definition

Lebenslinie

Eine Lebenslinie steht für einen Beteiligten im Ablauf. An ihr erkennst du, welche Nachrichten dieser Beteiligte sendet oder empfängt.

Beispiel: Nachrichten eines Quizgeräts lesen

  1. 1Ein Quizgerät sendet zuerst „Aufgabe zeigen“ an eine Anzeige.
  2. 2Danach sendet dasselbe Quizgerät „Antwort zeigen“ an die Anzeige. Dieser zweite Pfeil steht weiter unten.
  3. 3Auch wenn zwischen den Pfeilen viel Platz bleibt, lässt sich daraus keine Wartezeit in Sekunden ablesen.

Merke: Die Lebenslinie nennt den Beteiligten, der Nachrichtenpfeil zeigt die Kommunikation und der Aktivierungsbalken zeigt eine Ausführung. Senkrechte Abstände sind kein Zeitmaßstab.

Teste dich

LeichtZwei Nachrichten werden nacheinander vom selben Sender verschickt. Was bedeutet die tiefere Lage der zweiten Nachricht im einfachen Ablauf?

Alles auf einen Blick

Sequenzdiagramm

  • Leserichtung

    In den einfachen Abläufen folgt die Nachrichtenfolge von oben nach unten; senkrechte Abstände messen keine Dauer.

  • Aktivierung

    Ein schmales Rechteck auf einer Lebenslinie zeigt die Ausführung einer Operation.

  • Synchron

    Der Sender wartet blockierend auf eine Antwort; der Aufruf hat eine gefüllte Pfeilspitze.

  • Asynchron

    Der Sender kann ohne blockierendes Warten weitere Nachrichten bearbeiten; eine spätere Antwort bleibt möglich.

  • Fragmente

    alt wählt hier den zutreffenden Zweig, opt führt einen bedingten Abschnitt aus und loop wiederholt nach der angegebenen Bedingung.

  • Übertragen

    Bestimme die Beteiligten und prüfe bei jeder Nachricht Richtung, Inhalt, Pfeilform und Reihenfolge.

Musteraufgabe · Schritt für Schritt

Eine Fachöffnung in ein Sequenzdiagramm übertragen

  1. 1Vorgabe für eine Paketstation: Das Bedienfeld nimmt die Auswahl auf. Die Fachverwaltung ist der Programmteil, der die Fächer steuert. Ein Schloss kann die Öffnung bestätigen.
  2. 2Schritt 1 der Vorgabe: Das Bedienfeld fordert von der Fachverwaltung synchron „Fach öffnen“ an.
  3. 3Schritt 2 der Vorgabe: Die Fachverwaltung fordert vom Schloss synchron „Entriegeln“ an.
  4. 4Schritt 3 der Vorgabe: Das Schloss gibt „Entriegelt“ an die Fachverwaltung zurück.
  5. 5Schritt 4 der Vorgabe: Die Fachverwaltung gibt „Fach offen“ an das Bedienfeld zurück.
  6. 6Beginne mit drei Lebenslinien: Bedienfeld, Fachverwaltung und Schloss. Schreibe die Namen oben und zeichne darunter jeweils eine gestrichelte senkrechte Linie.
  7. 7Zeichne zuerst Bedienfeld → Fachverwaltung mit „Fach öffnen“. Darunter folgt Fachverwaltung → Schloss mit „Entriegeln“. Beide Aufrufe erhalten durchgezogene Linien mit gefüllten Spitzen.
  8. 8Zeichne darunter Schloss → Fachverwaltung mit „Entriegelt“ und zuletzt Fachverwaltung → Bedienfeld mit „Fach offen“. Beide Rückgaben erhalten gestrichelte Linien zum jeweiligen ursprünglichen Sender.
  9. 9Prüfe die Folge: Das Schloss antwortet vor der Fachverwaltung. Diese gibt ihre Antwort an das Bedienfeld erst danach zurück.

Fehler finden

Prüfe den Ablauf einer Wetteranzeige In einer Zeile steckt ein Fehler. Tippe sie an.

Lückentext

Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.

Beim synchronen Aufruf ist der Sender bis zur Antwort für weitere Operationen . In einem opt-Fragment ist die angegebene Bedingung falsch. Sein Inhalt wird . Ein loop-Fragment wird vor jedem Durchlauf geprüft. Seine Bedingung ist bereits vor dem ersten Durchlauf falsch. Sein Inhalt läuft .

Karteikasten

Erst selbst überlegen, dann umdrehen.

Übung mit Feedback

Abschluss-Check: Sequenzdiagramm

LeichtEine Türsteuerung hat auf ihrer Lebenslinie ein schmales senkrechtes Rechteck. Was stellt dieser Aktivierungsbalken dar?
MittelEin Bildspeicher soll einen Aufruf erhalten. Der Sender muss danach weitere Nachrichten bearbeiten können, bevor eine Antwort eintrifft. Welche Aussage passt?
SchwerEin Versandgerät hat anfangs zwei Karten. In loop [noch eine Karte vorhanden] entnimmt es pro Durchlauf eine Karte und sendet einmal „Karte senden“. Die Bedingung wird vor jedem Durchlauf geprüft. Danach folgt opt [Quittung gewünscht] mit „Quittung senden“. Eine Quittung ist nicht gewünscht. Welche Nachrichtenfolge entsteht?

Weiterlesen in Informatik