BPMN vs. UML-Aktivitätsdiagramm
Beide zeichnen Arbeit in Reihenfolge, beide nutzen für eine Entscheidung eine Raute, und über weite Strecken jedes Prozesses sind die zwei Diagramme dasselbe Bild. Vier Dinge trennen sie, und nur eines davon betrifft die Notation.
8 Min. LesezeitBPMN 2.07 von 7
Die kurze Antwort
- Beide Notationen schieben ein Token über den Fluss, deshalb ist die Kontrollfluss-Hälfte beider Diagramme eine nahezu exakte Entsprechung.
- Der eigentliche Unterschied ist der Pool: BPMN verbietet Sequenzfluss über eine Beteiligtengrenze, UML-Partitionen kennen keine solche Regel.
- Randereignisse machen Unterbrechung in BPMN zu einer eigenen Marke; UML drückt dasselbe über unterbrechbare Bereiche aus, die kaum jemand zeichnet.
- Nur BPMN hat eine Ausführungsgeschichte. Geht das Diagramm an eine Process Engine, ist die Wahl bereits getroffen.
01Dasselbe Bild, zweimal gezeichnet#
Beginnen wir mit dem Unstrittigen. Beide Notationen beschreiben ein Token, das über einen Fluss wandert: es verlässt einen Start, durchläuft Arbeitsschritte, teilt sich an einer Verzweigung, wartet an einer Zusammenführung und kommt schliesslich zum Stehen. Dieses Modell stammt in beiden Fällen aus derselben Ecke, und deshalb sind die zwei Diagramme eines einfachen Genehmigungsprozesses erkennbar dieselbe Zeichnung mit anderem Mobiliar.
| Element | Notation | Was es bedeutet |
|---|---|---|
| Eine Arbeitseinheit | Abgerundetes Rechteck in beiden | Eine BPMN-Aufgabe und eine UML-Aktion sind dieselbe Idee. BPMN ergänzt eine Marke für die Art der Arbeit - Benutzer, Service, manuell - die UML dem Namen überlässt. |
| Exklusive Verzweigung | Raute in beiden | BPMN zeichnet ein X hinein, UML lässt sie leer, aber die Semantik stimmt überein: genau ein ausgehender Pfad wird genommen, und die Bedingungen stehen an den Kanten. |
| Parallelität | Raute mit Plus, oder ein dicker Balken | Das parallele Gateway in BPMN und Fork und Join in UML bedeuten dasselbe. Das ist der eine Formunterschied, über den Leser tatsächlich stolpern. |
| Das Ende | Dicker Kreis, oder gefülltes Ziel | Beide trennen "dieser Pfad ist fertig" von "der ganze Prozess ist fertig", und in beiden Notationen ist genau diese Unterscheidung die, die schiefgeht. |
Ist Ihr Prozess eine Gerade mit zwei Entscheidungen, endet der Vergleich hier, und Sie sollten zeichnen, was Ihre Leser bereits kennen. Die Unterschiede weiter unten greifen erst, wenn Beteiligte, Unterbrechungen oder Automatisierung ins Bild kommen - was zugegebenermassen auf die meisten echten Prozesse zutrifft.
02Wo die beiden wirklich auseinandergehen#
1. Der Pool ist eine Regel, kein Etikett. Das ist der Unterschied, auf den es am meisten ankommt und der am wenigsten bemerkt wird. Eine UML-Aktivitätspartition sagt, wer eine Aktion ausführt, und sonst nichts, also überquert der Kontrollfluss ihre Grenzen so frei wie alles andere. Ein BPMN-Pool ist ein vollständig eigener Beteiligter mit eigenem Prozess, und BPMN verbietet dem Sequenzfluss, ihn zu überqueren: Interaktion zwischen Pools muss ein Nachrichtenfluss sein. Diese eine Regel ist der Grund, warum ein BPMN-Diagramm zweier Organisationen eine Aussage über ihre Unabhängigkeit ist, während das UML-Gegenstück eine Aussage über Rollenbesetzung ist.
2. Unterbrechung ist in BPMN erstklassig. Hängen Sie ein Randereignis an eine Aufgabe, und Sie haben mit einer Marke gesagt, dass diese Arbeit durch einen Timer, einen Fehler oder eine eingehende Nachricht abgebrochen werden kann - und ob der ursprüngliche Pfad danach weiterläuft. UML kann dasselbe mit einem unterbrechbaren Aktivitätsbereich und einer ereignisannehmenden Aktion ausdrücken, aber das Konstrukt wird selten gelehrt, selten gezeichnet und selten richtig gelesen. In der Praxis gilt: ist der Prozess voller Eskalationen und Fristen, zeichnet BPMN ihn mit einem Drittel der Tinte. Das Ereignisvokabular ist das meiste, was Sie kaufen.
3. UML sitzt in einem grösseren Modell. Ein Aktivitätsdiagramm teilt sein Modell mit dem Klassendiagramm daneben, also kann eine Aktion ein Objekt eines anderswo definierten Typs verbrauchen, und ein Werkzeug kann prüfen, dass der Typ existiert. BPMN hat Datenobjekte, aber sie sind bewusst prozesslokal und tragen nichts wie ein Klassenmodell hinter sich. Muss die Prozessbeschreibung zu einem Systementwurf passen, ist dieses geteilte Vokabular mehr wert als jedes Notationsmerkmal.
4. Nur BPMN ist ausführbar. BPMN 2.0 definiert eine XML-Serialisierung, die Workflow-Engines direkt verarbeiten - deshalb kann dieselbe Datei ein Bild für den Fachbereich und ein Deployment-Artefakt für die Entwicklung sein. UML hat fUML, eine ausführbare Teilmenge mit definierter Semantik, und fast keine Engine, die sie nimmt. Behandeln Sie das als die eine harte Randbedingung der Liste: steht am Ende der Kette eine Engine, ist die Notation BPMN, und der Rest dieses Artikels ist Hintergrund.
03Was zeichnen#
Die Entscheidung trifft fast immer der Leser, nicht der Prozess. Beide Notationen können jeden Prozess ausdrücken, den Sie wahrscheinlich zeichnen werden; nur eine davon wird von den Leuten, die ihn freigeben müssen, auf Anhieb gelesen.
Dazu greifen, wenn
- Die Leser kommen aus dem Fachbereich, erst recht wenn eine Prozessberatung oder ein BA-Kurs ihnen BPMN bereits beigebracht hat.
- Der Prozess überschreitet Organisationsgrenzen, und deren Unabhängigkeit gehört zur Aussage.
- Timer, Eskalationen, Stornierungen und nachrichtengetriebene Unterbrechungen sind die Substanz des Prozesses.
- Das Diagramm geht an eine Process Engine, jetzt oder plausiblerweise später.
Zu etwas anderem greifen, wenn
- Der Prozess ist intern zu einem System, und die Leser sind Entwickler, die UML ohnehin lesen.
- Die Schritte müssen zu Typen, Operationen oder Komponenten passen, die im selben Modell definiert sind.
- Das Diagramm ist eine von einem Dutzend Sichten auf ein System, und Konsistenz zwischen ihnen wiegt schwerer als Lesefluss in einer.
- Sie brauchen das Ganze in einer austauschbaren Modelldatei statt einen Prozess nach dem anderen.
Wo das Publikum wirklich gemischt ist - und in Projekten jeder Grösse ist es das meist - zeichnen Sie den Prozess einmal in BPMN für die Leute, denen er gehört, und behalten das Aktivitätsdiagramm für die Teile des Flusses, die eher Algorithmus als Prozess sind. Diese Teilung folgt dem Publikum, statt gegen es zu arbeiten, und lässt sich im Review weit leichter verteidigen als ein einzelnes Diagramm, das der halbe Raum nicht lesen kann.
04Von einer zur anderen#
Umwandlungen in beide Richtungen sind Alltag, und der ehrliche Weg ist, vorher zu entscheiden, was man aufzugeben bereit ist. Von BPMN nach UML überträgt sich der Kontrollfluss fast perfekt: Aufgaben werden Aktionen, exklusive Gateways werden Entscheidungs- und Merge-Knoten, parallele Gateways werden Fork und Join, und die Gateway-Regeln bilden eins zu eins ab. Aufgeben muss man alles zu Beteiligten und Ereignissen.
In die andere Richtung sind die Verluste kleiner, aber die Zutaten sind Arbeit: BPMN will ein Startereignis, ein Endereignis und einen Pool für jeden Akteur, den Sie als Partition modelliert hatten, und es lässt den Sequenzfluss diese Pools nicht überqueren. Genau diese Weigerung zahlt sich meist aus, weil sie eine Frage erzwingt, der das Aktivitätsdiagramm Sie ausweichen liess: ist das ein Prozess oder sind es zwei?
In welche Richtung auch immer, teuer ist das Neuzeichnen - und genau das nimmt ein Werkzeug mit Modell hinter den Bildern weg: halten Sie Beteiligte und Arbeit als Modellelemente, und die zweite Sicht hört auf, eine zweite Zeichnung zu sein. Wer es lieber sieht als liest: die BPMN-Startvorlage öffnet einen Prozess mit Pools und Bahnen und bereits gesetzten Ereignissen, und die Fünfzehn-Sekunden-Demo gibt am Ende eine echte Datei zurück.
In je einer Zeile
- 01Die Kontrollfluss-Hälfte beider Notationen ist praktisch dasselbe Diagramm; wählen Sie nicht nach Formen.
- 02Ein BPMN-Pool verbietet Sequenzfluss über seine Grenze. Eine UML-Partition nicht. Das ist der tiefste Unterschied zwischen beiden.
- 03Randereignisse machen BPMN für Prozesse voller Fristen, Eskalationen und Stornierungen deutlich billiger.
- 04Ein Aktivitätsdiagramm ist mehr wert, wenn der Prozess zu einem Klassenmodell daneben passen muss.
- 05Muss eine Engine es ausführen, lautet die Antwort BPMN, und nichts anderes auf dieser Liste gilt noch.
05Häufige Fragen#
Kann eine Process Engine ein UML-Aktivitätsdiagramm ausführen?
Nicht so wie einen BPMN-Prozess. Es gibt eine ausführbare Teilmenge von UML namens fUML mit definierter Semantik, aber kaum eine kommerzielle Workflow-Engine nimmt sie als Deployment-Ziel, während BPMN-2.0-XML von Engines wie Camunda, Flowable und Zeebe direkt gelesen wird. Geht es um Ausführung, ist das entschieden und keine Geschmacksfrage.
Bedeuten BPMN-Pools dasselbe wie Partitionen im Aktivitätsdiagramm?
Nein, und genau daran stolpern viele. Eine UML-Partition sagt nur, wer eine Aktion ausführt, und der Kontrollfluss überquert Partitionen frei. Ein BPMN-Pool ist ein eigener Beteiligter mit eigenem Prozess, und Sequenzfluss darf seine Grenze überhaupt nicht überschreiten - nur Nachrichtenfluss darf das. Ein Pool ist damit eine viel stärkere Aussage als eine Schwimmbahn.
Lässt sich ein BPMN-Prozess in ein UML-Aktivitätsdiagramm überführen?
Das Kontrollfluss-Skelett wandelt sauber um: Aufgaben werden Aktionen, exklusive Gateways werden Entscheidungsknoten, parallele Gateways werden Fork und Join. Nicht überstehen wird alles, was BPMN über Beteiligte und Ereignisse sagt - Pools fallen zu Partitionen zusammen, Nachrichtenflüsse werden gewöhnliche Kanten, und für Randereignisse gibt es überhaupt kein direktes Gegenstück.
Welche Notation erwarten Business-Analysten?
BPMN, in fast jeder Organisation, die überhaupt eine Prozessfunktion hat. Es ist die Notation, die in Business-Analyse-Kursen gelehrt wird und in der Prozessberatungen liefern, sie kommt also bereits lesbar an. Ein UML-Aktivitätsdiagramm ist denselben Leuten in derselben Sitzung meist verständlich, liest sich aber als Engineering-Artefakt und nicht als Prozessdokument.
In dieser Reihe
- 01Was ist BPMN
- 02Ereignisse
- 03Gateways
- 04BPMN-Beispiele
- 05BPMN zeichnen
- 06BPMN-Symbole
- 07BPMN vs. Aktivitätsdiagramm
Passend dazu
Grundlagen
Verhaltensdiagramme
Modellierungspraxis
Notationsreferenz
Verhaltensdiagramme
Modellierungspraxis