Implementierung einer Laufzeit-Engine für ein BPM-Modellierungstool

Universität Ulm

MA Abschlussvortrag, Marco Zimmermann, Ort: online, Datum: 30.07.2024, Zeit: 11:30 Uhr

Prozessmanagementsysteme spielen im Rahmen des Business Process Management (BPM) eine wichtige Rolle und werden zur Modellierung und Ausführung von Geschäftsprozessen eingesetzt. Die meisten dieser Systeme sind aktivitätenorientiert, d. h. Prozesse werden in Form von Aktivitäten modelliert, deren Reihenfolge durch einen Kontrollfluss festgelegt wird. Die zur Ausführung eines Prozessmodells erforderlichen Eingabe daten stammen in der Regel aus Formularen, die von den Benutzern des Systems aus gefüllt werden. Die dafür notwendige Benutzeroberfläche muss bei jeder Änderung des zugrundeliegenden Prozessmodells angepasst bzw. neu implementiert werden, was ei ne aufwändige und fehleranfällige Aufgabe ist und somit einen wesentlichen Nachteil von aktivitätenorientierten Prozessmanagementsystemen darstellt. Darüber hinaus erlauben solche Systeme auch keine besonders flexible Prozessausführung, da der Kontrollfluss keine Abweichung in der Reihenfolge der auszuführenden Aktivitäten zulässt. Eine unterschiedliche Abfolge von Aktivitäten ist nur dann möglich, wenn dies im Prozessmodell explizit vorgesehen ist, also alternative Ausführungspfade modelliert wurden. Objektzentrierte Prozessmanagementsysteme können hier Abhilfe schaffen und die oben beschriebenen Probleme lösen. Bei den Prozessmodellen dieser Systeme stehen Datenobjekte im Mittelpunkt, die die relevanten Daten eines Prozesses in Form von Attribut-Wert-Paaren repräsentieren. Diese Datenobjekte werden, ähnlich wie bei aktivitätenorientierten Systemen, über Formulare mit konkreten Werten befüllt. Allerdings lassen sich diese Formula reautomatisch aus den modellierten Datenobjekten ableiten, sodass keine Anpassungen der Benutzeroberfläche mehr nötig sind. Außerdem erlauben diese Systeme auch eine flexiblere Prozessausführung, da ein Prozessmodell nicht vorgibt, wann ein bestimmter Wert in ein Formular eingegeben werden muss. Der Fortschritt eines Prozesses hängt stattdessen von den Zuständen der einzelnen Datenobjekte ab, die anhand der Attribute, für die bereits ein Wert vorliegt, bestimmt werden. Ein konkretes objektzentriertes System ist PHILharmonicFlows, mit dem Prozesse sowohl modelliert als auch ausgeführt werden können. Da dieses System jedoch hinsichtlich der Benutzerfreundlichkeit nicht optimal ist, ist eine Neuimplementierung erforderlich.