Inhalt 3.1 Einführung und Überblick 3.2 Erstellung, Installation und Verwaltung von Prozessvorlagen 3.3 Unterstützung von Anwendungsfunktionen 3.4 Organisationsmodellierung und Bearbeiterzuordnung 3.5 Erzeugung, Ausführung und Überwachung von Prozessinstanzen 3.6 Fehler- und Ausnahmebehandlung, Flexibilität zur Laufzeit 3.7 Prozessschema-Evolution 3.8 Eingebettetes Prozess-Management 3.9 Ergänzende Entwurfs- und Implementierungsaspekte 3.10 Zusammenfassung und Ausblick 3.11 Ergänzende Literatur P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 1
3.7 Prozessschema-Evolution Problemstellung Laufende Prozessinstanzen eines Prozessschemas S Schema S soll auf S geändert werden, z.b. weil das Unternehmen umstrukturiert hat neue gesetzliche Vorschriften dies erfordern der bisherige Prozessablauf zu umständlich ist der bisherige Prozess nicht alle relevanten Fälle abdeckt der bisherige Prozesse Fehler aufweist Die bereits gestarteten Prozessinstanzen können nicht einfach auf Basis von Schema S zu Ende geführt werden, weil sie noch zu lange laufen ( Koexistenzphase wäre zu lang) das Problem zu gravierend ist dem gesetzliche Vorschriften entgegen stehen Ziel: Systemseitige Migration von Prozessinstanzen von Schema S auf S P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 2
Beispiel 1: Migration unverzerrter Instanzen Schema S: Schema S : instruct give drug allergy test instruct give drug transport critical transport critical admit call prepare examine write report admit call prepare examine write report Instanz 1 auf S: verträglich Instanz 1 auf S : Instanz 2 auf S: nicht verträglich verbleibt auf Schema S P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 3
Beispiel 2: Migration verzerrter Instanzen Schema S: Schema S': instruct instruct xray call call ET=sync admit prepare perform examination admit prepare perform examination Instanz 1 auf S (ad hoc modifiziert): verträglich Instanz 2 auf S (ad hoc modifiziert): nicht verträglich ET=sync allergy test P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Deadlock! 4
Beispiel 3: Migration verzerrter Instanzen mit überlappenden Änderungen Schema S: instruct Schema S': instruct allergy test call call admit prepare perform examination admit prepare xray perform examination Instanz 1 auf S (ad hoc modifiziert): allergy test verträglich äquivalent xray Instanz 2 auf S (ad hoc modifiziert): verträglich Enthaltensein-äquivalent xray P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 5
3.7 Prozessschema-Evolution Technologische Herausforderungen (unter anderem) Entwicklung von Korrektheitskriterien zur Entscheidung, unter welchen Voraussetzungen Prozessinstanzen migrierbar sind Analogie: Serialisierbarkeitsprinzip der Concurrency Control bei DBMS Entwicklung von effizienten Algorithmen zur Überprüfung, ob Korrektheitskriterium erfüllt ist zur Durchführung der Instanz-Migration P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 6
3.7 Prozessschema-Evolution Korrektheitskriterien (vereinfacht) am Beispiel von ADEPT Strukturelle Kriterien 1. Ad-hoc-Änderungen auf dem alten Instanzschema werden auch auf dem neuen Instanzschema ausgeführt, soweit dort nicht bereits bei der Erstellung der neuen Version vollzogen Im alten Instanzschema gelöschte Prozessschritte werden auch im neuen Instanzschema gelöscht, sofern dort noch vorhanden eingefügte Prozessschritte werden auch im neuen Instanzschema eingefügt, sofern dort noch nicht vorhanden 2. Die Zusammenführung der beiden Instanz-Schemata (im obigen Sinne) darf die allgemeinen strukturellen Konsistenzbedingungen nicht verletzen Instanzzustandsbezogenes Kriterium Die durch die Prozessinstanz erzeugte Ausführungsspur (engl. trace) muss auch durch das neue Instanzschema erzeugbar sein ( Trace Equivalence & Compliance [CCPP98]) ( Beispiel) P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 7
3.7 Prozessschema-Evolution Beispiel: Trace Equivalence Schema S: C Schema S : make invoice C invoice send invoice A B E F A B E F D D Trace der Prozessinstanz auf neuem Schema reproduzierbar? Trace von Instanz I auf S (vereinfacht): <A>, <B>, <D> Trace auch auf neuem Schema erzeugbar Trace Equivalence ist gegeben Instanz I ist migrierbar Etwas komplizierter: Berücksichtigung von Datenflüssen und Schleifen (für Details siehe [RRD04, Rind04]) Weitere Herausforderungen: - Wie führt man den Compliance-Test effizient durch? - Wie migriert man Prozess-Instanzen effizient? P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 8
3.7 Prozessschema-Evolution Effiziente Migration von verträglichen Prozess-Instanzen Gesamtbild laufende Instanzen Migration gewünscht user constraints viele Fälle zu unterscheiden Migration nicht gewünscht unveränderte Instanzen individuell veränderte Instanzen migrationsverträgliche Instanzen migrationsunverträglich e Instanzen P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Instanzen ohne überlappenden Veränderungsbereich migrationsverträgliche Instanzen migrationsunverträglich e Instanzen Instanzen mit überlappendem Veränderungsbereich migrationsverträgliche Instanzen migrationsunverträglich e Instanzen 9
3.7 Prozessschema-Evolution Beispiel: Migration von verträglichen Instanzen... mit einer Lösung aus der Petrinetz-Welt [ElKe00] I auf S: A B C I auf S*: A B C ordne A und B parallel an Entsprich t I auf S : A A Abbildung? B C B C P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Migrations-Schema S* Vom Prozessmodellierer auszutüfteln 10
3.7 Prozessschema-Evolution Migration einer verträglichen Instanz am Beispiel ADEPT make invoice invoice send invoice 1. Durchführung der strukturellen Anpassung 2. Systemseitige Neubewertung von Kanten und Knoten im änderungskritischen Bereich fertig! Für Details siehe [Rind04] P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 11
3.7 Prozessschema-Evolution Die Anwendersicht am Beispiel von ADEPT P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 12
3.7 Prozessschema-Evolution ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Ein (Geschäfts-) Prozess muss geändert werden Process 4 Process 3 Process 2 Process 1 Process Execution Engine Process 6 Process 5 Process 11 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 ADEPT Process Composer Create Process Template Modify Process Template Check Process Template Repository Anwendungen / Application Server... Process Templates Application Functions Users P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 13
3.7 Prozessschema-Evolution ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Ein (Geschäfts-) Prozess muss geändert werden Process 4 Process 3 Process 2 Process 1 Process Execution Engine Process 6 Process 5 Process 11 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 ADEPT Process Composer Create Process Template Modify Process Template Check Process Template Repository Anwendungen / Application Server... Process Templates Application Functions Users P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 14
3.7 Prozessschema-Evolution Users ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Process Execution Engine Process 11 Process 4 Process 3 Process 2 Process 1 Process 6 Process 5 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 Anwendungen / Application Server... Ein (Geschäfts-) Prozess muss geändert werden ADEPT Process Composer Create Process Template Modify Process Template Check Process Template Repository Process Templates Application Functions P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 15
3.7 Prozessschema-Evolution Users ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Process Execution Engine Process 11 Process 4 Process 3 Process 2 Process 1 Process 6 Process 5 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 Anwendungen / Application Server... Prozess-Verantwortlicher nimmt die Änderungen vor ADEPT2 Process Composer Create Process Template Modify Process Template Check Process Template Repository Process Templates Application Functions P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 16
3.7 Prozessschema-Evolution Users ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Process Execution Engine Process 11 Process 4 Process 3 Process 2 Process 1 Process 6 Process 5 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 Anwendungen / Application Server... und lässt das System die laufenden Instanzen prüfen ADEPT2 Process Composer Create Process Template Modify Process Template Check Process Template Repository Process Templates Application Functions P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 17
3.7 Prozessschema-Evolution Users ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Process Execution Engine Process 11 Process 4 Process 3 Process 2 Process 1 Process 6 Process 5 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 Anwendungen / Application Server... und lässt das System die laufenden Instanzen prüfen ADEPT2 Process Composer Create Process Template Modify Process Template Check Process Template Repository Antwort: 4.238 Instanzen können systemseitig von Schema S alt nach S neu migriert werden 1.117 Instanzen sind zu weit im Ablauf fortgeschritten und verbleiben auf S alt 112 Instanzen können wegen Änderungskonflikt nicht migriert werden; sie verbleiben auf S alt Für Details siehe Report. Process Templates Application Functions P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 18
3.7 Prozessschema-Evolution Users ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Process Execution Engine Process 11 Process 4 Process 3 Process 2 Process 1 Process 6 Process 5 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 Anwendungen / Application Server... Prozess-Verantwortlicher beauftragt das System die Migrationen durchzuführen ADEPT2 Process Composer Create Process Template Modify Process Template Check Process Template Repository Process Templates Application Functions P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 19
3.7 Prozessschema-Evolution Users ADEPT Process Management System Std Client API Web Clnt API Modeling API Dyn. Change API Admin. API Role Mgmt Authorization Time Mgmt Msg Queuing Recovery Audit Trail... Process Execution Engine Process 11 Process 4 Process 3 Process 2 Process 1 Process 6 Process 5 Process 10 Process 9 Process 8 Process 7 Process 14 Process 13 Process 12 Anwendungen / Application Server... Prozess-Verantwortlicher beauftragt das System die Migrationen durchzuführen ADEPT2 Process Composer Create Process Template Modify Process Template Check Process Template Repository Antwort: 4.238 Instanzen wurden von Schema S alt nach S neu migriert 1.229 Instanzen wurden nicht migriert; sie verbleiben auf Schema S alt Für Details siehe Migrationsprotokoll. Process Templates Application Functions P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen Process Designer / Process Administrator 20
Clinical Example Unbiased Instances Schema S: Schema S : prepare give drug prepare give drug transport critical transport critical admit call instruct examine write report admit call allergy test instruct examine write report Instance 1 on S: compliant Instance 1 on S : Instance 2 on S: not compliant P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen remains running on S 21
Clinical Example Biased Instances Schema S: Schema S': instruct instruct xray call call ET=sync admit prepare perform examination admit prepare perform examination Instance 1 on S (ad hoc modified): compliant Instance 2 on S (ad hoc modified): not compliant ET=sync P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten allergy von test Prozess-Management-Systemen Deadlock! 22
Clinical Example Biased Instances with Overlapping Changes Schema S: Schema S': instruct instruct allergy test call call admit prepare perform examination admit prepare xray perform examination Instance 1 on S (ad hoc modified): allergy test compliant equivalent xray Instance 2 on S (ad hoc modified): compliant subsumption equivalent xray P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 23
Inhalt 3.1 Einführung und Überblick 3.2 Erstellung, Installation und Verwaltung von Prozessvorlagen 3.3 Unterstützung von Anwendungsfunktionen 3.4 Organisationsmodellierung und Bearbeiterzuordnung 3.5 Erzeugung, Ausführung und Überwachung von Prozessinstanzen 3.6 Fehler- und Ausnahmebehandlung, Flexibilität zur Laufzeit 3.7 Prozessschema-Evolution 3.8 Eingebettetes Prozess-Management 3.9 Ergänzende Entwurfs- und Implementierungsaspekte 3.10 Zusammenfassung und Ausblick 3.11 Ergänzende Literatur P. Dadam, Business Process Management, 2010/11 Kapitel 3: Funktionalitäten von Prozess-Management-Systemen 24
Ein Beispiel
Kekseautomat Platz Transition
Kekseautomat als Petrinetz fig. 1.1
Nach Eintritt von t fig. 1.2
Ein Blick ins Innere
fig. 1.3
Nach Eintritt von a fig. 1.4
Nach Eintritt von b fig. 1.5
Schnittstelle Kalte Tra sitio e fig. 1.6
Ablauf Erreichbarer Zustand mit drei unabhängig voneinander eintretenden Transitionen fig. 1.7
Alternativen Mit Münzrückgabe fig. 1.8
Alternativen Münze zurück und a beide möglich. Aber nur eine von den beiden Transitionen kann eintreten. Die beiden Transitionen sind in Konflikt. fig. 1.9
Speicher leer! Wir müssen in dieser Situation die eingeworfene Münze zurück geben. fig. 1.11
Schaltmodus fig. 1.12
Erreichbarer Zustand mit dem Schaltmodus x = 4 fig. 1.13
Plätze und Marken modellieren: Komponenten eines realen Automaten: Einwurfschlitz, Kasse, Speicher, Entnahmefach mit Münzen und Schachteln als Marken Technische Abstraktionen: den Zähler mit einer Zahl als Marke u d Sig al it ei er schwarze Marke, die ein aktuell vorliegendes Signal darstellt Logische Abstraktionen: Entwurf möglich und kein Sig al it ei er schwarze Marke, die de Wahrheitswert wahr bezeichnet
Transitionen modellieren: Aktionen des Automaten in seinem Inneren, die den Transport von Objekten und Signale modellieren: a (Münze akzeptieren) und b (Schachtel abgeben) Aktionen des Automaten an seiner Schnittstelle: Münze zurück Aktionen des Kunden, die der Automat ermöglicht und die den Automaten beeinflussen: Münze einwerfen, Schachtel entnehmen
Ende
Grundlegende Konzepte
Beispiel fig. 2.1
Plätze, Transitionen, Kanten fig. 2.2
Netzstruktur Kante (p,t) Kante (t,p)
Vorbereich und Nachbereich
Markierungen und Beschriftung (anschaulich)
Datenstruktur: Multimengen
Datenstruktur: Multimengen
Markierung (formale Definition)
Aktivierung
fig. 2.3
fig. 2.4
Markierungsgraph (Erreichbarkeitsgraph) fig. 2.1
Markierungsgraph (Erreichbarkeitsgraph) fig. 2.5