2010-04: Management dynamischer Geschäftsprozesse auf Basis statischer Prozessmanagementsysteme
The following technical report is available from http://aib.informatik.rwth-aachen.de: Management dynamischer Geschäftsprozesse auf Basis statischer Prozessmanagementsysteme René Wörzberger AIB 2010-04 Prozessmanagementsysteme dienen der Unterstützung von Geschäftsprozessen. Sie versorgen dabei Prozessbeteiligte, wie beispielsweise Sachbearbeiter oder Prüfsysteme in einer Versicherung, zur richtigen Zeit mit relevanten Daten. Komplexe Geschäftsprozesse sind nicht vollständig vor ihrer Durchführung planbar. Unvorhersehbare Ereignisse erfordern, dass von der in einem Prozessmodell festgehaltenen Planung während der Prozessdurchführung abgewichen wird. Diese Eigenschaft von Geschäfts- und Entwicklungsprozessen wird als Dynamik bezeichnet. Gängige Prozessmanagementsysteme unterstützen die Dynamik in Geschäftsprozessen nur unzureichend. Sie setzen voraus, dass ein Geschäftsprozess vorab vollständig modelliert wird und legen somit vor der Durchführung mögliche Abläufe fest. Abweichungen vom Prozessmodell sind in ihnen nicht vorgesehen. Folglich ergeben sich hochkomplexe, schlecht wartbare Prozessmodelle, die jedoch dem Anspruch ebenfalls nicht genügen, jeden sinnvollen Prozessablauf abzudecken. Ergibt sich aus fachlichen Notwendigkeiten bei der Prozessdurchführung ein Ablauf, den das jeweilige Prozessmodell nicht vorsieht, müssen die Prozessbeteiligten den Prozess entkoppelt von Prozessmanagementsystem weiterführen. Das Prozessmanagementsystem kann dann jedoch nicht mehr zur Unterstützung des Prozesses beitragen. In dieser Arbeit wird ein Prozessmanagementsystem beschrieben, das auch dynamische Prozesse unterstützt. Dynamische Änderungen können von Prozessbeteiligten über strukturelle Änderungen an Modellen bereits laufender Prozesse durchgeführt werden. Im Gegensatz zu verwandten Arbeiten wurde das Prozessmanagementsystem nicht von Grund auf neuentwickelt. Stattdessen erweitert es das kommerzielle System IBM WebSphere Process Server, das von der Generali Deutschland Informatik Services GmbH eingesetzt wird -- dem kooperierenden Industriepartner dieser Arbeit. Hierdurch kann die vorhandene Funktionalität des Process Servers weiterverwendet werden und muss nicht reimplementiert werden. Es wurden folgende Ergebnisse im Einzelnen erzielt: Die unvollständige Modellwelt des Process Servers wurde vervollständigt: Prozessdefinitionsmodelle in der Standardsprache WS-BPEL werden ergänzt um speziellere Prozessinstanzmodelle, die zusätzliche Informationen über den aktuellen Ausführungszustand eines konkreten Prozesses und dessen bisherige Prozesshistorie beinhalten. Abstrakter als Prozessdefinitionsmodelle sind so genannte Prozesswissensmodelle, in denen grobe Festlegungen über Abläufe in Prozessen getroffen werden. Dazu gehören Festlegungen bzgl. Reihenfolgen bestimmter Aktivitäten, deren gegenseitiger Ausschluss sowie Ausführungshäufigkeiten bestimmter Aktivitäten in bestimmten Prozessen. Sowohl die Syntax als auch die Semantik dieser drei Prozessmodellarten wurde formal mithilfe von Metamodellen bzw. Graphersetzungssystemen, Transitionssystemen und temporalen Logikformeln beschrieben. Ein modellgetrieben entwickelter Prozessmodelleditor dient zur Darstellung und Editierung von Modellen aller drei Arten. Die Semantikdefinition der Prozessdefinitions- und -instanzmodelle ist Ausgangspunkt für die Realisierung einer den WebSphere Process Server erweiternden, so genannten Dynamik-Schicht. Diese simuliert dynamische Änderungen, die direkt im Process Server nicht vorgenommen werden können. Die Simulation ist opak für Prozessbeteiligte, die dynamische Änderungen als strukturelle Änderungen in Prozessinstanzmodellen innerhalb des Prozessmodelleditors erfahren. Dynamische Änderungen unterliegen technischen und fachlichen Rahmenbedingungen. Ein syntaxbasiertes und im Prozessmodelleditor implementiertes Prüfwerkzeug stellt sicher, dass Modelländerungen und insbesondere dynamische Änderungen an Prozessinstanzmodellen, diese Rahmenbedingungen nicht verletzen. Im Vergleich zu verwandten Arbeiten, die technische und fachliche Regeln getrennt behandeln, wurde in dieser Arbeit ein einheitlicher Ansatz gewählt, der beide Regelarten berücksichtigt und auf der Object Constraint Language (OCL) basiert. Das heißt, dass alle Modellarten auf innere (technische) Korrektheit geprüft werden können, aber auch Prozessinstanzmodelle auf Komplianz zu expliziten, fachlichen Rahmenbedingungen überprüft werden können, die in Prozesswissensmodellen festgehalten sind. Prüfungen gegen in Prozesswissensmodellen explizit modelliertes Prozesswissen wurden durch Prüfungen gegen implizites Prozesswissen ergänzt. Unter implizitem Prozesswissen wird in diesem Zusammenhang Wissen über Ausführungshäufigkeiten und -reihenfolgen von Aktivitäten verstanden, das sich in Prozessdefinitions- und -instanzmodellen indirekt wiederfindet. In unterschiedlichen Prozessinstanz- und -definitionsmodellen inkonsistent modellierte Abläufe werden durch ein weiteres Prüfwerkzeug aufgedeckt. Dieses Prüfwerkzeug basiert auf einer Graphgrammatik, die zwei Prozessinstanzmodelle -- soweit möglich -- simultan ausführt und dabei erreichbare Ausführungszustände in einem Transitionssystem festhält. Dieses Transitionssystem ist Ausgangspunkt für einen Modellvergleich, der Prozessbeteiligten detaillierte Informationen über inkonsistente Abläufe in unterschiedlichen Prozessinstanzmodellen liefert.
participants (1)
-
Carsten Fuhs