Im ersten Blogpost zu diesem Thema habe ich mich mit dem Konversationsdiagramm beschäftigt. Im damals gezogenen Fazit wurde an erster Stelle die mangelnde Aussagekraft bezüglich Prozessdetails (zeitliche Abfolge, Inhalte der Kommunikation etc.) bemängelt. Wie schon erwähnt, gibt es noch eine weitere, eher unbekannte Diagrammart: Das Choreographiediagramm, das an genau diesen Punkten Vorteile aufweist. Ich möchte es im Folgenden kurz vorstellen und die Möglichkeiten und Sinnhaftigkeit seiner Verwendung betrachten.

 

Das Choreographiediagramm

Betrachten wir zunächst einmal die aus der BPMN 2.0-Spezifikation entnommene Definition einer Choreographie:

A self-contained Choreography (no Pools or Orchestration) is a definition of the expected behavior, basically a procedural contract, between interacting Participants. While a normal Process exists within a Pool, a Choreography exists between Pools (or Participants) […] it consists of a network of Activities, Events, and Gateways  […] In addition, unlike a normal Process, there is no central controller, responsible entity or observer of the Process. (BPMN 2.0 Spezifikation S. 25)
 
Quelle: Eigendarstellung (Modellierungswerkzeug Signavio)

Quelle: Eigendarstellung (Modellierungswerkzeug Signavio)

 

Der abgebildete Bestellprozess läuft wie folgt ab: Ein Kunde bestellt eine Pizza bei einem Lieferanten und wartet im Anschluss auf die Bestellung. Trifft die Bestellung ein, übergibt der Lieferant dem Kunden die Pizza. Im Anschluss kassiert er vom Kunden das Geld und übergibt ihm den Kassenzettel. Ist die Lieferung nach 60 Minuten noch nicht erfolgt, fragt der Kunde beim Lieferanten nach. Daraufhin wird die Pizza (in unserem idealen Prozess) geliefert und es folgt der bereits bekannte Bezahlvorgang.

Es ist hier sehr schön zu sehen, dass in einer Choreographie lediglich Aufgaben enthalten sind, die sich mit dem Nachrichtenaustausch zwischen den Teilnehmern beschäftigen. Der Prozessablauf ist damit grundsätzlich noch erkennbar aber in der Regel klarer und übersichtlicher als beim zugehörigen Kollaborationsdiagramm. Die Grundstruktur ist hierbei relativ einfach: Jede Aktivität beinhaltet den sendenden (weißes Feld) und den empfangenden (graues Feld) Teilnehmer des Prozesses. Zu beachten ist, dass sich die Choreographie niemals innerhalb eines Pools befinden kann. Da dieser in BPMN die Repräsentation eines Prozessteilnehmers ist, würde das auch keinen Sinn ergeben. Die Grundidee einer Choreographie ist ja gerade, dass die Kommunikation zwischen mehreren Teilnehmern dargestellt wird. Sind mehr als zwei Teilnehmer am Prozess beteiligt, muss darauf geachtet werden, dass der initiierende Teilnehmer einer Aufgabe zwingend immer auch bei der vorhergehenden Aufgabe involviert sein muss (er muss ja zunächst auf irgendeine Art von seiner Beteiligung am Prozess erfahren).

In Choreographien können mehr Modellierungselemente verwendet werden, als in der bereits behandelten Konversation. Die BPMN 2.0 Spezifikation sieht alle Elemente aus der folgenden Tabelle vor:

In Choreographien zu verwendende Elemente (Quelle: Eigendarstellung)

In Choreographien zu verwendende Elemente (Quelle: Eigendarstellung)

Für einige der Modellierungselemente gelten besondere Einschränkungen beim Einsatz in einem Choreographiediagramm. Betroffen sind vor allem die Ereignisse (Einschränkungen zu finden in der BPMN 2.0 Spezifikation ab Seite 340) und ereignisbasiertes und inklusives Gateway (Einschränkungen zu finden ab Seite 352).

Auch sehr komplexe Prozesse lassen sich in Form einer Choreographie deutlich vereinfachter darstellen. Folgendes Beispiel aus der BPMN 2.0 Spezifikation verdeutlicht dies sehr gut:

