Read this post in: en_USes_ESfr_FRhi_INid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

Umfassende Anleitung zu UML-Aktivitätsdiagrammen

Das Aktivitätsdiagramm hilft dabei, den Ablauf der Steuerung des Zielsystems zu beschreiben, beispielsweise durch die Erforschung komplexer Geschäftsregeln und -operationen, die Beschreibung von Anwendungsfällen und das Modellieren von Geschäftsprozessen.

Einführung

Aktivitätsdiagramme sind ein grundlegender Bestandteil der Unified Modeling Language (UML), der zur Modellierung der dynamischen Aspekte eines Systems verwendet wird. Sie konzentrieren sich auf die Reihenfolge und Bedingungen zur Koordination von niedrigeren Verhaltensweisen, anstatt darauf, welche Klassifizierer diese Verhaltensweisen besitzen. Diese werden häufig als Steuerfluss und Objektflussmodelle.

Die durch diese Modelle koordinierten Verhaltensweisen können ausgelöst werden, weil:

  • Andere Verhaltensweisen beenden ihre Ausführung

  • Objekte und Daten werden verfügbar

  • Ereignisse treten außerhalb des Ablaufs auf

    visual Paradigm Activity Diagram Tool
    visual Paradigm Aktivitätsdiagramm-Tool


Zweck und Anwendungen

Aktivitätsdiagramme dienen mehreren Modellierungszwecken:

🔹 Prozedurale Berechnung: Aktivitäten fungieren als Methoden, die den Operationen auf Klassen in objektorientierten Modellen entsprechen.

🔹 Geschäftsprozessingenieurwesen: Wird für die organisatorische Modellierung zur Workflow-Design angewendet, bei der Ereignisse innerhalb des Systems (Aufgabenabschluss) oder außerhalb (Kundeninteraktionen) entstehen können.

🔹 Modellierung von Informationssystemen: Wird verwendet, um systemnahe Prozesse zu spezifizieren und komplexe Geschäftsregeln zu koordinieren.

🔹 Verfeinerung von Anwendungsfällen: Helfen dabei, den internen Ablauf von Operationen innerhalb eines Anwendungsfallszenarios zu beschreiben.


Beispiel für ein Aktivitätsdiagramm

Activity Diagram Sample

Beispiel eines typischen Aktivitätsdiagramms, das Steuerfluss, Entscheidungspunkte und parallele Verarbeitung zeigt.


Vollständige Notationsreferenz

Unten finden Sie eine umfassende Referenz aller Aktivitätsdiagramm-Notationen, einschließlich visueller Symbole, Definitionen und wesentlicher Eigenschaften.

Kernelemente

Aktivität

Activity

Definition: Eine Aktivität legt die Koordination der Ausführungen untergeordneter Verhaltensweisen mithilfe eines Steuer- und Datenflussmodells fest. Der Ablauf der Ausführung wird als Aktivitätsknoten modelliert, die durch Aktivitätskanten verbunden sind.

Wesentliche Eigenschaften:

Eigenschaft Beschreibung
Name Der Name der Aktivität
Modellierungssprache Verwendete Modellierungssprache
Vorbedingung Einschränkungen, die erfüllt sein müssen, wenn die Aktivität aufgerufen wird
Nachbedingung Einschränkungen, die nach Abschluss der Ausführung erfüllt sind
Einzelne Ausführung Wenn wahr, werden alle Aufrufe durch dieselbe Ausführung verarbeitet
Nur lesbar Wenn wahr, kann die Aktivität keine lokalen Änderungen vornehmen
Reentrant Ob das Verhalten aufgerufen werden kann, während es noch ausgeführt wird
Parameter Reihenfolge und Typ der Argumente für den Aufruf

Aktivitätsparameterknoten

Activity Parameter Node

Definition: Objektknoten am Anfang und Ende von Flüssen, die eine Möglichkeit bieten, Eingaben für eine Aktivität entgegenzunehmen und Ausgaben aus der Aktivität über die Aktivitätsparameter bereitzustellen.

Schlüssel-Eigenschaften:

