Die Zukunft von BPMN
Tags: bpm
Kategorie Promotion | 2 Kommentare »
Die Business Process Modeling Notation (BPMN) ist in den letzten Jahren ziemlich beliebt geworden. Es gibt heute für BPMN, übrigens standardisiert bei OMG, eine Vielzahl von Werkzeugen und Trainings. Und obwohl die BPMN ziemlich gut in der Industrie angenommen wird, hat sie immer noch ein paar Ecken und Kanten. So gibt es zum Beispiel kein standardisiertes Austauschformat für BPMN Diagramme. Deshalb wird die BPMN natürlich weiterentwickelt. Diese Weiterentwicklung wurde schon vor einem Jahr begonnen und ich will heute mal kurz berichten, wie der aktuelle Stand von BPMN 2 ist. Dieser Beitrag erschien übrigens zunächst auf dem ARIS BPM Blog.
Obwohl man mit BPMN komplexe Geschäftsprozesse modellieren kann, ist die Notation trotzdem erstaunlich einfach zu lernen. Diese Einfachheit ist mit Sicherheit einer der Erfolgsfaktoren von BPMN, wie auch Vishal von Oracle meint. Diese Einfachheit sollte sich mit BPMN 2 natürlich ändern, sondern, wenn möglich, natürlich noch verstärkt werden. Allerdings gibt es einige Probleme, die mit der neuen Version angegangen werden müssen. Eines der wohl größten Probleme ist das fehlende Austauschformat für die grafischen Modelle. Dies erinnert ein wenig an die Zeiten von UML 1.x. Damals gab es auch kein Austauschformat für die grafischen Modelle. Bei BPMN ist es allerdings noch etwas schlimmer, da es auch kein Austauschformat für die Modellinhalte gibt. Da gab es bei UML 1.x zumindest schon mal XMI.
Ein weiteres Problem besteht in der Ausführbarkeit von BPMN Konstrukten. Es ist nicht klar definiert, wie die Konstrukte und deren Kombination ausgeführt werden müssen. Man spricht hier von fehlender „Execution Semantics“. Natürlich haben die meisten Modellierer ein Verständnis, was zum Beispiel bei einer Aktivität passiert. Bei komplexeren Konstrukten wie Ausnahmebehandlungen wird dies aber schon schwieriger. Eine klare Definition ist wichtig, damit alle Modellierer das gleiche Verständnis haben. Hier sollte BPMN 2 einspringen und die Ausführungsregeln für BPMN klar definieren. In der OMG werden dafür momentan 2 mögliche Ansätze diskutiert (ich weis das, weil ich IDS bei OMG und OASIS vertrete):
- BPMN hat bereits eine implizite Ausführungssemantik. Diese sollte formalisiert werden.
- Man benutzt ein anderes Metamodell wie BPDM und mappt die BPMN Konstrukte auf dieses Metamodell.
Ansatz 1 ist natürlich sehr einfach, da man einfach nur das explizit macht, was heute bereits implizit in der Spezifikation steht. Für den BPMN Nutzer ändert sich da nicht viel. Ansatz 2 ist dagegen wesentlich komplizierter, da eine weitere Sprache mit neuen Konstrukten der Spezifikation hinzugefügt wird. Dadurch macht man BPMN allgemein komplizierter zu lernen und gefährdet damit vielleicht einen der wichtigsten Erfolgsfaktoren von BPMN – deren Einfachheit.
Momentan ist noch nicht klar, welchen Weg die OMG in Bezug auf BPMN 2 gehen wird. Falls sich aber was tut, werde ich wieder darüber berichten. In der Zwischenzeit kann man einen Blick auf das Whitepaper von Torben werfen. In diesem Whitepaper hat er ziemlich detailiert herausgearbeitet, was die Unterschiede zwischen den BPMN Versionen 1.0 und 1.1 sind.
Da ist ja auch in den Blogs gerade einiges los. Die einen wollen BPMN in Blöcke transformieren weil sie denken BPEL wäre eine block-basierte Sprache, andere wollen BPMN direkt ausführen… Mir scheint da ist Bedarf an Aufklärung :)
Wo wir aber schon beim Thema sind, vielleicht interessiert dich ja http://tinyurl.com/47mnz6.
Gruß,
Tammo
Danke für den Link, ich schau da mal rein, ob da was neues drin steht gegenüber den Mappings von Prof. van der Aalst.