user-icon Boris Steiner
07. Oktober 2013
timer-icon 4 Min.

Mehrwert durch selten verwendete Diagramme in der Prozessmodellierung? Teil I: Konversationsdiagramm

Ein oft geäußerter Kritikpunkt an komplexen Prozessmodellen ist ihre mangelnde Übersichtlichkeit. Je mehr Beteiligte (und damit Lanes) in einen Prozess involviert sind, desto schwieriger wird eine schnelle Verständlichkeit des Modells vor allem für Laien. Auch ich wurde in einem Projekt mit solchen Modellen konfrontiert und war auf der Suche nach einem weniger komplexen Weg der Darstellung. BPMN bietet seit der Version 2.0 zwei neue Diagrammtypen, die an dieser Stelle hilfreich sein könnten: Kon

Das Konversationsdiagramm

Hierbei handelt es sich um die kompakteste Form der Darstellung eines Prozesses in BPMN. Es werden lediglich vier Symbole verwendet:

  • Teilnehmer (Participant)
  • Konversation (Conversation)
  • Konversationsverbindung (Conversation Link)
  • Kommentar (Comment)

Im Folgenden ein Diagramm mit einem Bestellprozess als Szenario:

Kunde und Lieferant stehen in einer Beziehung zueinander. Ihre Kommunikation dreht sich um die Aufgabe und Abwicklung einer Bestellung.

Quelle: Eigendarstellung (Modellierungswerkzeug Signavio)

Quelle: Eigendarstellung (Modellierungswerkzeug Signavio)

In diesem Diagramm wurden alle zur Verfügung stehenden Symbole eingesetzt. Kunde und Lieferant sind jeweils Participants, die durch Conversation Links verbunden sind. Diese treffen sich in der Conversation, welche durch einen Comment erläutert wird. Es ist durch die wenigen Symbole sehr einfach und klar in seiner Darstellung. Es bleiben allerdings Fragen offen:

  • Was ist der genaue Inhalt der Kommunikation?
  • In welcher zeitlichen Abfolge findet die Kommunikation statt?

Daher bietet das Diagramm durchaus einen schnellen Überblick, worum es im Prozess überhaupt geht. Dieser wird allerdings sehr stark abstrahiert und auf die Kommunikation zwischen den Beteiligten reduziert, der Prozessablauf selbst ist nicht mehr eindeutig erkennbar. Es dürfen natürlich auch mehr als lediglich zwei Teilnehmer und ihre Kommunikation abgebildet werden (das gilt auch für alle folgenden Variationen).

Zusätzlich dazu existiert das Konzept der Subkonversation (dargestellt durch das Pluszeichen innerhalb des Conversation-Symbols). Diese lässt sich zu einer detaillierteren Darstellung mit Nachrichtenflüssen aufklappen.

Quelle: BPMN 2.0 Spezifikation S. 127

Quelle: BPMN 2.0 Spezifikation S. 127

Die hier abgebildete Subkonversation unterscheidet sich von der vorherigen Darstellung lediglich durch das verwendete Conversation-Symbol. Das enthaltene „ “ kennzeichnet die enthaltene Subkonversation. Bei der in Klammer stehenden Order ID handelt es sich um den sogenannten Correlation Key. Dieser muss in jeder der ausgetauschten Nachrichten zwischen Retailer und Supplier enthalten sein. Eine Interpretation des Diagrammes lautet z. B. wie folgt:

Retailer und Supplier führen Verhandlungen über eine Lieferung. Ihre Kommunikation enthält unter anderem zwingend eine Order ID.

Quelle: BPMN 2.0 Spezifikation S. 127

Quelle: BPMN 2.0 Spezifikation S. 127

Die aufgeklappte Subkonversation enthält zusätzlich zu den bekannten Elementen die zwischen den Participants ausgetauschten Nachrichtenflüsse. Sie bietet daher eine etwas höhere Aussagekraft als die gewöhnliche Konversation, da die zeitliche Abfolge der Nachrichten (von oben nach unten) ersichtlich ist. Das genaue Verhalten der einzelnen Participants oder der Prozessablauf insgesamt sind jedoch auch hier nicht enthalten. Eine Subkonversation kann neben der Darstellung der Message Flows auch auf eine andere Konversation oder Subkonversation verweisen.