Ein Bestellprozess als Kollaboration (Quelle: BPMN 2.0 Spezifikation S. 318)

Ein Bestellprozess als Kollaboration (Quelle: BPMN 2.0 Spezifikation S. 318)

Ein Bestellprozess als Choreographie (Quelle: BPMN 2.0 Spezifikation S. 319)

Ein Bestellprozess als Choreographie (Quelle: BPMN 2.0 Spezifikation S. 319)

 

Während das obere Kollaborationsdiagramm auf den ersten Blick wohl eher keine rasche Erfassung des Prozessablaufes erlaubt, ist dies bei der dazugehörigen Choreographie schon deutlich einfacher möglich. Dies umso mehr wenn man bedenkt, dass hier auch im linken Diagramm lediglich Aufgaben enthalten sind, die dem Nachrichtenaustausch dienen. Bei einem komplexeren Prozess mit mehr Aufgaben (die nicht lediglich dem Nachrichtenaustausch dienen) tritt dieser Effekt natürlich noch deutlich stärker zu Tage.

 

Die Modellierungstools

Wie schon im vorherigen Blogpost zu diesem Thema, sollen auch an dieser Stelle drei Modellierungswerkzeuge näher betrachtet werden. Der BizAgi Modeler ist schnell abgehandelt: Nach wie vor bietet er nur das gewöhnliche Kollaborationsdiagramm als Option der Modellierung an.

Adonis bietet alle Möglichkeiten (laut Spezifikation erlaubte Symbole sind vollständig vorhanden) um Choreographiediagramme zu erstellen. Die Art und Weise ist allerdings etwas umständlich und lässt mich zwiespältig zurück. Der Aufbau des unten zu sehenden Diagrammes ist von der Bedienung her angenehm und selbsterklärend. Ein Problem stellt jedoch die Zuordnung der Teilnehmer zu den einzelnen Aktivitäten dar. Hierzu muss zunächst ein Kollaborationsdiagramm erstellt werden. Die in ihm enthaltenen Pools kann man nun referenzieren und so die Teilnehmer den gewünschten Aktivitäten zuordnen (zu erreichen über die Eigenschaften der Aktivität). Hier ebenfalls festgelegt werden, ob es sich um Sender oder Empfänger handelt. Diese Art des Vorgehens mag durchaus sinnig sein wenn man zu einer bereits vorhandenen Kollaboration die zugehörige Choreographie erstellen will. Auch dann ist sie allerdings von der Bedienung her etwas umständlich. Soll jedoch direkt eine Choreographie modelliert werden, wird an dieser Stelle eher unnötiger Aufwand erzeugt.

 

Quelle: Eigendarstellung (Modellierungswerkzeug: Adonis)

Quelle: Eigendarstellung (Modellierungswerkzeug: Adonis)

Auch Signavio bietet die volle, zur Verfügung stehende Symbolpalette an. Die Bedienung ist hier einfach und ohne Umwege möglich. Teilnehmer lassen sich händisch in einer Aktivität eintragen und Sender und Empfänger einfach per Drag & Drop festlegen. Mir persönlich gefällt auch die klare und sachliche Darstellung besser als bei Adonis (was aber sicherlich Geschmackssache ist).

Aus meinem kurz gehaltenen Test und Überblick geht Signavio damit als Sieger hervor. Die Philosophie, das Produkt nur als webbasierte Lösung anzubieten, muss man nicht mögen. Für ein reines Modellierungswerkzeug ist sie jedoch durchaus nachvollziehbar und bietet keine spürbaren Nachteile.

 

Expertenmeinungen

Fundierte Meinungen zum Thema zu finden stellt sich als relativ schwierig heraus. Generell scheinen die beschriebenen Diagrammtypen wenig bekannt zu sein bzw. in der Praxis sehr selten eingesetzt zu werden. Eine (relativ radikale) Position vertritt Bruce Silver  in seinem Blog. So enthält BPMN 2.0 seiner Aussage nach “… a brand new choreography model that nobody understands or cares about”. Desweiteren seien die zwei neuen Diagrammtypen “Changes (…)  you can completely ignore”. Er behandelt sie konsequenterweise auch nicht in seinem Buch und liefert die Begründung auch gleich mit: “So far I have seen little interest in these additions to the BPMN standard, focused on B2B interactions.”

