| |
|
[Leymann 00]
F. Leymann, D.Roller: Production Workflow. Concepts and Techniques.
Prentice Hall 2000
Der Titel erklärt sich aus der Klassifizierung von Workflow entlang der
2 Dimensionen "business value" und "repetition" (wie oft wird ein Prozess
in der gleichen Art abgewickelt). Das ergibt 4 Arten von Workflow:
| collaborative workflow: hoher business value, niedrige
repetition. Beispiele: ein Schiff bauen, eine technische Dokumentation
für ein Software Produkt. |
| ad hoc workflow: niedriger business value, niedrige
repetition. Beispiel: eine Notiz verfassen, eine Notiz weiterleiten.
|
| administrative workflow: niedriger business value, hohe
repetition. Beispiel: Reisekostenabrechnung |
| production workflow: hoher business value, hohe repetition.
Das sind die Kerngeschäftsprozesse einer Firma, z.B. die Kreditvergabe
in einer Bank. Oft sind diese traditionell mit Transaktionen
implementiert. |
Das Buch stellt die Konzepte systematisch dar. Die Autoren wollen nicht
produktbezogen sein (auch wenn beide aus der Entwicklung von IBM's
Workflow-Produkt stammen). Manchmal stellen sie allerdings ein
Konzept vor, ohne zu erwähnen, daß es auch andere gibt. Z.B. das
Metamodell für die Ablaufsteuerung scheint mir sehr spezifisch zu sein
(Verzicht auf rückwärtsgerichtete Kontrollflüsse, stattdessen eine
DO-UNTIL-Loop, als Verknüpfungsoperatoren nur fork und join, keine
explizite Unterscheidung zwischen AND und OR-Konnektoren). Die Autoren
gehen auch teilweise mit Absicht über das hinaus, was heutige Systeme
leisten, beispielsweise bei der Vorstellung eines für die Anforderungen
eines Workflows wirklich geeigneten Transaktionskonzepts (s.u.).
In Kapitel 3 werden die grundlegenden Konzepte vorgestellt (sowohl zur
Buildtime als auch zur Runtime), in Kapitel 4 wird für das Metamodell eine
mathematische Fundierung gegeben, die auf der Graphentheorie basiert.
In Kapitel 6 wird der Zusammenhang zur Objektwelt hergestellt.
Workflow-Modellierung hat eine Menge gemeinsam mit Programmierung,
insofern kann man von zwei Ebenen der Programmierung sprechen, oder von
macro-scripting (Workflow) und micro-scripting (traditionelle
Programmierung). In der Objektwelt wird die micro-scripting-Ebene durch
Business-Objekte repräsentiert, die Daten und Funktionen beinhalten, aber
nicht die sie verbindenden Abläufe.
Im Kapitel 7 werden Transaktionskonzepte vorgestellt, die für Workflows
geeignet sind. Nach einer kurzen Wiederholung von einfachen
ACID-Transaktionen und dem two-phase commit protocol der X/Open werden
vorgestellt:
| geschachtelte Transaktionen, mit einer sehr klaren Definition |
| das Saga-Transaktionsmodell: dieses benutzt das Konzept der
kompensierenden Transaktionen ( zu jeder Transaktion T gibt es eine
Kompensations-Transaktion C, die die Wirkung von T rückgängig macht
(storniert)). Die Saga ist eine einfache Sequenz von T-Transaktionen,
die mittendrin durch die umgekehrte Reihenfolge von C-Transaktionen
rückgängig gemacht werden kann. |
| das ConTract-Modell: geeignet für langandauernde Transaktionen |
| Atomare Sphäre: das Konzept des all-or-nothing übertragen von einer
singulären Transaktion auf eine Gruppe von Transaktionen (atomare
Sphäre). Die einzelne Transaktion macht kein commit mehr, sondern das
Workflow-System startet eine Transaktion beim Betreten der atomic sphere
und ein commit bzw. abort beim Verlassen. Mit dieser Technik können
mehrere Aktivitäten in eine globale Transaktion eingebettet werden. |
| Kompensations-Sphäre: auch eine Gruppe von Aktivitäten, aber mit
einer anderen Bedeutung der Unit-Of-Work tritt ein Problem auf, müssen
die bisher durchgeführten Aktivitäten der Gruppe zusammen repariert /
kompensiert werden. Z.B. die Reservierung eines Fluges zusammen mit
der Reservierung eines Hotelzimmers und eines Mietwagens. |
In Kapitel 10 wird eine Systemarchitektur vorgestellt, die, wen
wundert's, auf einem Message Queuing System basiert.
|
|
|
Letzte Änderung: 14.8.2001 |
| |