Eigenschaft Beschreibung
Parameter Der Parameter, für den der Knoten Werte akzeptiert/bereitstellt
Oberes Ende Maximale Anzahl an Tokens, die im Knoten erlaubt sind
Art der Reihenfolge Wie Tokens für die Auswahl geordnet werden
Richtung Gibt an, ob der Parameter Eingabe oder Ausgabe ist (Standard: Eingabe)
Typ Der Typ des Aktivitäts-Parameter-Knotens
Muss isoliert ausführen Wenn wahr, werden Aktionen isoliert ausgeführt (Standard: falsch)

Aktion

Action

Definition: Stellt einen einzelnen Schritt innerhalb einer Aktivität dar, der nicht weiter zerlegt wird. Eine Aktion beginnt nicht mit der Ausführung, bis alle Eingabebedingungen erfüllt sind.

Schlüssel-Eigenschaften:

Eigenschaft Beschreibung
Name Der Name der Aktion
Sichtbarkeit Zugänglichkeit innerhalb von Namensräumen
Typ Verhalten aufrufen oder Operation aufrufen
Wirkung Die Wirkung des Abschlusses der Aktion
Muss isolieren Isoliert Wirkungen von Aktionen außerhalb der Gruppe

Aktionen zur Ereignisbehandlung

Aktion zum Akzeptieren eines Ereignisses

Accept Event Action

Definition: Eine Aktion, die auf das Eintreten eines Ereignisses wartet, das bestimmten Bedingungen entspricht.


Aktion zum Akzeptieren eines Zeitereignisses

Accept Time Event Action

Definition: Wenn das Eintreten ein Zeitereignis ist, enthält der Ergebniswert die Zeit, zu der das Eintreten stattgefunden hat. Informell als „Wartezeitaktion“ bezeichnet.


Aktion zum Senden einer Signale

Send Signal Action

Definition: Erstellt eine Signalinstanz aus Eingaben und sendet sie an das Zielobjekt, was möglicherweise eine Zustandsmaschinenüberführung oder Aktivitätsausführung verursacht. Der Anforderer setzt sofort fort; Antworten werden ignoriert.


Steuerknoten

Anfangsknoten

Initial Node

Definition: Ein Steuerknoten, an dem die Flusssteuerung beginnt, wenn die Aktivität aufgerufen wird. Eine Aktivität kann mehr als einen Anfangsknoten haben.


Aktivitätsendknoten

Activity Final Node

Definition: Eine Aktivität kann mehr als einen Aktivitätsendknoten haben. Der erste erreichte stopptalle Flüsse in der Aktivität.


Flussendknoten

Flow Final Node

Definition: Ein Flussendknoten zerstört alle Tokens, die bei ihm eintreffen. Er hat keine Wirkung auf andere Flüsse in der Aktivität.


Entscheidungsknoten

Decision Node

Definition: Akzeptiert Tokens auf einer eingehenden Kante und präsentiert sie mehreren ausgehenden Kanten. Welche Kante durchlaufen wird, hängt von der Auswertung der Wächter auf den ausgehenden Kanten ab.


Merge-Knoten

Merge Node

Definition: Vereint mehrere alternative Abläufe. Wird nicht zur Synchronisation gleichzeitiger Abläufe verwendet, sondern zum Akzeptieren von einem von mehrerenalternativen Abläufen.


Fork-Knoten

Fork Node

Definition: Ein Steuerknoten, der einen Ablauf in mehrere gleichzeitige Abläufe. Verfügt über eine eingehende Kante und mehrere ausgehende Kanten.


Join-Knoten

Join Node

Definition: Ein Steuerknoten, der mehrere Abläufe synchronisiert. Verfügt über mehrere eingehende Kanten und eine ausgehende Kante.


Objektknoten und Abläufe

Objektknoten

Object Node

Definition: Zeigt eine Instanz eines bestimmten Klassifizierers an, möglicherweise in einem bestimmten Zustand, die an einem bestimmten Punkt im Ablauf verfügbar sein kann.


Eingabepin

Input Pin

Definition: Objektknoten, die Werte von anderen Aktionen über Objektflüsse empfangen.


Ausgabepin

Output Pin