Neben der Subkonversation existiert noch die Call Konversation. Ihr Symbol sieht exakt gleich aus, unterscheidet sich jedoch durch eine dickere Rahmenlinie. Eine Call Konversation kann laut Spezifikation auf ein Kollaborationsdiagramm verweisen jedoch nicht auf eine Choreographie.

Und welches Tool setzt man ein?

Für mich persönlich bestand die nächste Herausforderung darin ein Werkzeug zu finden, das diese Art Diagramm unterstützt. Der von mir standardmäßig zur reinen Modellierung eingesetzte BizAgi Modeller muss an dieser Stelle nämlich leider passen. Bisher stehen die benötigten Modellierungselemente nicht zur Verfügung. Meine Suche brachte mich zunächst zum Signavio Process Editor. Wie im zuvor abgebildeten Diagramm ersichtlich, stellt dieser alle für das Konversationsdiagramm nötigen Elemente vollständig zur Verfügung.

Der Ablauf der kostenlosen Testphase von Signavio (und der Hinweis eines Kollegen) sorgte dafür, dass ich mich noch einmal näher mit dem – ebenfalls von bereits einmal von mir genutzten – Adonis beschäftigte. Auf den ersten Blick nicht sofort ersichtlich, steht auch hier dieser Diagrammtyp zur Verfügung. Für mich zunächst verwirrend: Im Gegensatz zu Signavio steht hier in den Symbolen keines bereit, das als Participant bezeichnet wird. Behelfsweise habe ich daher zuerst einen collapsed Pool verwendet. Eine genauere Recherche in der BPMN 2.0 Spezifikation beseitigte jedoch die Unklarheit: Auch hier ist von Participants die Rede. Es wird allerdings erläutert, dass als Symbol für ebendiesen Participant ein Pool ohne weitere in ihm enthaltene Elemente verwendet wird. Meiner Meinung nach eignen sich also beide Modellierungswerkzeuge gut zur Erstellung dieser Diagramme wobei mir die Darstellung in Signavio rein optisch persönlich besser gefällt.

Quelle: Eigendarstellung (Modellierungswerkzeug Adonis)

Fazit

Das Konversationsdiagramm bietet einen sehr reduzierten (dadurch aber auch einfacher verständlichen) Überblick eines Prozesses. Es kann aber auch wirklich nur für genau diesen Zweck dienen. Prozessdetails wie zeitliche Abfolge, genaue Inhalte einer Kommunikation etc. lassen sich aufgrund der Darstellung nämlich nicht erschließen. Die Subkonversation ermöglicht immerhin einen etwas genaueren Einblick in die Kommunikation der Prozessteilnehmer. Um komplexe Prozesse in einer vereinfachten und auch für Laien verständlichen Form darzustellen, kann es meiner Meinung nach aber durchaus Sinn ergeben. Die Reduktion auf die Darstellung der Kommunikation fällt gerade Personen, die mit der BPMN-Notation wenig oder gar nicht vertraut sind deutlich leichter. Dies lässt sich zu zwei verschiedenen Zwecken nutzen:

  • Man beschäftigt sich zunächst damit, die Kommunikation der einzelnen Prozessbeteiligten untereinander in einem solchen Diagramm zu erfassen. Auf dessen Basis lässt sich die detaillierte Modellierung des Prozesses im Anschluss leichter bewerkstelligen.
  • Aus einem bereits vorhandenen, ausführlichen Kollaborationsdiagramm (die „normale“ Darstellung mit Pools, Lanes und Sequence Flows) wird ein Konversationsdiagramm erstellt. Dieses kann dann verwendet werden um „Nicht-BPMN-Experten“ ein Grundverständnis des Prozesses zu vermitteln.

Ausblick und Fragen

Im bald folgenden zweiten Teil des Blogpost werde ich näher auf das Choreographiediagramm eingehen. Bis dahin würden mich Ihre Erfahrungen interessieren: Haben Sie das Konversationsdiagramm bereits einmal eingesetzt? Falls ja, zu welchem Zweck geschah dies und war der Einsatz im Nachhinein sinnvoll? Vertreten Sie die Meinung, dass diese Art der Darstellung überflüssig ist? Sehen Sie eher die Vorteile und Möglichkeiten, die sich dadurch ergeben? Oder war sie Ihnen gar nicht bekannt? Beim letzten Punkt befinden Sie sich meinen Erfahrungen nach übrigens in guter Gesellschaft.