Case Management und CMMN für Entwickler

Kombination und Fazit

BPMN + CMMN

Es gibt Fälle, in denen Geschäftsprozesse als Ganzes in CMMN behandelt werden sollten. Die Erfahrung zeigt jedoch, dass es häufig sinnvoll ist, BPMN und CMMN zu kombinieren. Die folgende Abbildung zeigt den Fall für das Fachbeispiel, in dem übergreifende Prozes strukturiert, die Entscheidungsphase unstrukturiert, einzelne Aktivitäten wie das Abfragen der Informationen beim Hausarzt aber wieder strukturiert ablaufen.

BPMN und CMMN lassen sich kombinieren, um stets das richtige Werkzeug für eine Aufgabe nutzen zu können (Abb. 4).


Aktuell erlauben die Standards nur eine Verzahnung von CMMN zu BPMN, aber nicht andersherum. Der Grund dafür ist, dass BPMN standardisiert wurde bevor es CMMN gab. Es ist zu erwarten, dass aber auch der Weg von BPMN zu CMMN standardisiert wird. Derzeit kann man die Zusammenarbeit in umgekehrter Richtung mit Workarounds oder Herstellererweiterungen realisieren.

Die Kombination der beiden Standards ist deswegen so wichtig, da man so wirklich das richtige Werkzeug für die aktuelle Aufgabe verwenden kann. Es gibt strukturierte und unstrukturierte Prozesse oder Prozessteile, bei denen man sich mit dem falschen Werkzeug schwer tut. In Camunda beispielsweise wurden aus dem Grund beide Standards in einer Engine kombiniert. Für die Zukunft ist es nicht unrealistisch, dass die Standards zusammenwachsen.

Fazit

CMMN ist eine gute Ergänzung zu BPMN für Prozesse, die ein hohes Maß an Flexibilität benötigen. Die Spezifikation hat die Praxiserfahrung vieler Hersteller und Berater vereint und ist brauchbar. Da der Standard noch jung ist, existieren noch wenig verfügbare Beispiele und nutzbare Werkzeuge. Das wird sich aber sicherlich in diesem Jahr ändern. Die Ähnlichkeit der Symbole zu denen aus BPMN lässt vermuten, dass sie schnell auf Akzeptanz stoßen werden. Für jemanden, der ein neues Projekt mit unstrukturierten Prozessteilen startet, kann ein Blick auf CMMN lohnen.

Bernd Rücker
ist Mitgründer der Firma camunda. Als erfahrener Softwareentwickler, Trainer und Berater hat er sowohl an Process-Engines direkt mitgearbeitet als auch zahlreiche BPM-Projekte begleitet.