UML-Aktivitätsdiagramm

3 min 2 Abschnitte
Was du nach diesem Konzept kannst 4
  1. Du bist in der Lage, die Funktion von Partitionen (Swimlanes) zu erklären ,

    indem ihre Verwendung zur Zuordnung von Aktionen zu Verantwortlichkeiten (z.B. Personen, Abteilungen, Systeme) analog zur Geschäftsprozessmodellierung dargestellt wird.

  2. Du bist in der Lage, sequenzielle und parallele Abläufe zu differenzieren ,

    indem die Verwendung von Entscheidungsknoten (Decision Nodes) für bedingte Verzweigungen und Gabelungsknoten (Fork Nodes) für die Aufspaltung in parallele Pfade (Concurrency) gegenübergestellt wird.

  3. Du bist in der Lage, die verschiedenen Knotentypen in Aktivitätsdiagrammen zu klassifizieren ,

    indem zwischen Aktionsknoten (auszuführende Schritte), Kontrollknoten (Start, Ende, Entscheidung, Zusammenführung, Gabelung, Vereinigung) und Objektknoten (Datenfluss) unterschieden wird.

  4. Du bist in der Lage, den Zweck von UML-Aktivitätsdiagrammen zu erklären ,

    indem ihre Rolle bei der Modellierung von Arbeitsabläufen, Algorithmen und parallelen Prozessen sowie ihre Ähnlichkeit zu Flussdiagrammen beschrieben wird.

Wozu dienen UML-Aktivitätsdiagramme und wie sind sie aufgebaut?

Dynamische Abläufe visualisieren

Stell dir vor, ein:e Kund:in klickt in einem Onlineshop auf "Kaufen". Was passiert danach im Hintergrund? Ein UML-Aktivitätsdiagramm (Activity Diagram) hilft dir, genau solche dynamischen Abläufe von Aktivitäten zu visualisieren. Ähnlich wie ein klassisches Flussdiagramm zeigt es Schritt für Schritt, wie ein System arbeitet.

Du nutzt es primär, um Geschäftsprozesse (wie die Bestellabwicklung), komplexe Algorithmen (wie Suchverfahren) oder parallele Prozesse (Dinge, die gleichzeitig passieren) übersichtlich zu modellieren. Da du bereits den Kontrollfluss aus der prozeduralen Programmierung kennst, wird dir dieses Diagramm wie die visuelle Übersetzung deines Codes vorkommen. Es zeigt auf einen Blick: Wer macht was, wann und unter welchen Bedingungen?

Die grundlegenden Bausteine: Knotenarten

Um diese Abläufe darzustellen, verwendet das Diagramm verschiedene Knoten (Nodes), die durch Pfeile (Kanten) verbunden sind. Wir unterscheiden drei Hauptkategorien:

  • Aktionsknoten (Action Nodes): Das sind die eigentlichen Arbeitsschritte, dargestellt als Rechtecke mit abgerundeten Ecken (z. B. "Zahlung prüfen").
  • Kontrollknoten (Control Nodes): Sie lenken den Ablauf. Ein Startknoten (ausgefüllter schwarzer Kreis) markiert den Beginn. Ein Endknoten (schwarzer Kreis mit weißer Umrandung, ähnlich einem Spiegelei) beendet den gesamten Prozess.
  • Objektknoten (Object Nodes): Sie stellen Daten oder Dokumente dar, die zwischen Aktionen weitergegeben werden. Sie werden als eckige Rechtecke gezeichnet. Wenn die Aktion "Rechnung erstellen" abgeschlossen ist, entsteht als Objektknoten das Dokument "Rechnung", welches als Input für die nächste Aktion benötigt wird.
UML-Aktivitätsdiagramm — dec-software-engineering-modeling-behavior-uml-activity-diagram_page1.svg

Wie steuern wir komplexe und parallele Abläufe?

Sequenzielle vs. parallele Kontrollflüsse

Nicht jeder Prozess verläuft streng linear. Oft müssen Entscheidungen getroffen oder Aufgaben gleichzeitig erledigt werden. Das Aktivitätsdiagramm unterscheidet hierbei strikt zwischen zwei Konzepten:

  • Sequenzielle Verzweigungen: Hierfür nutzt du einen Entscheidungsknoten (Decision Node), dargestellt als Raute. Ähnlich einer if/else-Bedingung im Code nimmt der Prozess hier nur einen von mehreren möglichen Wegen (z. B. "Ist das Passwort korrekt?"). Eine weitere Raute (Merge Node) führt diese alternativen Wege später wieder zusammen.
  • Parallele Abläufe (Concurrency): Wenn Aufgaben gleichzeitig stattfinden, verwendest du einen Gabelungsknoten (Fork Node), gezeichnet als dicker schwarzer Balken. Er spaltet den Kontrollfluss in mehrere parallele Pfade auf. Ein Beispiel: Nach einem Video-Upload werden gleichzeitig das Video komprimiert und ein Vorschaubild generiert. Ein Vereinigungsknoten (Join Node) – ebenfalls ein dicker Balken – wartet anschließend, bis alle parallelen Pfade abgeschlossen sind, bevor der Prozess weitergeht.

Verantwortlichkeiten klären mit Partitionen (Swimlanes)

Bei komplexen Systemen reicht es nicht zu wissen, was passiert – du musst auch wissen, wer dafür zuständig ist. Hier kommen Partitionen (oft Swimlanes oder Schwimmbahnen genannt) zum Einsatz.

Das Diagramm wird dabei in vertikale oder horizontale Bereiche unterteilt. Jede Bahn repräsentiert eine Verantwortlichkeit – das kann eine bestimmte Benutzerrolle (z. B. "Kund:in"), eine Abteilung ("Buchhaltung") oder ein technisches System ("Datenbank") sein.

Du platzierst die Aktionsknoten einfach in der Bahn der zuständigen Instanz. Wenn ein Pfeil die Grenze zwischen zwei Swimlanes überschreitet, erkennst du sofort: Hier findet eine Kommunikation über Schnittstellen statt (z. B. das Frontend sendet Daten an das Backend). Das macht Swimlanes zu einem mächtigen Werkzeug, um Abhängigkeiten in der Softwarearchitektur frühzeitig aufzudecken.

UML-Aktivitätsdiagramm — dec-software-engineering-modeling-behavior-uml-activity-diagram_page2.svg

Teste dein Wissen

Du sollst den Ablauf einer Bestellabwicklung im neuen Onlineshop für das Entwicklungsteam dokumentieren. Welches UML-Diagramm wählst du dafür?

Bereit für mehr?

Thema verstanden?

Teste dein Wissen interaktiv in unserer App. 7 Tage kostenlos, dann nur 5 € im Monat.