In unserem ersten Teil der Blogserie haben wir die ersten Vergleiche zwischen BPMN und UML angestellt und kamen zu dem Ergebnis, dass die BPMN einen leichten Vorteil gegenüber der UML besitzt. Doch warten Sie ab, ob es im zweiten Teil dabei bleibt.
Der Vergleich im Detail
Ein essenzieller Bestandteil eines jeden Geschäftsprozesses ist die Festlegung der Verantwortlichkeiten für die Durchführung der einzelnen Arbeitsschritte. Dafür kennt die BPMN 2.0 die Elemente Pool und Lane. Ein Pool beschreibt dabei eine Geschäftseinheit, die durch einzelne Lanes weiter unterteilt werden kann. Auch die UML 2.3 kennt dieses Konzept und spricht dabei allgemein von Aktivitätsbereichen oder Partitionen (vgl. Abbildung 1). Diese können erneut hierarchisch angeordnet werden, so dass eine Partition dann einem Pool und eine Unterpartition einer Lane entspricht. Fazit: Unentschieden. Zwischenergebnis: BPMN: 3 – UML: 2
In Abbildung 1 wurde bereits ein weiteres wichtiges Element eingeführt: die Verbindung zwischen den einzelnen Knoten eines Diagramms. Die BPMN 2.0 unterscheidet dabei zwischen zwei Arten von Flüssen: den Sequenz- und den Nachrichtenfluss. Dabei verbindet ein Sequenzfluss die Ablaufknoten innerhalb eines Pools, der Nachrichtenfluss symbolisiert nur den Informationsaustausch zwischen zwei Pools. Will man also einen Prozess mit zwei Pools modellieren, so besitzt jeder Pool seinen eigenen Sequenzfluss, eine Verbindung der beiden Pools erfolgt nur über den Informationsaustausch des Nachrichtenflusses. Im UML-Aktivitätsdiagramm hingegen gibt es dafür nur eine Notation, die Modellierung des Kontrollflusses mithilfe von Kanten. Dabei kann der Kontrollfluss auch zwischen Partitionen (also den Pools) verlaufen (vgl. Abbildung 1). Fazit: Die Praxiserfahrung zeigt, dass viele Personen Schwierigkeiten beim Lesen und Modellieren mit der Unterscheidung zwischen Sequenz- und Nachrichtenfluss bei der BPMN 2.0 haben. Ein klarer Nachteil für die BPMN. Allerdings besitzt die BPMN 2.0 dadurch die Möglichkeit einen oder alle Pools aus Blackbox-Sicht zu modellieren, um sich auf den Nachrichtenaustausch zu konzentrieren, was einen Vorteil darstellen kann. Geht man davon aus, dass sich ein Vorteil und ein Nachteil gegenseitig aufheben, so heißt es Unentschieden. Zwischenergebnis: BPMN: 4 – UML: 3
Bis jetzt haben wir uns nur mit sequenziellen Abläufen beschäftigt, doch in der Praxis bestehen Geschäftsprozesse natürlich auch aus alternativen oder parallelen Abläufen. Dazu besitzt die BPMN 2.0 die sogenannten Gateways, die nur den Sequenzfluss steuern. Dabei kennt die BPMN 2.0 sechs unterschiedliche Typen:
- Ein datenbasiertes exklusives Gateway kommt dann zum Einsatz, wenn aus einer Menge von Alternativen genau ein Ablauf aufgrund von Bedingungen ausgewählt wird.
- Ein ereignisbasiertes exklusives Gateway kommt dann zum Einsatz, wenn aus einer Menge von Alternativen genau ein Ablauf aufgrund eines eintreffenden Ereignisses ausgewählt wird.
- Ein ereignisbasiertes paralleles Gateway teilt den Ablauf aufgrund eintreffender Ereignisse in mehrere Sequenzflüsse auf, die gleichzeitig ausgeführt werden.
- Ein paralleler Gateway teilt den Ablauf in mehrere Sequenzflüsse auf, die gleichzeitig ausgeführt werden.
- Ein inklusives Gateway kommt immer zum Einsatz, wenn aus einer Menge von Alternativen ein oder mehrere Abläufe aufgrund von Bedingungen ausgewählt wird bzw. werden.
- Bei einem komplexen Gateway teilt sich der Fluss in Abhängigkeit von komplexen Bedingungen in einen oder mehrere Abläufe. Dabei ist allerdings zu sagen, dass dieses Gateway nur dazu dient einen Komplexität zu verbergen. Deshalb sollten Sie darauf verzichten.
Vergleicht man nun diese Möglichkeiten (ohne das komplexe Gateway) mit denen des UML-Aktivitätsdiagramms (vgl. Abbildung 2) so muss man feststellen, dass sich …
- das datenbasierte exklusive Gateway auf einen Verzweigungsknoten,
- das parallele Gateway auf den Parallelisierungsknoten an dem die ausgehenden Kanten keine Bedingungen besitzen und
- das inklusive Gateway auf den Parallelisierungsknoten, an dem die ausgehenden Kanten Bedingungen besitzen, mappen lassen.
Die Semantik, die Sie mit einem ereignisbasierten exklusiven oder parallelen Gateway ausdrücken können, kann in der UML nicht abgebildet werden. Fazit: Zwar ist die Unterscheidung beim Parallelisierungsknoten mit bzw. ohne Bedingungen keine „schöne“ Lösung, trotzdem kann man drei von vier Gateways auch in der UML 2.3 abbilden. Nur die beiden ereignisbasierten Gateways sorgen dafür, dass die BPMN 2.0 einen kleinen Vorteil besitzt. Zwischenergebnis: BPMN: 5 – UML: 3
Nach mehreren Vergleichen hat die BPMN 2.0 ihre Führung leicht ausgebaut. In unserem nächsten und letzten Teil werden wir die letzten Vergleiche zwischen der BPMN und UML ziehen, um Ihnen das Endergebnis zu präsentieren.