In unserem ersten Teil dieser Blogserie haben wir Ihnen das Konversationsdiagramm kurz vorgestellt. Dieses wird verwendet, um analog in einem Use-Case-Diagramm darzustellen, welche Teilnehmer eine Aufgabe des Betrachtungsgegenstandes gemeinsam erledigen. Wie die Abarbeitung einer Aufgabe dabei erfolgt, wird im Konversationsdiagramm nicht dargestellt. Dafür nutzt man zum einen das Prozess- bzw. Kollaborationsdiagramm, oder zum anderen das Choreographiediagramm. Letzteres stellen wir Ihnen in diesem Beitrag vor.
Das Choreographiediagramm
Das Choreographiediagramm bietet uns die Möglichkeit, die zeitliche und logische Reihenfolge des Nachrichtenaustauschs zu modellieren. Dies wird durch eine Sequenz von Choreographie-Aktivitäten (engl. „Choreography Activity“ = abgerundetes Rechteck, z. B. „vorerfasste Eingangsrechnung weiterleitet“) beschrieben. Eine Choreographie-Aktivität steht dabei für den Austausch von einer oder mehrerer Nachrichten zwischen zwei oder mehr Partnern. „Vorerfasste Eingangsrechnung weiterleiten“ stellt dabei den einfachsten Fall eines Nachrichtenaustauschs dar. In unserer Beispiel-Choreographie-Aktivität (siehe Abbildung 1) schickt der Buchhalter (weiß = „senden“/„auslösen“) eine Nachricht an den Abrechner (grau = empfangen). Die Nachricht, die dabei ausgetauscht wird, wird durch das Briefsymbol (hier „Eingangsrechnung“) dargestellt. Ein weißer Brief würde dabei eine auslösende Nachricht darstellen (z.B. der „Auftrag Fehlerprüfung“ oder das „Ergebnis Fehlerprüfung“). Alle anderen Arten von Nachrichten werden wieder grau dargestellt.
Abbildung 1: Choreographiediagramm zu „Eingangsabrechnung prüfen“
Um die Sequenz einer Choreographie darzustellen, wird die „normale“ Sequenzflussmodellierung verwendet. Dabei können alle Arten von Gateways (z. B. datenbasiert-exklusiv, ereignisbasiert-exklusiv, komplex, usw.) genutzt werden. Für unsere Choreographie in Abbildung 1 reicht uns dabei ein datenbasiertes-exklusives Gateway. Tipp: Falls Sie datenbasierte Gateways nutzen wollen, müssen Sie sicherstellen, dass sich die Bedingungen an dem Gateway nur auf vorher im Prozess ausgetauschte Nachrichten beziehen!
Neben den Gateways können auch Ereignisse im Sequenzfluss einer Choreographie verwendet werden. In Abbildung 1 kommen nur ein unbestimmtes Start- und Endeereignis zum Einsatz. Es können jedoch auch bestimmte Ereignisse (z. B. ein zeitliches Zwischenereignis) verwendet werden. Nur Nachrichtenereignisse dürfen Sie nicht verwenden, denn diese müssten durch eine Choreographie-Aktivität modelliert werden.
Nun fehlt uns nur noch das Kollaborationsdiagramm. Dieses stelle ich Ihnen im letzten Teil der Serie vor.
Bis dahin!