Definition: Objektknoten, die Werte an andere Aktionen über Objektflüsse liefern.


Wertpin

Value Pin

Definition: Ein Eingabepin, der einem Aktion einen Wert bereitstellt, der nicht nichtvon einer eingehenden Objektflusskante stammt.


Zentraler Pufferknoten

Central Buffer Node

Definition: Akzeptiert Tokens von upstream-Objektknoten und leitet sie an downstream-Objektknoten weiter. Wirkt als Puffer für mehrere Ein- und Ausflüsse. Ist nicht direkt mit Aktionen verbunden.


Datenbankspeicher-Knoten

Data Store Node

Definition: Stellt einen dauerhaften Speicherort für Objekte innerhalb des Aktivitätsflusses dar.


Steuerfluss

Control Flow

Definition: Eine Kante, die einen Aktivitätsknoten startet, nachdem der vorherige abgeschlossen ist.

Wichtige Eigenschaften:

Eigenschaft Beschreibung
Quelle/Ziel Durch den Fluss verbundene Knoten
Gewicht Mindestanzahl an Tokens, die gleichzeitig traversieren müssen
Wächter Laufzeit-Spezifikation zur Bestimmung der Durchgängigkeit

Objektfluss

Object Flow

Definition: Eine Aktivitätskante, entlang der Objekte oder Daten fließen können.

Wichtige Eigenschaften:

Eigenschaft Beschreibung
Auswahl Wählt Tokens von einem Quell-Objektknoten aus
Transformation Ändert oder ersetzt Daten-Tokens, die entlang der Kante fließen
Multicast/Multireceive Steuerung der Objektweitergabe-Methode

Strukturierte Aktivitätsknoten

Spezifikation des bedingten Knotens

Conditional Node Specification

Definition: Ein strukturierter Aktivitätsknoten, der eine ausschließliche Wahl unter Alternativen.

Wichtige Eigenschaften:

Eigenschaft Beschreibung
Sicher Wenn wahr, wird mindestens ein Test erfolgreich sein (Standard: falsch)
Bestimmt Wenn wahr, wird höchstens ein Test erfolgreich sein (Standard: falsch)
Klauseln Klauseln, die die Bedingung bilden
Ergebnis Ausgangspins, die die Datenfluss-Ausgänge bilden

Schleifenknoten

Loop Node

Definition: Stellt eine Schleife mit Setup-, Test- und Körperabschnitten dar. Der Testabschnitt kann vor oder nach dem Körperabschnitt folgen.

Wichtige Eigenschaften:

Eigenschaft Beschreibung
Entscheider Ausgangspin, dessen Wert die Fortsetzung der Schleife bestimmt
Zuerst getestet Wenn wahr, Test vor der ersten Ausführung des Körpers durchgeführt
Einrichten/Test/Körperabschnitte Unterregionen für Schleifenkomponenten
Schleifenvariablen Werte, die über Iterationen hinweg beibehalten werden

Erweiterungsregion

Expansion Region

Definition: Eine streng geschachtelte Region mit expliziten Eingaben/Ausgaben (modelliert als ExpansionNodes). Wird einmal für jedes Element in der Eingabekollektion ausgeführt.

Ausführungsmodi:

  • parallel: Alle Interaktionen sind unabhängig

  • iterativ: Interaktionen erfolgen in der Reihenfolge der Elemente

  • stream: Ein Strom von Werten fließt in eine einzelne Ausführung ein


Erweiterungs-Knoten

Expansion Node

Definition: Ein Objektknoten, der zur Kennzeichnung des Flusses über die Grenze einer Erweiterungsregion verwendet wird. Eingabekollektionen werden innerhalb zerlegt in einzelne Elemente; Ausgaben kombinieren Elemente zurück zu Kollektionen.


Sequenz-Knoten

Sequence Node

Definition: Ein strukturierter Aktivitätsknoten, der seine Aktionen ausführtin Reihenfolge.


Strukturierter Aktivitätsknoten

Structured Activity Node

Definition: Ein Containerknoten, der andere Aktivitätsknoten mit definierten Ausführungssemantiken gruppiert.