Auf der Suche nach einer etwas positiveren Meinung bin ich im Praxishandbuch BPMN (S.117) fündig geworden. Hier wird den Diagrammtypen durchaus eine Daseinsberechtigung eingeräumt. Vor allem um Prozesslandkarten komplexer Abläufe (auch über Systemgrenzen hinweg) verständlich zu machen. Lassen sich doch auf ihnen sehr gut die entscheidenden Punkte einer Zusammenarbeit identifizieren und falls nötig das zugehörige Kollaborationsdiagramm erstellen.

 

Fazit

Meiner Meinung nach könnten die vorgestellten Diagrammtypen auch in der Praxis sinnvoll eingesetzt werden. Gerade um komplexe Prozesse in einer auch für Laien verständlichen Form darzustellen, kommen sie in Frage. Die Meinungen zu diesem Thema gehen aber auch unter den Experten bei uns im Haus auseinander. Insbesondere Personen, die über sehr viel Erfahrung mit der gängigen Art der Prozessdarstellung, dem Flussdiagramm (in BPMN 2.0 also dem Kollaborationsdiagramm) verfügen, empfinden die Darstellung als nicht intuitiv. Dies ist gerade bei der Choreographie verständlich, da sie sich doch entscheidend von einem Flussdiagramm unterscheidet (Reduzierung auf die Kommunikation und andere Darstellung von Aktivitäten). Eventuell liegt die Vereinfachung also nicht unbedingt in der Art der Darstellung begründet, sondern in der Reduktion der verwendeten Modellierungselemente. Schließlich ist die zu einem komplexen Kollaborationsdiagramm gehörende Konversation oder Choreographie in der Regel deutlich kompakter (was Anzahl und Typ der verwendeten Elemente betrifft). Ein ähnlicher Vereinfachungseffekt ließe sich aber teilweise sicherlich auch in einer Kollaboration durch den bewussten Verzicht auf bestimmte Elemente (z. B. keine typisierten Aufgaben, nur UND-/ODER-Verzweigungen …) oder Aspekte (z. B. Beschränkung auf Aufgaben, die der Kommunikation dienen) erreichen.

Leider werden beide Diagrammarten von Modellierungswerkzeugen bisher oft noch nicht unterstützt. Die angesprochene Methodik, zunächst eine Choreographie oder Konversation zu erstellen und auf deren Basis die ausführliche Kollaboration, könnte sinnvoll sein. Vor allem wenn der Gesamtprozess zum besseren Verständnis und Abstimmung aller Beteiligten zunächst auf die Kommunikation reduziert dargestellt werden soll. Von der anderen Seite her wäre auch ein durch das Werkzeug unterstützter Perspektivenwechsel zwischen Kollaboration und Choreographie/Konversation ideal. Alle dafür nötigen Informationen wären in einer Kollaboration eigentlich enthalten. Im Moment ist die Verbreitung und Verwendung dieser zwei Diagrammtypen in der Praxis aber eher noch eine Seltenheit. Dies merkt man insbesondere an der noch nicht gegebenen Toolunterstützung und den Schwierigkeiten überhaupt Informationen abseits der BPMN 2.0 Spezifikation zu finden. Letztendlich liegt das wohl auch daran, dass sich die erzielten Effekte teilweise auch mit einem reduzierten Kolloborationsdiagramm erreichen lassen, das bereits sehr stark verbreitet ist und in allen Werkzeugen unterstützt wird. Ich hoffe dieser zweiteilige Artikel konnte Ihnen einen ersten Überblick zu diesem Thema verschaffen. Auch dieses Mal würden mich Ihre Erfahrungen und Meinungen zu diesem Thema in den Kommentaren oder per Mail sehr interessieren.

 

 

Leave a Comment

1 comment

  1. C

    Vielen Dank! Sehr gute Erläuterungen, schön auch, dass Sie ein paar Tools vergleichen.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close