Unter den Workflow-Experten scheint es viele musikalische Menschen zu geben. Wie anders wäre die Verwendung von Begriffen wie „Orchestrierung“ und „Choreographie“ zu erklären, mit denen das koordinierte Zusammenspiel verschiedener Services oder der abgestimmte Nachrichtenaustausch zwischen ansonsten unabhängigen Prozessen bezeichnet werden. Beide Begriffe spielen auch im Buch „Business Process Management“ (Anzeige) von Mathias Weske eine wichtige Rolle. Weske ist Professor für Business Process Technology am Hasso Plattner Institut, das an der Universität Potsdam angesiedelt ist.
Daher konzentriert sich sein in Englisch verfasstes Buch auch auf den Technologie-Aspekt des Geschäftsprozessmanagements, insbesondere Business Process Management-Systeme. Hierbei betont er die Notwendigkeit eines gemeinsamen Verständnisses zwischen Fach- und IT-Experten. „Wenn Fach-Experten das Buch zu technisch, Software-Experten es zu wenig technisch und formal ausgerichtete Experten es zu unpräzise finden, aber alle ein besseres Verständnis der Grundlagen unserer Disziplin haben, dann hat das Buch sein Ziel erreicht“ (aus dem Vorwort, frei übersetzt vom Autor dieses Blogs).
7 Ebenen
Im ersten Teil des Buches werden die notwendigen Begriffe, wie z. B. Orchestrierung und Choreographie, sowie der Lebenszyklus von Prozessen eingeführt und erläutert. Es wird dargestellt, welche Rolle Business Process-Technologien im Rahmen eines unternehmensweiten Geschäftsprozessmanagements spielen. Ausgehend von der traditionellen Anwendungsentwicklung und der Punkt-zu-Punkt-Integration einzelner Anwendungen wird die Entwicklung der Architektur von Unternehmensanwendungen bis hin zu Service-orientierten Architekturen und Business Process Management-Systemen aufgezeigt. Eine aktuelle Architektur kann grob in die folgenden Ebenen unterteilt werden (S. 66):
- Business-to-Business Processes (unternehmensübergreifend)
- Human Interaction Workflows (Abläufe mit Benutzerinteraktion)
- System Workflows / Composite Applications (aus verschiedenen Services zusammengesetzte Anwendungen und Abläufe)
- Service Layer (Bereitstellung einzelner Services)
- Enterprise Application Integration (Middleware zur Integration verschiedenster Anwendungen und Technlogien)
- Enterprise Applications (Anwendungsfunktionalität)
- Data (Datenbanken)
Der zweite Teil widmet sich der Prozessmodellierung. Hierfür werden zunächst die notwendigen Konzepte erarbeitet, wie z. B. Prozesse und Instanzen, Metamodelle, Zustandsautomaten für den Lebenszyklus von Prozessinstanzen. Auch die im Zusammenhang mit der Modellierung ausführbarer Prozesse oft vernachlässigten Themen Daten- und Organisationsmodellierung werden zumindest eingeführt.
Für die Modellierung von Orchestrierungen, also von zentral gesteuerten Kontrollflüssen, werden die verschiedenen relevanten Workflow Patterns ausführlich erläutert – angefangen von einfachen Sequenzen und Verzweigungen bis hin etwa zur Aufsplittung einer Prozessinstanz in mehrere Teil-Instanzen, wobei die Zahl dieser Teil-Instanzen erst während des Ablaufs bestimmt werden kann.
Wenn das Prozess-Orchester spielt – Let’s Dance
Als Notationen für die Prozessmodellierung werden Petri-Netze, ereignisgesteuerte Prozessketten (EPK), Workflow Nets (eine Erweiterung von Petri-Netzen zur besseren Abbildung von Workflow-Aspekten), YAWL (Yet Another Workflow Language), eine graphen-basierte Notation im Kontext eines speziellen Workflow-Systems und die Business Process Modeling Notation (BPMN) beschrieben. Zwar haben nicht alle diese Notationen eine hohe praktische Bedeutung, doch werden hieran die verschiedenen Aspekte und Modellierungsmöglichkeiten aufgezeigt. Dieses Kapitel geht z. T. recht weit in die Tiefe, u. a. sind auch eine Reihe von formalen Definitionen enthalten.
Das unternehmensübergreifende Zusammenspiel wird mit Hilfe von Choreographien beschrieben. Hierzu müssen die auszutauschenden Nachrichten, ihre Reihenfolge und Regeln abgestimmt und beschrieben werden. Weske erläutert, wie Choreographien entwickelt und implementiert werden. Auch hierfür werden eine Reihe von Patterns, also häufig vorkommenden Mustern, vorgestellt. Die Beschreibung von Choreographien ist u. a. mit Hilfe von BPMN möglich. Einen anderen Ansatz, bei dem nicht die beteiligten Partner sondern die Interaktionen selbst als Modellierungsobjekte im Zentrum stehen, verfolgt eine Choreographie-Sprache mit dem schönen Namen „Let’s Dance“.
Kriterien für die korrekte Ausführbarkeit
Um sicherzustellen, dass ein Prozessmodell auch immer korrekt ausführbar ist, werden verschiedene „Soundness“-Kriterien diskutiert. Mit Hilfe dieser Kriterien lassen sich Prozessmodelle formal untersuchen. Hierdurch kann man beispielsweise verhindern, dass Prozesse bei der Ausführung stecken bleiben oder Endlos-Schleifen durchlaufen werden. Wer diese Kriterien im Detail verstehen will, darf ein wenig Theorie nicht scheuen.
Es folgt eine Kapitel über Architekturen für Business Process Management-Systeme, u. a. die Komposition von Web Services mit BPEL, die flexible Anpassung von Prozessen zur Laufzeit und der Einsatz semantischer Technologien. Schließlich wird ein Vorgehensmodell zur Einführung und Implementierung von BPMS beschrieben.
Auf der Website zum Buch http://www.bpm-book.com/ finden sich u. a. Links zu zitierten Papers, Aufgaben und Präsentationsfolien zu den einzelnen Kapiteln.
Das Buch bietet einen sehr umfassenden und fundierten Überblick über die Konzepte, die Business Processs Management-Systemen zugrunde liegen, insbesondere die Modellierung von Kontrollflüssen und Choreographien. Für Informatiker, die sich ernsthaft mit der Thematik auseinandersetzen wollen, sollte das Buch zur Pflichtlektüre gehören. Die ebenfalls angesprochenen Fachexperten ohne tieferen IT-Hintergrund werden sich hingegen mit einigen Theorie-lastigen Ausführungen schwer tun, für sie empfiehlt sich eine durchaus mögliche selektive Lektüre.
Weske, Mathias:
Business Process Management. Concepts, Languages, Architectures.
Springer 2007.
Das Buch bei amazon (Anzeige)
Was mich persönlich an dem Buch stört ist, dass es sich vollmundig als BPM bezeichnet, aber im Endeffekt nur auf Prozessautomatisierung abzielt. Alle anderen Aspekte von BPM wie Simulation, Kostenrechnung, Risikomanagement, etc. werden überhaupt nicht angesprochen. Dadurch verfestigt sich beim unerfahrenen Leser der Eindruck, dass BPM gleichbedeutend zu Automatisierung von Prozessen ist.