Erweiterte Konstrukte

Unterbrechbare Aktivitätsregion

Interruptible Activity Region

Definition: Eine Aktivitätsgruppe, die die Beendigung von Tokens unterstützt, die in Teilen einer Aktivität fließen. Wenn ein Token über unterbrechende Kanten verlässt, alle Tokens und Verhaltensweisen im Bereich werden beendet.


Ausnahmebehandlung

Exception Handler

Definition: Gibt einen Ausführungskörper an, der ausgeführt wird, wenn während der Ausführung des geschützten Knotens eine angegebene Ausnahme auftritt.

Wichtige Eigenschaften:

Eigenschaft Beschreibung
Geschützter Knoten Knoten, der durch die Behandlung geschützt wird
Behandlungsbody Knoten, der ausgeführt wird, wenn die Behandlung die Ausnahme erfasst
Ausnahme-Eingabe Objektknoten, der den Ausnahmetoken empfängt
Ausnahmetypen Klassifizierungen von Ausnahmen, die die Behandlung erfasst

Unterstützende Elemente

Schwimmbahn

Swimlane

Definition: Wird verwendet, um Kinder in einem Aktivitätsdiagramm zu partitionieren, typischerweise, um die Verantwortung durch Akteur, Abteilung oder Systemkomponente darzustellen.

Eigenschaften:

  • Horizontale Partitionen

  • Vertikale Partitionen


Hinweis

Note

Definition: Eine Bemerkung, die die Möglichkeit bietet, Anmerkungen an Elemente anzuhängen. Hat keine semantische Bedeutung, kann aber nützliche Modellierungsinformationen enthalten.


Einschränkung

Constraint

Definition: Eine Bedingung oder Einschränkung, die in natürlicher Sprache oder maschinenlesbarer Sprache formuliert ist, um die Semantik eines Elements zu definieren.

Eigenschaften:

Eigenschaft Beschreibung
Name Optionaler Name der Einschränkung
Ausdruck Bedingung, die erfüllt sein muss, um die Erfüllung zu gewährleisten

Verwandte UML-Diagramme

Aktivitätsdiagramme funktionieren am besten, wenn sie zusammen mit anderen UML-Diagrammtypen verwendet werden:

Diagrammtyp Zweck Link
 Use-Case-Diagramm Erfassen funktionaler Anforderungen und Interaktionen zwischen Akteuren Ansicht
Klassendiagramm Modellieren der statischen Struktur und Beziehungen Ansicht
Sequenzdiagramm Zeigen von Objektinteraktionen über die Zeit Ansicht
Kommunikationsdiagramm Hervorheben der Objektbeziehungen in Interaktionen Ansicht
Zustandsmaschinen-Diagramm Modellieren von Objektzuständen und Übergängen Ansicht
Komponentendiagramm Physische Komponenten und Abhängigkeiten anzeigen Ansicht
Bereitstellungsdiagramm Hardware-Topologie und Bereitstellung von Artefakten modellieren Ansicht
Paketdiagramm Modell-Elemente in Namensräume organisieren Ansicht
Objektdiagramm Instanzen und Verknüpfungen zu einem bestimmten Zeitpunkt anzeigen Ansicht
Komposite Strukturdiagramm Interne Struktur von Klassifizierern anzeigen Ansicht
Zeitdiagramm Schwerpunkt auf zeitliche Beschränkungen und Zustandsänderungen Ansicht
Interaktionsübersichtsdiagramm Aktivitäts- und Interaktionsdiagramme kombinieren Ansicht

Referenzen


ℹ️ Definition der Notationen ist zitiert aus Object Management Group Unified Modeling Language (OMG UML) Superstruktur-Version 2.2 und frühere Versionen (für Notationen, die in der neuesten Spezifikation nicht mehr existieren).


Dieser Leitfaden richtet sich an Softwarearchitekten, Business-Analysten und Systemdesigner, die komplexe Abläufe und Geschäftsprozesse mit Hilfe von UML-Aktivitätsdiagrammen modellieren möchten. Alle visuellen Elemente und Definitionen stammen aus der offiziellen UML-Galerie von Visual Paradigm.