Skip to main content

Dynamisches Verhalten

Aktivitätsdiagramme beschreiben Ausschnitt aus Ablaufmöglichkeiten eines Systems mit Hilfe von Aktivitäten

Einsatz: Detaillierte Sicht auf Anwendungsfälle | den Ablauf innerhalb von Klassen | Geschäftsprozessmodellierung mit der UML


Aktivität – Parametrisiertes Verhalten, dargestellt als koordinierter Fluss von Aktionen

Aktivitätsknoten:image-1664209087734.png
Aktionen: abgerundete Rechtecke
Objekte: Rechtecke
Kontrollflusselemente: verschiedene Symbole für Entscheidungen, parallele Ausführung
Kontrollfluss: Verbinden von Knoten mit gerichteten Kanten

Aktion – Benanntes Element, das einen einzelnen atomaren Schritt innerhalb der Aktivität darstellt

Kann eingehende und ausgehende Aktivitätskanten enthalten, die Kontroll- und Datenfluss von und zu anderen Knoten definieren
Kann andere Aktivitäten aufrufen (call activity action)
Beginnt mit der Ausführung, wenn alle Eingabebedingungen erfüllt sind


Start- und Endzustandimage-1664209622178.png

Startknoten – Start des Kontrollflusses in einer Aktivität
Aktivitäts-Endknoten – Ende jeglicher Kontrollflüsse in einer Aktivität
Fluss-Endknoten – Ende eines einzelnen Kontrollflusses

Endzustände können mehrfach vorkommen, Startzustände ideal nur einmal


Entscheidungimage-1664209962271.png

Steuerknoten, der eingehenden Kontrollfluss akzeptiert und Kontrollfluss aus mehreren ausgehenden Kontrollflüssen auswählt

Annotation von Bedingungen in Form von booleschen Ausdrücken an Transitionen
Unterstützt auch einen vordefinierten else -Kontrollfluss
Optionaler Merge-Knoten fügt mehrere eingehende alternative Flüsse zusammen


Parallele Ausführungspfade

Fork – Steuerknoten, der einen eingehenden Kontrollfluss in mehrere nebeneinander laufende Kontrollflüsse aufteilt

Die Ausführung des Diagramms durchläuft alle parallelen Pfadeimage-1664210239165.png
Die Ausführungsreihenfolge nebenläufiger Pfade ist irrelevant: nacheinander, gleichzeitig, abwechselnd

Join – Steuerknoten, der mehrere eingehende nebenläufige Kontrollflüsse synchronisiert

UND-Synchronisation: Die Kontrollflüsse aller Transitionen müssen vorliegen, bevor die Transition starten kannimage-1664210562609.png

Probleme mit Fork und Join

  • Es dürfen nur Zweige in einem Join zusammengeführt werden, die zuvor aus demselben Fork hervorgegangen sind.
  • Zweige, die aus verschiedenen (unabhängigen) Forks stammen, können nicht zugleich aktiv sein.

Verantwortlichkeitsbereicheimage-1664210973320.png

Gruppierung von Aktionen anhand gemeinsamer Merkmale

Definieren organisatorische Verantwortlichkeiten
Können hierarchisch aufgebaut werden: Klassenzugehörigkeit, Organisationseinheiten, Akteuren


Objekte und Objektfluss

image-1664211238111.png

Objektflusskanten – Kanten, mit denen der Datenfluss zwischen Aktionsknoten angezeigt wird

Objektknoten – Knoten, mit dem Objekte definiert werden. Vorliegen eines Objektes zu Zeitpunkt innerhalb einer Aktivität

image-1664211422682.png

Pin – Objektknoten für Ein- und Ausgänge von Aktionen

image-1664211520886.png

Data Stores – Zentraler Speicherknoten für nicht-transiente Informationen


Signale senden und empfangenimage-1664259454906.png 

Sendesignalaktion – Senden eines Signals 

Annahmeereignis – Aktion, die auf das Eintreten eines bestimmten Ereignisses (z. B. Signal) wartet 

Sender- und Empfängerobjekte von Signalen müssen nicht spezifiziert werden 


Wartezeitereignisse und Unterbrechungenimage-1664259904268.png

Wartezeitaktion – Warten auf das Eintreten eines Zeitereignisses

Unterbrechbare Aktivitätsregionen – Aktionen, deren Ausführung durch Ereignisse unterbrochen werden können