DE102012210482A1 - Verfahren und System zum Migrieren von Geschäftsprozessinstanzen - Google Patents

Verfahren und System zum Migrieren von Geschäftsprozessinstanzen Download PDF

Info

Publication number
DE102012210482A1
DE102012210482A1 DE102012210482A DE102012210482A DE102012210482A1 DE 102012210482 A1 DE102012210482 A1 DE 102012210482A1 DE 102012210482 A DE102012210482 A DE 102012210482A DE 102012210482 A DE102012210482 A DE 102012210482A DE 102012210482 A1 DE102012210482 A1 DE 102012210482A1
Authority
DE
Germany
Prior art keywords
business process
compensation
instance
control flow
static
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102012210482A
Other languages
English (en)
Inventor
Dennis Hohmann
Michael Illiger
Simon Moser
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE102012210482A1 publication Critical patent/DE102012210482A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration

Abstract

Offenbart wird ein verbessertes Verfahren zum Migrieren von Geschäftsprozessinstanzen, die von Geschäftsprozessmodellen (2, 3) mit Kompensationslogik abgeleitet wurden. Das Verfahren umfasst das Modellieren einer neuen Geschäftsprozessversion; das Ermitteln, ob eine entsprechende Geschäftsprozessinstanz, die von dem Geschäftsprozessmodell (2, 3) abgeleitet wurde, für eine Migration infrage kommt, mithilfe folgender Schritte: statische Analyse eines zugrunde liegenden Geschäftsprozessmodells (2, 3), um einen statischen Prozess-Kontrollfluss zu erzeugen; Ableiten von potenziellen Kompensations-Kontrollflüssen; Erkennen von Änderungen zwischen der neuen Geschäftsprozessversion und einer früheren Geschäftsprozessversion; Durchgehen der erkannten Änderungen, um Änderungen im Zusammenhang mit Kompensationslogik und Änderungen im Zusammenhang mit dem normalen Kontrollfluss des Geschäftsprozessmodells (2, 3) zu trennen und in Änderungsgruppen zu gruppieren und Migrieren der Geschäftsprozessinstanz auf der Grundlage von Migrationsbedingungen, die auf der Grundlage der Änderungsgruppen ermittelt werden.

Description

  • HINTERGRUND DER ERFINDUNG Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft allgemein das Gebiet der Geschäftsprozessmanagementsysteme (Business Process Management Systems, BPMS) und/oder Arbeitsablaufmanagementsysteme und insbesondere ein Verfahren zum Migrieren von Geschäftsprozessinstanzen und ein System zum Migrieren von Geschäftsprozessinstanzen. Die vorliegende Erfindung betrifft ganz speziell ein Datenverarbeitungsprogramm und ein Computerprogrammprodukt zum Migrieren von Geschäftsprozessinstanzen.
  • Beschreibung der verwandten Technik
  • Bei einem Geschäftsprozessmanagementsystem (GPMS) kann eine Geschäftsprozessvorlage (business process template) als Diagram angesehen werden, das die Reihenfolge der an einem Geschäftsprozess beteiligten Schritte und/oder Aktivitäten zusammen mit einer Beschreibung anderer Merkmale darstellt. Bei jedem ausgelösten Geschäftsfall wird auf der Grundlage des zugrunde liegenden Geschäftsprozessmodells eine neue Instanz des Geschäftsprozesses erzeugt. Da Geschäftsprozesse häufig über einen langen Zeitraum ausgeführt werden, ist offensichtlich, dass Änderungen an dem Prozessmodell erforderlich werden könnten, die zu einem neuen Modell führen. Dies könnte sich auf Instanzen auswirken, die noch ausgeführt werden (are still in-flight) und auf der Grundlage des ursprünglichen zugeordneten Prozessmodells erzeugt wurden. Die Gründe für derartige Änderungen sind unterschiedlich. Ein Unternehmen kann beispielsweise durch neue geschäftliche Möglichkeiten, sich ändernde Marktbedingungen oder neue gesetzliche Vorschriften zu einer Anpassung des Geschäftsmodells gezwungen sein.
  • Das Problem des Migrierens von Prozessinstanzen, die auf der Grundlage der ursprünglichen Version des Prozessmodells gestartet wurden, als das Prozessmodell entstand, ist vorhanden und wurde im Stand der Technik (zum Teil) gelöst.
  • In der heutigen Welt können Geschäftsprozesse jedoch nur migriert werden, wenn der Geschäftsprozess keine Kompensationslogik (compensation logic) enthält. Kompensation kann als eine „rückgängig machende Aktion” angesehen werden. Wenn z. B. eine Aktivität des Prozesses eine Kreditkarte belastet hat und anschließend das Bestellte nicht liefert, sollte die Kompensation für die Rückerstattung des Geldes sorgen, d. h. die Belastung der Kreditkarte rückgängig machen. Genauer ausgedrückt, ist Kompensation eine Art von Logik, die ausgeführt wird, wenn bei einem Prozess ein Zustand erreicht wird, der als unerwünscht angesehen wird. Die Kompensationslogik wird auch nach dem Auftreten eines unvorhergesehenen Fehlers ausgeführt. Derartige Fehler werden normalerweise durch Fehlfunktionen der zugrunde liegenden Infrastruktur verursacht. In solchen Fallen ist es notwendig, einige explizite Kompensationsschritte in dem Geschäftsprozess auszuführen, um sicherzustellen, dass ein konsistenter. Zustand erreicht wird. Das Ziel besteht nicht immer darin, zu einem früheren Zustand zurückzukehren, sondern einen ausgeglichenen und konsistenten Zustand des Prozesses beizubehalten. Kompensationslogik als solche ist üblicherweise nicht als Teil des regulären Kontrollflusses (control flow) eines Geschäftsprozesses ausgebildet, sondern eher als „Kompensationsfluss” (compensation flow), der nur unter bestimmten (Fehler-) Bedingungen verwendet wird.
  • Offensichtlich wäre es von großem Nutzen, die Migration von Prozessinstanzen auch bei derartigen Prozessen zu unterstützen. Um aufzuzeigen, warum dies heute nicht möglich ist, soll zuerst gezeigt werden, wie heutzutage entschieden wird, ob eine Instanz migriert werden kann oder nicht.
  • In 2 bis 5 wird ein Ansatz nach dem Stand der Technik zum Migrieren von Geschäftsprozessinstanzen beschrieben. 2 zeigt einen Prozess A, der aus einer linearen Folge von vier Aktivitäten A1, A2, A3, A4 besteht, die wir als das ursprüngliche Prozessmodell A bezeichnen. 3 zeigt das weiterentwickelte Prozessmodell A', in des die Aktivitäten A5, A6 und A7 sowie ihre jeweiligen Verbindungen eingefügt wurden. Das Delta zwischen dem Prozess A und dem Prozess A' wird berechnet und in eine oder mehrere sogenannte „Änderungsgruppen” (change groups) gruppiert. Eine Änderungsgruppe ist eine Reihe von Aktivitäten, die die Grenzen eines Änderungsbereichs markiert. Bei dem gezeigten Beispiel sind die Bereiche hinter der Aktivität A1 und vor der Aktivität A4 in 3 von der Änderung betroffen. 4 zeigt eine Instanz I, die auf dem in 2 gezeigten Prozess A basiert und bei der Aktivität A1 steht, und 5 zeigt eine Instanz I', die auf dem in 2 gezeigten Prozess A basiert und bei der Aktivität A3 steht. Dies veranschaulicht, wie eine Prüfung durchgeführt werden kann, ob eine Instanz I, I' migriert werden kann oder nicht. Zur Durchführung werden eine Änderungsgruppe ÄG (change group CG) oder ein Änderungsbereich und eine sogenannte „Wellenfront” W (wave front) verwendet. Die Wellenfront W ist eine Reihe von Aktivitäten, die die „aktuelle Position” der Prozessinstanz I, I' darstellen, d. h. den „Migrationspunkt” (point of migration). Da Geschäftsprozesse jedoch ihrem Wesen nach parallel sind, ist der „Migrationspunkt” nicht notwendigerweise ein einzelner Punkt, sondern wird vielmehr durch die Wellenfront W bestimmt. Bei den in 4 und 5 gezeigten Beispielen besteht die Wellenfront W aus der Aktivität A1 in 4 oder entsprechend A3 in 5. Das Kriterium für die Entscheidung, ob eine gegebene Änderungsgruppe ÄG mit der entsprechenden Instanz I, I' konform ist, besteht darin, dass die Wellenfront W die Änderungsgruppe ÄG nicht schneiden darf. Bei dem Beispiel könnte die in 4 gezeigte Instanz I migriert werden, da sie die Änderungsgruppe ÄG nicht schneidet, und die in 5 gezeigte Instanz I' könnte nicht migriert werden, da sie die Änderungsgruppe AG schneidet.
  • Im Hinblick auf die Kompensation ist also offensichtlich, dass es schwierig ist zu entscheiden, ob eine Instanz migriert werden kann oder nicht, da die Prüfung, ob eine Instanz migriert werden kann oder nicht, statisch an einer Prozessvorlage durchgeführt wird und die Kompensationslogik normalerweise zu einer Ableitung von dem vorgegebenen Kontrollfluss führt, wodurch eine statische Prüfung mehr oder weniger nutzlos ist.
  • In der veröffentlichten Patentanmeldung US 2010/0121668 A1 „AUTOMATED COMPLIANCE CHECKING FOR PROCESS INSTANCE MIGRATION” von Hohmann wird ein Datenverarbeitungssystem zum Verarbeiten und Bearbeiten von Geschäftsprozess-Arbeitsablauf-Daten (business process workflow editorial data processing system) offenbart. Das offenbarte System kann ein Arbeitsablaufmanagementsystem (workflow management system) umfassen, beispielsweise ein Prozessbearbeitungswerkzeug und ein Repository mit Vorlagen, wobei jede Vorlage einen Prozess definiert. Zumindest zwei der Vorlagen können eine neue und eine vorhandene Vorlage für eine ausführende Instanz eines Geschäftsprozesses umfassen. Das System kann außerdem eine mit dem Arbeitsablaufmanagementsystem verbundene Logik zur Konformitätsprüfung umfassen. Die Logik kann Programmcode enthalten, der Folgendes ermöglicht: Ableiten eines Protokolls der Änderungen zwischen der neuen Vorlage und der vorhandenen Vorlage auf der Grundlage hinzugefügter und entfernter Aktivitäten und Verbindungen zwischen Aktivitäten in der ausführenden Prozessinstanz, Gruppieren der Änderungen in dem Protokoll nach gemeinsamen Aktivitäten, Ermitteln einer Wellenfront für die ausführende Prozessinstanz und Migrieren der ausführenden Prozessinstanz in die neue Vorlage unter der Voraussetzung, dass die Wellenfront keine der Änderungsgruppen schneidet, bzw. andernfalls Verweigern einer Migration der Prozessinstanz in die neue Vorlage. Das offenbarte System deckt die Analyse und die Konformitätsprüfung von Geschäftsprozessen ab, die keine Kompensationslogik enthalten.
  • Vorhandene Ansätze auf dem Gebiet der Instanzmigration ermöglichen keinen wirkungsvollen Umgang mit Prozessinstanzen, die Kompensationslogik enthalten. Der hauptsächliche Unterschied besteht darin, dass Kompensationslogik das zugrunde liegende Arbeitsablaufmanagementsystem in die Lage versetzt, an beliebigen Stellen von der vorgegebenen Kontrollflusslogik abzuleiten. Der in der veröffentlichten Patentanmeldung US 2010/0121668 erwähnte Ansatz basiert hauptsächlich auf Vorlagendaten und ist daher unwirksam beim Umgang mit Kompensationslogik, da nicht statisch ermittelt werden kann, welche Logik tatsächlich ausgeführt wurde und welche nicht. Dies würde daher dazu führen, dass mehr Instanzen fälschlicherweise als „nicht konform” bewertet werden.
  • Kurzdarstellung der Erfindung
  • Das der vorliegenden Erfindung zugrunde liegende technische Problem besteht darin, ein Verfahren zum Migrieren von Geschäftsprozessinstanzen und ein System zum Migrieren von Geschäftsprozessinstanzen bereitzustellen, mit deren Hilfe Geschäftsprozessinstanzen, die von Geschäftsprozessmodellen mit Kompensationslogik abgeleitet wurden, migriert und die vorstehend erwähnten Mängel und Problempunkte des Migrierens von Geschäftsprozessinstanzen nach dem Stand der Technik behoben werden können.
  • Dieses Problem wird erfindungsgemäß gelöst durch das Bereitstellen eines Verfahrens zum Migrieren von Geschäftsprozessinstanzen mit den Merkmalen von Anspruch 1, eines Systems zum Migrieren von Geschäftsprozessinstanzen mit den Merkmalen von Anspruch 10, eines Datenverarbeitungsprogramms zum Migrieren von Geschäftsprozessinstanzen mit den Merkmalen von Anspruch 14 und eines Computerprogrammprodukts zum Migrieren von Geschäftsprozessinstanzen mit den Merkmalen von Anspruch 15. Vorteilhafte Ausführungsformen der vorliegenden Erfindung werden in den Unteransprüchen erwähnt.
  • Dementsprechend umfasst bei einer Ausführungsform der vorliegenden Erfindung ein Verfahren zum Migrieren von Geschäftsprozessinstanzen, die von Geschäftsprozessmodellen mit Kompensationslogik abgeleitet wurden, das Modellieren einer neuen Geschäftsprozessversion und das Ermitteln, ob eine entsprechende Geschäftsprozessinstanz, die von dem Geschäftsprozessmodell abgeleitet wurde, für eine Migration infrage kommt, und zwar mithilfe folgender Schritte: statische Analyse eines zugrunde liegenden Geschäftsprozessmodells, um einen statischen Prozess-Kontrollfluss zu erzeugen; Ableiten von potenziellen Kompensations-Kontrollflüssen; Erkennen von Änderungen zwischen der neuen Geschäftsprozessversion und einer früheren Geschäftsprozessversion; Durchgehen der erkannten Änderungen, um Änderungen im Zusammenhang mit Kompensationslogik und Änderungen im Zusammenhang mit dem normalen Kontrollfluss des Geschäftsprozessmadells zu trennen und in Änderungsgruppen zu gruppieren und Migrieren der Geschäftsprozessinstanz auf der Grundlage von Migrationsbedingungen, die auf der Grundlage der Änderungsgruppen ermittelt werden.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung wird der statische Prozess-Kontrollfluss durch Einbeziehen von Kompensationsdaten erweitert.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung werden instanzbezogene Daten an den statischen Prozess-Kontrollfluss angehängt.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung werden in dem Geschäftsprozessmodell Bereiche mit angehängter Kompensationslogik erkannt.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung wird die Kompensationslogik in Bezug auf den Prozess-Kontrollfluss an einem logischen Ende der Bereiche angeordnet und dann ein resultierender abgeänderter Kontrollfluss als Eingabe für die Migrations-Konformitätsanalyse verwendet.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung werden die Migrationsbedingungen durch Extrahieren gegenwärtig aktiver Aktivitäten aus der Geschäftsprozessinstanz und durch Analysieren des statischen Prozess-Kontrollflusses und der Änderungsgruppen berechnet, wobei das Migrieren der Geschäftsprozessinstanz ermöglicht wird, wenn in der Vergangenheit des statischen Prozess-Kontrollflusses der Geschäftsprozessinstanz keine Änderungsgruppe vorhanden ist.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung wird das Migrieren der Geschäftsprozessinstanz verweigert, wenn mindestens eine Änderungsgruppe in der Vergangenheit des statischen Prozess-Kontrollflusses der Geschäftsprozessinstanz vorhanden und die Änderungsgruppe keine Kompensations-Änderungsgruppe ist.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung wird das Migrieren der Geschäftsprozessinstanz ermöglicht, wenn mindestens eine Änderungsgruppe in der Vergangenheit des statischen Prozess-Kontrollflusses der Geschäftsprozessinstanz eine Kompensations-Änderungsgruppe ist und ein Zustand eines der Kompensations-Änderungsgruppe zugeordneten Gültigkeitsbereichs als Endzustand erkannt wird.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung wird das Migrieren der Geschäftsprozessinstanz verweigert, wenn die mindestens eine Änderungsgruppe in der Vergangenheit des statischen Prozess-Kontrollflusses der Geschäftsprozessinstanz eine Kompensations-Änderungsgruppe ist und ein Zustand eines der Kompensations-Änderungsgruppe zugeordneten Gültigkeitsbereichs als Fehlerzustand erkannt wird.
  • Bei einer weiteren Ausführungsform der vorliegenden Erfindung umfasst ein System zum Migrieren von Geschäftsprozessinstanzen, die aus Geschäftsprozessmodellen mit Kompensationslogik abgeleitet wurden, ein Modellierwerkzeug zum Modellieren einer neuen Geschäftsprozessversion, eine Bereitstellungsinfrastruktur zum Installieren des Geschäftsprozessmodells auf mindestens einem Server, den Austausch von Daten mit mindestens einem Client, wobei zugelassen wird, dass der mindestens eine Client mit dem Geschäftsprozess interagiert, und eine Datenverarbeitungsmaschine, die eine Prozessinstanz durch Durchlaufen eines in dem Geschäftsprozessmodell beschriebenen Ablaufs interpretiert und ausführt, wobei die Datenverarbeitungsmaschine durch Ausführen folgender Schritte ermittelt, oh eine entsprechende von dem Geschäftsprozessmodell abgeleitete Geschäftsprozessinstanz für eine Migration infrage kommt: statische Analyse eines zugrunde liegenden Geschäftsprozessmodells, um einen statischen Prozess-Kontrollfluss zu erzeugen; Ableiten von potenziellen Kompensations-Kontrollflüssen; Erkennen von Änderungen zwischen der neuen Geschäftsprozessversion und einer früheren Geschäftsprozessversion; Durchgehen der erkannten Änderungen, um Änderungen im Zusammenhang mit Kompensationslogik und Änderungen im Zusammenhang mit dem normalen Kontrollfluss des Geschäftsprozessmodells zu trennen und in Änderungsgruppen zu gruppieren und Migrieren der Geschäftsprozessinstanz auf der Grundlage von Migrationsbedingungen, die auf der Grundlage der Änderungsgruppen ermittelt werden.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung erweitert die Datenverarbeitungsmaschine den statischen Prozess-Kontrollfluss durch Einbeziehen von Kompensationsdaten aus einer Datenbank.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung hängt die Datenverarbeitungsmaschine instanzbezogene Daten aus der Datenbank an den statischen Prozess-Kontrollfluss an.
  • Bei weiteren Ausführungsformen der vorliegenden Erfindung erkennt die Datenverarbeitungsmaschine in dem Geschäftsprozessmodell Bereiche mit angehängter Kompensationslogik, ordnet die Kompensationslogik in Bezug auf den Prozess-Kontrollfluss an einem logischen Ende der Bereiche an und verwendet einen resultierenden abgeänderten Kontrollfluss als Eingabe für die Migrations-Konformitätsanalyse.
  • Bei einer anderen Ausführungsform der vorliegenden Erfindung umfasst ein Datenverarbeitungsprogramm zum Ausführen in einem Datenverarbeitungssystem Softwarecodeabschnitte zum Ausführen eines Verfahrens zum Migrieren von Geschäftsprozessinstanzen, wenn das Programm auf dem Datenverarbeitungssystem ausgeführt wird.
  • Bei noch einer anderen Ausführungsform der vorliegenden Erfindung umfasst ein Computerprogrammprodukt, das auf einem computerverwendbaren Medium gespeichert ist, computerlesbare Programmmittel, die einen Computer zum Durchführen eines Verfahrens zum Migrieren von Geschäftsprozessinstanzen veranlassen, wenn das Programm auf dem Computer ausgeführt wird.
  • Insgesamt betreffen die Ausführungsformen der Erfindung ein Verfahren oder System zum Zuordnen von Kompensationslogik, um die Änderungen an der Geschäftsprozessinstanz zu kompensieren, auf die die Änderungsgruppen hinweisen, und zum Entscheiden auf der Grundlage des Zustands des der Kompensationsänderung zugeordneten Gültigkeitsbereichs, ob die Geschäftsprozessinstanzen migriert werden können oder nicht. Die Anzahl der Instanzen, die migriert werden können, wird durch Ausführungsformen der Erfindung erhöht.
  • Ausführungsformen der vorliegenden Erfindung, die dazu dienen, zu entscheiden, ob bei einem Geschäftsprozess, bei dem Kompensationslogik verwendet wird, eine Geschäftsinstanz migriert werden kann oder nicht, bestehen im Wesentlichen aus zwei Schritten sowie einem zusätzlichen Schritt, der dies dem Benutzer erklärt. Bei einem ersten Schritt wird das Prozessmodell analysiert, und es werden potenzielle Kompensations-Kontrollflüsse abgeleitet, d. h., der statische Prozess-Kontrollfluss wird durch Einbeziehen von Kompensationsdaten erweitert. Dies ist eine Erweiterung der Bereitstellungsinfrastruktur des Geschäftsprozessmanagementsystems (GPMS). Bei einem zweiten Schritt werden instanzbezogene Daten an den statischen Prozess-Kontrollfluss angehängt. Die Kompensationslogik wird für einen Gültigkeitsbereich definiert, d. h. für einen Teil des Kontrollflusses, der von der modellierten Kompensationslogik betroffen ist. Das bedeutet, dass beim Auftreten eines unvorhergesehenen Fehlers in einem Gültigkeitsbereich die für diesen Gültigkeitsbereich definierte Kompensationslogik ausgelöst wird und der Gültigkeitsbereich in einen Fehlerzustand wie „fehlgeschlagen” oder „kompensiert” eintritt, um anzuzeigen, dass dieser Gültigkeitsbereich nicht ausgeführt wurde und seine Nebenerscheinungen kompensiert wurden. Tritt ein Gültigkeitsbereich jedoch in einen Endzustand wie „fertig” oder „abgeschlossen” ein, ist sichergestellt, dass die zugeordnete Kompensationslogik nicht ausgeführt wurde, da diese nur im Fall eines Fehlers ausgeführt wird. Daher werden auch diese Daten, d. h. der Zustand der Gültigkeitsbereiche, die bereits durchlaufen wurden, aus einer Datenbank extrahiert und an das interne Prozessmodell angehängt. Befindet sich ein Gültigkeitsbereich in einem Endzustand, was deutlich zeigt, dass für diesen Gültigkeitsbereich keine Kompensationslogik ausgelöst wurde, können alle Änderungen an der Kompensationslogik dieses Gültigkeitsbereichs problemlos ignoriert werden, da die aktuell ausgeführte Instanz durch sie nicht beeinflusst werden kann. Die Kompensations-Änderungsgruppen für diese Gültigkeitsbereiche werden daher entfernt und nicht für eine weitere Analyse berücksichtigt. Bei einem dritten Schritt werden die „sich weiterbewegenden” (travelling) Kompensations-Änderungsgruppen visualisiert, damit Benutzer die Erweiterung des Modellierwerkzeugs oder des Client-Teils eines GPMS besser verstehen.
  • Die Konformitätsprüfung wird durch Ausführungsformen der vorliegenden Erfindung deutlich verbessert und so aufgrund der Einbeziehung zusätzlicher prozessinstanzbasierter und Kompensationsdaten zutreffender und präziser.
  • Das Vorstehende sowie weitere Zwecke, Merkmale und Vorteile der vorliegenden Erfindung erschließen sich aus der folgenden ausführlichen schriftlichen Beschreibung.
  • Kurzbeschreibung der Zeichnungen
  • Die Zeichnungen zeigen eine bevorzugte Ausführungsform der vorliegenden Erfindung, die nachfolgend ausführlich beschrieben wird.
  • 1 ist ein schematisches Blockschaltbild eines Geschäftsprozessmanagementsystems (GPMS) gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 2 und 3 sind schematische Blockschaltbilder von Ausführungsformen von Geschäftsprozessmodellen;
  • 4 und 5 sind schematische Blockschaltbilder von Ausführungsformen von Geschäftsprozessinstanzen;
  • 6 ist ein schematisches Ablaufdiagramm eines Verfahrens zum Migrieren von Geschäftsprozessinstanzen gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 7 ist ein schematisches Blockschaltbild einer ersten Ausführungsform eines Geschäftsprozessmodells;
  • 8 ist ein schematischer Kontrollfluss des in 7 gezeigten ersten Geschäftsprozessmodells gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 9 ist ein schematisches Blockschaltbild einer zweiten Ausführungsform eines Geschäftsprozessmodells;
  • 10 und 11 sind schematische Kontrollflüsse des in 9 gezeigten zweiten Geschäftsprozessmodells gemäß Ausführungsformen der vorliegenden Erfindung, und
  • 12 bis 17 sind schematische Kontrollflüsse von verschiedenen Zuständen einer Geschäftsprozessinstanz, die aus dem in 9 gezeigten zweiten Geschäftsprozessmodell abgeleitet wurde, gemäß Ausführungsformen der vorliegenden Erfindung.
  • Ausführliche Beschreibung der bevorzugten Ausführungsformen
  • 1 zeigt ein Geschäftsprozessmanagementsystem (GPMS) 1 gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Das in 1 gezeigte Geschäftsprozessmanagementsystem (GPMS) 1 umfasst eine Bereitstellungsstruktur 10, ein Modellierwerkzeug 20, ein Client-System 30 und eine Datenbank 40. Des Modellierwerkzeug 20 ermöglicht das grafische Modellieren eines Geschäftsprozesses, eines sogenannten Geschäftsprozessmodells 2, 3. Die Bereitstellungsinfrastruktur 10 umfasst eine Datenverarbeitungsmaschine 12 und installiert ein derartiges Geschäftsprozessmodell 2, 3 auf mindestens einem Server, wobei aus dem Geschäftsprozessmodell 2, 3 eine sogenannte „Geschäftsprozessvorlage” (business process template) wird. Das Client-System 30 ermöglicht das Interagieren mit dem Geschäftsprozess, d. h., diesen zu starten, ihm Nachrichten zu senden usw. Wird ein Prozess von einer Geschäftsprozessvorlage aus gestartet, wird daraus eine „Geschäftsprozessinstanz”. Durch Durchlaufen des in dem Geschäftsprozessmodell 2, 3 beschriebenen Diagramms und/oder der Geschäftsprozessvorlage interpretiert die Datenverarbeitungsmaschine 12 eine Prozessinstanz und führt diese aus.
  • Ein System zum Migrieren von Geschäftsprozessinstanzen, die von Geschäftsprozessmodellen 2, 3 mit Kompensationslogik abgeleitet wurden, umfasst das Modellierwerkzeug 20 zum Modellieren einer neuen Geschäftsprozessversion, die Bereitstellungsinfrastruktur 10 zum Installieren des Geschäftsprozessmodells 2, 3 auf mindestens einem Server, den Austausch von Daten mit dem Client-System 30, wobei dem Client 30 das Interagieren mit dem Geschäftsprozess 2, 3 ermöglicht wird, und die Datenverarbeitungsmaschine 12, die eine Prozessinstanz durch Durchlaufen eines in dem Geschäftsprozessmodell 2, 3 beschriebenen Ablaufs interpretiert und ausführt. Gemäß der vorliegenden Erfindung ermittelt die Datenverarbeitungsmaschine 12 durch Ausführen folgender Schritte, ob eine entsprechende Geschäftsprozessinstanz, die von dem Geschäftsprozessmodell 2, 3 abgeleitet wurde, für eine Migration infrage kommt: statische Analyse eines zugrunde liegenden Geschäftsprozessmodells 2, 3, um einen statischen Prozess-Kontrollfluss KF2, KF3, KF3' zu erzeugen; Ableiten der potenziellen Kompensations-Kontrollflüsse KKF1 bis KKF6; Erkennen von Änderungen zwischen der neuen Geschäftsprozessversion und einer früheren Geschäftsprozessversion; Durchgehen der erkannten Änderungen, um Änderungen im Zusammenhang mit der Kompensationslogik 200, 210, 211, 212, 640, 610, 611, 612, 613 und Änderungen im Zusammenhang mit dem normalen Kontrollfluss 100, 500, 110, 510, 111, 511, 112, 512 des Geschäftsprozessmodells 2, 3 zu trennen und in Änderungsgruppen zu gruppieren und Migrieren der Geschäftsprozessinstanz auf der Grundlage von Migrationsbedingungen, die auf der Grundlage der Änderungsgruppen ermittelt werden.
  • 6 zeigt ein Verfahren zum Migrieren von Geschäftsprozessinstanzen, gemäß einer Ausführungsform der vorliegenden Erfindung; 7 zeigt eine erste Ausführungsform eines Geschäftsprozessmodells; 8 zeigt einen Kontrollfluss des in 7 gezeigten ersten Geschäftsprozessmodells gemäß einer Ausführungsform der vorliegenden Erfindung; 9 zeigt eine zweite Ausführungsform eines Geschäftsprozessmodells; 10 und 11 zeigen Kontrollflüsse des in 9 gezeigten zweiten Geschäftsprozessmodells gemäß Ausführungsformen der vorliegenden Erfindung und 12 bis 17 zeigen Kontrollflüsse von verschiedenen Zuständen einer Geschäftsprozessinstanz, die von dem in 9 gezeigten zweiten Geschäftsprozessmodell abgeleitet wurde, gemäß Ausführungsformen der vorliegenden Erfindung.
  • In 6 werden bei Schritt S100 aktuell aktive Aktivitäten aus einer Geschäftsprozessinstanz extrahiert. Bei Schritt S110 werden ein statischer Prozess-Kontrollfluss KF2, KF3, KF3' sowie Änderungsgruppen analysiert. Bei Schritt S120 wird ausgehend von einer aktuellen Arbeitsablaufposition geprüft, ob in der Vergangenheit der Geschäftsprozessinstanz Änderungsgruppen vorhanden sind oder nicht. Wenn nicht, wird bei Schritt S150 die Geschäftsprozessinstanz in eine neue Geschäftsprozessvorlage migriert. Wenn ja, wird geprüft, ob die in der Vergangenheit der Geschäftsprozessinstanz angeordnete Änderungsgruppe eine Kompensations-Änderungsgruppe ist oder nicht. Wenn nicht, wird bei Schritt S160 die Migration der Geschäftsprozessinstanz verweigert und die Geschäftsprozessinstanz als nicht konform bewertet. Wenn ja, wird bei Schritt S140 geprüft, ob sich ein der Kompensations-Änderungsgruppe zugeordneter Gültigkeitsbereich in einem Endzustand wie beispielsweise „fertig” oder „abgeschlossen” oder in einem Fehlerzustand wie zum Beispiel „fehlgeschlagen” oder „kompensiert” befindet. Befindet sich der zugeordnete Gültigkeitsbereich in dem Endzustand „fertig”, wird die Geschäftsprozessinstanz bei Schritt S150 in eine neue Geschäftsprozessvorlage migriert. Befindet sich der zugeordnete Gültigkeitsbereich in dem Fehlerzustand „fehlgeschlagen”, wird die Migration der Geschäftsprozessinstanz bei Schritt S160 verweigert und die Geschäftsprozessinstanz als nicht konform bewertet.
  • In 7 und 8 enthält die erste Ausführungsform eines Geschäftsprozessmodells 2 vier Kompensationslogikeinheiten 200, 210, 211, 212. Jeder Kompensationslogikeinheit 200, 210, 211, 212 ist ein anderer Gültigkeitsbereich 100, 110, 111, 112 des Geschäftsprozessmodells 2 zugeordnet. Die gezeigte erste Ausführungsform des Geschäftsprozessmodells 2 umfasst einen globalen Gültigkeitsbereich 100, der eine erste Aktivität „Receive” (Empfangen), eine zweite Aktivität „Activity0”, einen lokalen Gültigkeitsbereich 110, eine lokale Kompensationslogik 210 für den lokalen Gültigkeitsbereich 110, eine dritte Aktivität „Activity7” und eine vierte Aktivität „Reply” (Antworten) umfasst, sowie eine globale Kompensationslogik 200, die eine fünfte Aktivität „Catch” (Abfangen) und eine sechste Aktivität „Activity12” umfasst. Der lokale Gültigkeitsbereich 110 umfasst einen ersten inneren Gültigkeitsbereich 111, der eine siebte Aktivität „Activity1”, eine achte Aktivität „Activity2” und eine neunte Aktivität „Activity3” umfasst; eine erste innere Kompensationslogik 211, die eine zehnte Aktivität „Activity8” und eine elfte Aktivität „Activity9” für den ersten inneren Gültigkeitsbereich 111 umfasst; eine zwölfte Aktivität „Activity4”, einen zweiten inneren Gültigkeitsbereich 112, der eine dreizehnte Aktivität „Activity5” und eine vierzehnte Aktivität „Activity6” umfasst, und eine zweite innere Kompensationslogik 212, die eine fünfzehnte Aktivität „Activity10” und eine sechzehnte Aktivität „Activity11” umfasst. Die lokale Kompensationslogik 210 für den lokalen Gültigkeitsbereich 110 umfasst eine siebzehnte Aktivität „Snippet0” (Ausschnitt0), eine achtzehnte Aktivität „Compensate0” (Kompensieren0), eine neunzehnte Aktivität „Snippet1” und eine zwanzigste Aktivität „Compensate1”.
  • Während der Bereitstellungszeit wird das Geschäftsprozessmodell 2 statisch analysiert, und es werden potenzielle Kompensations-Kontrollflüsse abgeleitet. Diese abgeleiteten Kompensations-Kontrollflüsse werden dann in den regulären Kontrollfluss KF2 des Geschäftsprozesses einbezogen. Zuerst werden die inneren Kompensationslogiken 211, 212 in die lokale Kompensationslogik 210 an den entsprechenden Steilen bei „Compensate0” und „Compensate1” eingefügt, wo sie aufgerufen wird. So wird die achtzehnte Aktivität „Compensate0” durch die zehnte Aktivität „Activity8” und die elfte Aktivität „Activity9” ersetzt, die die erste innere Kompensationslogik 211 bilden. Die zwanzigste Aktivität „Compensate1” wird durch die fünfzehnte Aktivität „Activity10” und die sechzehnte Aktivität „Activity11” ersetzt, die die zweite innere Kompensationslogik 212 bilden. Die lokale Kompensationslogik 210 für den lokalen Gültigkeitsbereich 110 umfasst jetzt die Aktivitäten „Snippet0”, „Activity8, „Activity9”, „Snippet1”, „Activity10” sowie „Activity11”, und die Kompensationslogiken für den ersten inneren Gültigkeitsbereich 111 und den zweiten inneren Gültigkeitsbereich 112 wurden abgetrennt.
  • Anschließend wird die lokale Kompensationslogik 210 für den lokalen Gültigkeitsbereich 110 ebenfalls abgetrennt und hinter dem lokalen Gültigkeitsbereich 110 in den regulären Kontrollfluss KF2 eingefügt, woraus sich der in 8 gezeigte neu strukturierte Prozess ergibt. In 8 wird die lokale Kompensationslogik 210 für den lokalen Gültigkeitsbereich 110 an einem logischen Ende 310 des lokalen Gültigkeitsbereichs 110 eingefügt, und die globale Kompensationslogik 200 wird an einem logischen Ende 300 des globalen Gültigkeitsbereichs 100 eingefügt. Dieser neu strukturierte Prozess mit der eingefügten Kompensationslogik 200, 210, 211, 212 kann nun dazu verwendet werden, eine statische Prüfung vorzunehmen, um zu entscheiden, ob eine Prozessinstanz unter Verwendung des im Stand der Technik beschriebenen Standardverfahrens migriert werden kann oder nicht.
  • Zusätzlich können instanzbasierte Daten genutzt werden, um die Genauigkeit der Migrations-Konformitätsprüfung zu verbessern, d. h., die Anzahl falsch negativer Ergebnisse zu verringern. Dies wird erreicht durch Trennen der kompensationsbezogenen Änderungslogik von Änderungen, die den Standardpfad betreffen, d. h. den normalen Pfad, der ausgeführt wird, wenn keine Fehler auftreten. Daher werden alle Änderungen in der Kompensationslogik, d. h. in dem Kompensationsbehandler (compensation handler), in voneinander getrennte Änderungsgruppen gruppiert (eine für jeden Gültigkeitsbereich, dem bei der Umgestaltung die Kompensationslogik hinzugefügt wird). Alle Änderungen außerhalb der Kompensationslogik verbleiben in einer anderen Änderungsgruppe. Diese Daten können dann bei einer erweiterten Konformitätsprüfung auf Kompensationsänderungen verwendet werden. Liegt eine Änderung in einem Kompensationsbehandler vor, wählt man den unmittelbar umgebenden Gültigkeitsbereich aus und prüft, ob dieser sich im Zustand „fertig” befindet. Es ist zu beachten, dass letzterer Schritt instanzbasierte Daten erfordert und daher eine Erweiterung des vorhandenen, rein statisch basierten Ansatzes darstellt, der für Instanzmigrationsszenarien verwendet wird. Ist der übergeordnete Gültigkeitsbereich ein nicht kompensierbarer Gültigkeitsbereich, dann wird mit dessen übergeordnetem Gültigkeitsbereich fortgefahren, bis ein kompensierbarer Gültigkeitsbereich gefunden wird. Dadurch wird sichergestellt, dass noch keine abgeänderte Kompensationslogik eingegeben wurde.
  • Da Kompensationslogik potenziell an bestimmten Stellen des Kontrollflusses des Prozesses ausgelöst werden kann, wenn der mithilfe der eingefügten Kompensationslogik erzeugte, neu strukturierte Prozess, werden bestimmte Teile der Kompensationslogik „dupliziert”, um sicherzustellen, dass alle entsprechenden Stellen, an denen sie ausgelöst werden könnte, auf angemessene Weise berücksichtigt werden. Dieser Schritt ist erforderlich für den Umgang mit dem nichtdeterministischen Verhalten, das mit einem Geschäftsprozess einhergeht, der Kompensationslogik enthält. Es kann nicht statisch ermittelt werden, wann die Kompensationslogik ausgelöst wird und ob sie überhaupt ausgelöst wird. Jede derartige Einfügung wird als „Kompensations-Änderungsgruppe” bezeichnet. Da dies jedoch eine übermäßige Näherung ist, die durch die statische Beschaffenheit der Neustrukturierung bewirkt wird, wäre in Anbetracht des tatsächlichen Zustands einer Prozessinstanz nur eine dieser Kompensations-Änderungsgruppen gültig. Wenn daher visualisiert werden soll, ob eine Prozessinstanz, die Kompensationslogik enthält, migriert werden kann oder nicht, muss dies bei der Visualisierung berücksichtigt werden.
  • In 9 enthält die zweite Ausführungsform eines Geschäftsprozessmodells 3 fünf Kompensationslogikeinheiten 600, 610, 611, 612, 613. Jede Kompensationslogikeinheit 600, 610, 611, 612, 613 ist für einen anderen Gültigkeitsbereich 500, 510, 511, 512, 513 des Geschäftsprozessmodells 3 gültig. Die gezeigte zweite Ausführungsform des Geschäftsprozessmodells 3 umfasst einen globalen Gültigkeitsbereich 500, der eine erste Aktivität „Receive”, einen lokalen Gültigkeitsbereich 510, eine lokale Kompensationslogik 610 für den lokalen Gültigkeitsbereich 510, eine zweite Aktivität „Activity4”, eine globale Kompensationslogik 600 mit einer dritten Aktivität „Compensate00” (Kompensieren00) sowie eine vierte Aktivität „Reply” umfasst. Der lokale Gültigkeitsbereich 510 umfasst einen ersten inneren Gültigkeitsbereich 511, der eine fünfte Aktivität „Activity0” und eine sechste Aktivität „Activity1” umfasst; eine erste innere Kompensationslogik 611, die eine siebte Aktivität „Compensate1” für den ersten inneren Gültigkeitsbereich 511 umfasst; einen zweiten inneren Gültigkeitsbereich 512, der eine achte Aktivität „Invoke0” (Aufrufen0) umfasst; eine zweite innere Kompensationslogik 612, die eine neunte Aktivität „Snippet0” für den zweiten inneren Gültigkeitsbereich 512 umfasst; einen dritten inneren Gültigkeitsbereich 513, der eine zehnte Aktivität „Activity2” und eine elfte Aktivität „Activity3” umfasst, sowie eine dritte innere Kompensationslogik 613, die eine dreizehnte Aktivität „Compensate3” für den dritten inneren Gültigkeitsbereich 513 umfasst. Die lokale Kompensationslogik 610 für den lokalen Gültigkeitsbereich 510 umfasst eine vierzehnte Aktivität „Compensate0”.
  • In 10 sind abgeleitete Kompensations-Kontrollflüsse in einen regulären Kontrollfluss KF3 des Geschäftsprozessmodells 3 einbezogen. Die inneren Kompensationslogiken 611, 612, 613 sind an der entsprechenden Stelle „Compensate0” in die lokale Kompensationslogik 610 eingefügt. So wird die vierzehnte Aktivität „Compensate0” durch die siebte Aktivität „Compensate1”, die neunte Aktivität „Snippet0” und die dreizehnte Aktivität „Compensate3” ersetzt, die jeweils die erste, zweite und dritte innere Kompensationslogik 611, 612, 613 bilden. Außerdem wird die dritte Aktivität „Compensate00” der globalen Kompensationslogik 600 durch die vierzehnte Aktivität „Compensate0” der lokalen Kompensationslogik 610 ersetzt, die wiederum durch die siebte Aktivität „Compensate1”, die neunte Aktivität „Snippet0” und die dreizehnte Aktivität „Compensate3” ersetzt wird, die jeweils die erste, zweite und dritte innere Kompensationslogik 611, 612, 613 bilden. Die lokale Kompensationslogik 610 für den lokalen Gültigkeitsbereich 510 umfasst jetzt die Aktivitäten „Compensate1”, „Snippet0” und „Compensate3”, und die Kompensationslogiken für den ersten inneren Gültigkeitsbereich 611, den zweiten inneren Gültigkeitsbereich 612 und den dritten inneren Gültigkeitsbereich 613 wurden abgetrennt.
  • Anschließend wird die lokale Kompensationslogik 610 für den lokalen Gültigkeitsbereich 510 ebenfalls abgetrennt und hinter dem lokalen Gültigkeitsbereich 510 in den regulären Kontrollfluss KF3 eingefügt, woraus sich der in 10 gezeigte neu strukturierte Prozess ergibt. In 10 wird die lokale Kompensationslogik 610 für den lokalen Gültigkeitsbereich 510 an einem logischen Ende 710 des lokalen Gültigkeitsbereichs 510 eingefügt. Die globale Kompensationslogik 600 für den globalen Gültigkeitsbereich 500 umfasst die Aktivitäten „Compensate1”, „Snippet0” und „Compensate3”, und die globale Kompensationslogik 600 wird an einem logischen Ende 700 des globalen Gültigkeitsbereichs 500 eingefügt. Dieser neu strukturierte Prozess mit der eingefügten Kompensationslogik 600, 610, 611, 612, 613 kann nun dazu verwendet werden, eine statische Prüfung vorzunehmen, um zu entscheiden, ob eine Prozessinstanz unter Verwendung des im Stand der Technik beschriebenen Standardverfahrens migriert werden kann oder nicht.
  • Ausgehend von der Annahme, dass die erste innere Kompensationslogik 611 und die dritte innere Kompensationslogik 613 leer sind (was bedeutet, dass keine Aktivitäten ausgeführt werden), kann der reguläre Kontrollfluss KF3 vereinfacht werden. Der vereinfachte Kontrollfluss KF3' wird in 11 gezeigt.
  • In 11 wird bei dem vereinfachten regulären Kontrollfluss KF3' des Geschäftsprozessmodells 3 die vierzehnte Aktivität „Compensate0” durch die neunte Aktivität „Snippet0” ersetzt. Außerdem wird die dritte Aktivität „Compensate00” der globalen Kompensationslogik 600 durch die vierzehnte Aktivität „Compensate0” der lokalen Kompensationslogik 610 ersetzt, die wiederum durch die durch die neunte Aktivität „Snippet0” ersetzt wird. Die lokale Kompensationslogik 610 für den lokalen Gültigkeitsbereich 510 umfasst nun die Aktivität „Snippet0”. Weiter wird in 11 die lokale Kompensationslogik 610 für den lokalen Gültigkeitsbereich 510 an einem logischen Ende 710 des lokalen Gültigkeitsbereich 510 eingefügt. Die globale Kompensationslogik 600 für den globalen Gültigkeitsbereich 500 umfasst die Aktivität „Snippet0”, und die globale Kompensationslogik 600 wird an einem logischen Ende 700 des globalen Gültigkeitsbereich 500 eingefügt. Dieser neu strukturierte Prozess wird nun dazu verwendet, zu entscheiden, ob eine Prozessinstanz migriert werden kann oder nicht.
  • 12 bis 17 zeigen die Arbeitsablaufdiagramme KKF1, KKF2, KKF3, KKF3', KKF3'', KKF4 von beispielhaften Prozessen mit eingefügter Kompensationslogik und in Abhängigkeit vom Zustand der Prozessinstanz eingefügten Kompensations-Änderungsgruppen. In 12 bis 17 ist eine Kompensations-Änderungsgruppe ÄG, die bezogen auf den aktuellen Zustand der Prozessinstanz – die als Wellenfront W bezeichnet wird – in der Zukunft liegt, als gestrichelter Block hervorgehoben. Eine Kompensations-Änderungsgruppe ÄGV, die bezogen auf den aktuellen Zustand der Prozessinstanz W in der Vergangenheit liegt, ist als fett umrandeter Block hervorgehoben. Eine Kompensations-Änderungsgruppe ÄGI, die in der Vergangenheit liegt und für den Migrationsprozess der Prozessinstanz „irrelevant” ist, ist als schraffierter Block hervorgehoben.
  • Wie bereits ausgeführt wurde, hängt es vom aktuellen Zustand der Prozessinstanz ab, welche Änderungsgruppen ÄG zu berücksichtigen sind. In 12 ist in dem gezeigten ersten Arbeitsablaufdiagramm KKF1 der Geschäftsprozessinstanz der aktuelle Zustand der Prozessinstanz W die erste Aktivität „Receive” des globalen Gültigkeitsbereichs 500 in dem Geschäftsprozessmodell 3. In der Zukunft ist nur die unmittelbar daneben gelegene Kompensations-Änderungsgruppe ÄG von Interesse. Alle verbleibenden zukünftigen Kompensations-Änderungsgruppen werden weggelassen. Daher ist bei diesem Zustand die nächste in der Zukunft zu berücksichtigende Kompensations-Änderungsgruppe ÄG nur die neunte Aktion „Snippet0” der zweiten inneren Kompensationslogik 612. Es sind keine Änderungsgruppen ÄGV vorhanden, die in Bezug auf den aktuellen Zustand der Prozessinstanz W in der Vergangenheit liegen. Alle in der Vergangenheit liegenden Kompensations-Änderungsgruppen ÄGV verhindern das Migrieren der Instanz, wenn der sie unmittelbar umgebende Gültigkeitsbereich sich im Zustand „kompensiert” (Compensated) oder „fehlgeschlagen” (Failed) befindet.
  • In 13 ist in dem gezeigten zweiten Arbeitsablaufdiagramm KKF2 der Geschäftsprozessinstanz der aktuelle Zustand der Prozessinstanz W die elfte Aktivität „Activity3” des dritten inneren Gültigkeitsbereichs 513 in dem lokalen Gültigkeitsbereich 510 des Geschäftsprozessmodells 3. Bei diesem Zustand ist die nächste in der Zukunft zu berücksichtigende Kompensations-Änderungsgruppe AG immer noch die neunte Aktion „Snippet0” der zweiten inneren Kompensationslogik 612. Es sind auch keine Änderungsgruppen ÄGV vorhanden, die bezogen auf den aktuellen Zustand der Prozessinstanz W in der Vergangenheit liegen.
  • In 14 ist in dem gezeigten dritten Arbeitsablaufdiagramm KKF3 der Geschäftsprozessinstanz der aktuelle Zustand der Prozessinstanz W die zweite Aktivität „Activity4” des globalen Gültigkeitsbereichs 500 in dem Geschäftsprozessmodell 3. Bei diesem Zustand ist die nächste in der Zukunft zu berücksichtigende Kompensations-Änderungsgruppe AG die neunte Aktion „Snippet0” der lokalen Kompensationslogik 610 in dem Geschäftsprozessmodell 3. Es ist eine erste Änderungsgruppe ÄGV vorhanden, die in Bezug auf den aktuellen Zustand der Prozessinstanz W in der Vergangenheit liegt und berücksichtigt werden muss. An diesem Punkt ist zu prüfen, ob sich der unmittelbar zugeordnete Gültigkeitsbereich (hier der zweite innere Gültigkeitsbereich 512) in dem Zustand „kompensiert/fehlgeschlagen” oder „fertig” befindet. Ausgehend von der Annahme, dass sich der zweite innere Gültigkeitsbereich 512 in dem Zustand „fertig” befindet (was bedeutet, dass die zugeordnete zweite innere Kompensationslogik 612 nicht ausgeführt wurde), beeinflusst die erste Änderungsgruppe in der Vergangenheit ÄGV die Konformitätsprüfung nicht. Um also die Anzahl falsch negativ ausfallender Konformitätsprüfungen zu verringern, ist es erforderlich, die Anzahl von Kompensations-Änderungsgruppen ÄGV in der Vergangenheit zu verringern. Immer wenn eine derartige Änderungsgruppe ÄGV durchlaufen wird, werden die zuvor beschriebenen instanzbasierten Daten (d. h. der Zustand des umgebenden Gültigkeitsbereichs, hier des zweiten inneren Gültigkeitsbereichs 612) genutzt, um zu prüfen, ob diese Änderungsgruppe ÄGV automatisch aus dem in 15 gezeigten Arbeitsablaufdiagramm gelöscht werden kann und deshalb die Konformitätsprüfung durch diese Änderungsgruppe nicht beeinflusst wird. 15 zeigt das optimierte dritte Arbeitsablaufdiagramm KKF3' ohne die neunte Aktion „Snippet0” der zweiten inneren Kompensationslogik 612. Um die Geschäftsprozessinstanz zu optimieren, kann die Änderungsgruppe ÄGV auch als „irrelevant” gekennzeichnet werden, falls in Abhängigkeit von dem verwendeten System ein Löschen teuer ist. 16 zeigt das optimierte dritte Arbeitsablaufdiagramm KKF3”, bei dem die neunte Aktion „Snippet0” der zweiten inneren Kompensationslogik 612 als Änderungsgruppe ÄGI vorhanden und als „irrelevant” gekennzeichnet ist.
  • In 17 ist in dem gezeigten vierten Arbeitsablaufdiagramm KKF4 der Geschäftsprozessinstanz der aktuelle Zustand der Prozessinstanz W die vierte Aktivität „Reply” des Geschäftsprozessmodells 3. Bei diesem Zustand ist keine nächste Kompensations-Änderungsgruppe ÄG, die zu berücksichtigen wäre, in der Zukunft vorhanden. Es ist eine erste Änderungsgruppe ÄGV vorhanden, die in Bezug auf den aktuellen Zustand der Prozessinstanz W in der Vergangenheit liegt und als „irrelevant” gekennzeichnet ist und daher die Konformitätsprüfung nicht beeinflusst. Es ist weiter eine zweite Änderungsgruppe ÄGV vorhanden, die in Bezug auf den aktuellen Zustand der Prozessinstanz W in der Vergangenheit liegt. An diesem Punkt ist zu prüfen, ob sich der unmittelbar zugeordnete Gültigkeitsbereich (hier der globale Gültigkeitsbereich 500) in dem Zustand „kompensiert/fehlgeschlagen” oder „fertig” befindet. Ausgehend von der Annahme, dass der globale Gültigkeitsbereich 500 sich in dem Zustand „kompensiert” befindet (was bedeutet, dass die zugeordnete globale Kompensationslogik 600 ausgeführt wurde), beeinflusst die zweite Änderungsgruppe in der Vergangenheit ÄGV die Konformitätsprüfung. Daher wird die Migration verweigert und die Geschäftsprozessinstanz als nicht konform bewertet.
  • Das erfindungsgemäße Verfahren der Migration von Geschäftsprozessinstanzen kann als reine Software-Ausführungsform oder als Ausführungsform realisiert werden, die sowohl Hardware- als auch Software-Elemente enthält. Bei einer bevorzugten Ausführungsform wird die vorliegende Erfindung in Software realisiert, was unter anderem Firmware, residente Software, Mikrocode usw. einschließt.
  • Darüber hinaus kann die vorliegende Erfindung die Form eines Computerprogrammprodukts annehmen, auf das von einem computerverwendbaren oder computerlesbaren Medium aus zugegriffen werden kann, das Programmcode zur Verwendung durch oder in Verbindung mit einem Computer oder einem beliebigen Befehlsausführungssystem bereitstellt. Im Rahmen dieser Beschreibung kann ein computerverwendbares oder computerlesbares Medium eine beliebige Vorrichtung sein, die das Programm für die Nutzung durch das oder in Verbindung mit dem Befehlsausführungssystem, durch die oder in Verbindung mit der Befehlsausführungsvorrichtung oder -einheit enthalten, speichern, übermitteln, verbreiten oder transportieren kann.
  • Das Medium kann ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem (oder eine derartige Vorrichtung oder Einheit) oder ein Verbreitungsmedium sein. Zu Beispielen für ein computerlesbares Medium gehören unter anderem ein Halbleiter- oder Festkörperspeicher, ein Magnetband, eine entnehmbare Computerdiskette, ein Speicher mit wahlfreiem Zugriff (RAM), ein Nur-Lese-Speicher (ROM), ein starrer Magnetdatenträger und ein optischer Datenträger. Zu aktuellen Beispielen für optische Datenträger zählen unter anderem CD-ROM (Compact Disk – Nur-Lese-Speicher), CD-RW (Compact Disk – Lesen/Schreiben) und DVD. Ein Datenverarbeitungssystem, das zum Speichern und/oder Ausführen von Programmcode geeignet ist, umfasst mindestens einen Prozessor, der durch einen Systembus direkt oder indirekt mit Speicherelementen verbunden ist. Die Speicherelemente können lokalen Speicher umfassen, der während der eigentlichen Ausführung des Programmcodes genutzt wird, Massenspeicher und Cache-Speicher, in denen zumindest ein Teil des Programmcodes vorübergehend gespeichert werden kann, damit Code bei der Ausführung weniger häufig aus dem Massenspeicher abgerufen werden muss. Eingabe-/Ausgabe- bzw. E/A-Einheiten (darunter unter anderem Tastaturen, Bildschirme, Zeigeeinheiten usw.) können entweder direkt oder mithilfe von dazwischen liegenden E/A-Controllern mit dem System verbunden werden.
  • Auch Netzwerkadapter können mit dem System verbunden sein, damit das Datenverarbeitungssystem mit anderen Datenverarbeitungssystemen oder Ferndruckern oder Speichereinheiten durch dazwischen liegende private oder öffentliche Netzwerke verbunden werden kann. Modems, Kabelmodems und Netzwerkkarten sind nur einige der aktuell zur Verfügung stehenden Arten von Netzwerkadaptern.

Claims (15)

  1. Verfahren zum Migrieren von Geschäftsprozessinstanzen, die von Geschäftsprozessmodellen mit Kompensationslogik abgeleitet wurden, das Folgendes umfasst: Modellieren einer neuen Geschäftsprozessversion; Ermitteln, ob eine entsprechende Geschäftsprozessinstanz, die von dem Geschäftsprozessmodell (2, 3) abgeleitet wurde, für eine Migration infrage kommt, mithilfe folgender Schritte: statische Analyse eines zugrunde liegenden Geschäftsprozessmodells (2, 3), um einen statischen Prozess-Kontrollfluss (KF2, KF3, KF3') zu erzeugen; Ableiten potenzieller Kompensations-Kontrollflüsse (KKF1 bis KKF6); Erkennen von Änderungen zwischen der neuen Geschäftsprozessversion und einer früheren Geschäftsprozessversion; Durchgehen der erkannten Änderungen, um Änderungen im Zusammenhang mit der Kompensationslogik (200, 210, 211, 212, 600, 610, 611, 612, 613) und Änderungen im Zusammenhang mit dem normalen Kontrollfluss (100, 500, 110, 510, 111, 511, 112, 512) des Geschäftsprozessmodells (2, 3) zu trennen und in Änderungsgruppen zu gruppieren und Migrieren der Geschäftsprozessinstanz auf der Grundlage von Migrationsbedingungen, die auf der Grundlage der Änderungsgruppen ermittelt werden.
  2. Verfahren nach Anspruch 1, wobei der statische Prozess-Kontrollfluss (KF2, KF3, KF3') durch Einbeziehen von Kompensationsdaten erweitert wird.
  3. Verfahren nach Anspruch 1 oder 2, wobei instanzbezogene Daten an den statischen Prozess-Kontrollfluss (KF2, KF3, KF3') angehängt werden.
  4. Verfahren nach einem der vorangehenden Ansprüche 1 bis 3, wobei Bereiche (100, 110, 111, 112, 500, 510, 511, 512, 513) mit angefügter Kompensationslogik (200, 210, 211, 212, 600, 610, 611, 612, 613) in dem Geschäftsprozessmodell erkannt werden.
  5. Verfahren nach Anspruch 4, wobei die Kompensationslogik (200, 210, 211, 212, 600, 610, 611, 612, 613) in Bezug auf den Prozess-Kontrollfluss an einem logischen Ende der Bereiche (300, 310, 700, 710) angeordnet ist und ein resultierender abgeänderter Kontrollfluss (KF2, KF3, KF3') anschließend als Eingabe für die Migrations-Konformitätsanalyse verwendet wird.
  6. Verfahren nach einem der vorangehenden Ansprüche 1 bis 5, wobei die Migrationsbedingungen durch Extrahieren gegenwärtig aktiver Aktivitäten aus der Geschäftsprozessinstanz und durch Analysieren des statischen Prozess-Kontrollflusses (KF2, KF3, KF3') und der Änderungsgruppen berechnet werden, wobei das Migrieren der Geschäftsprozessinstanz ermöglicht wird, wenn in der Vergangenheit des statischen Prozess-Kontrollflusses (KF2, KF3, KF3') der Geschäftsprozessinstanz keine Änderungsgruppe vorhanden ist.
  7. Verfahren nach Anspruch 6, wobei das Migrieren der Geschäftsprozessinstanz verweigert wird, wenn in der Vergangenheit des statischen Prozess-Kontrollflusses (KF2, KF3, KF3') der Geschäftsprozessinstanz mindestens eine Änderungsgruppe vorhanden und diese Änderungsgruppe keine Kompensations-Änderungsgruppe ist.
  8. Verfahren nach Anspruch 6 oder 7, wobei das Migrieren der Geschäftsprozessinstanz ermöglicht wird, wenn die mindestens eine Änderungsgruppe in der Vergangenheit des statischen Prozess-Kontrollflusses (KF2, KF3, KF3') der Geschäftsprozessinstanz eine Kompensations-Änderungsgruppe ist und ein Zustand eines Gültigkeitsbereichs (100, 500, 110, 510, 111, 511, 112, 512), der der Kompensations-Änderungsgruppe zugeordnet ist, als Endzustand erkannt wird.
  9. Verfahren nach Anspruch 7 oder 8, wobei das Migrieren der Geschäftsprozessinstanz verweigert wird, wenn die mindestens eine Änderungsgruppe in der Vergangenheit des statischen Prozess-Kontrollflusses (KF2, KF3, KF3') der Geschäftsprozessinstanz eine Kompensations-Änderungsgruppe ist und ein Zustand eines Gültigkeitsbereichs (100, 500, 110, 510, 111, 511, 112, 512), der der Kompensations-Änderungsgruppe zugeordnet ist, als Fehlerzustand erkannt wird.
  10. System zum Migrieren von Geschäftsprozessinstanzen, die von Geschäftsprozessmodellen mit Kompensationslogik abgeleitet wurden, das Folgendes umfasst: ein Modellierwerkzeug (20) zum Modellieren einer neuen Geschäftsprozessversion; eine Bereitstellungsinfrastruktur (10) zum Installieren des Geschäftsprozessmodells (2, 3) auf mindestens einem Server, der mit mindestens einem Client (30) Daten austauscht, wobei zugelassen wird, dass der mindestens eine Client (30) mit dem Geschäftsprozess (2, 3) interagiert, und eine Datenverarbeitungsmaschine (12), die eine Prozessinstanz durch Durchlaufen eines in dem Geschäftsprozessmodell (2, 3) beschriebenen Ablaufs interpretiert und ausführt, wobei die Datenverarbeitungsmaschine (12) durch Ausführen folgender Schritte ermittelt, ob eine entsprechende Geschäftsprozessinstanz, die aus dem Geschäftsprozessmodell (2, 3) abgeleitet wurde, für eine Migration infrage kommt: statische Analyse eines zugrunde liegenden Geschäftsprozessmodells (2, 3), um einen statischen Prozess-Kontrollfluss (KF2, KF3, KF3') zu erzeugen; Ableiten potenzieller Kompensations-Kontrollflüsse (KKF1 bis KKF6); Erkennen von Änderungen zwischen der neuen Geschäftsprozessversion und einer früheren Geschäftsprozessversion; Durchgehen der erkannten Änderungen, um Änderungen im Zusammenhang mit der Kompensationslogik (200, 210, 211, 212, 600, 610, 611, 612, 613) und Änderungen im Zusammenhang mit dem normalen Kontrollfluss (100, 500, 110, 510, 111, 511, 112, 512) des Geschäftsprozessmodells (2, 3) zu trennen und in Änderungsgruppen zu gruppieren, und Migrieren der Geschäftsprozessinstanz auf der Grundlage von Migrationsbedingungen, die auf der Grundlage der Änderungsgruppen ermittelt werden.
  11. System nach Anspruch 1, wobei die Datenverarbeitungsmaschine (12) den statischen Prozess-Kontrollfluss (KF2, KF3, KF3') durch Einbeziehen von Kompensationsdaten aus einer Datenbank (40) erweitert.
  12. System nach Anspruch 10 oder 11, wobei die Datenverarbeitungsmaschine (12) instanzbezogene Daten aus der Datenbank (40) an den statischen Prozess-Kontrollfluss (KF2, KF3, KF3') anhängt.
  13. System nach einem der vorangehenden Ansprüche 10 bis 12, wobei die Datenverarbeitungsmaschine (12) in dem Geschäftsprozessmodell Bereiche (100, 110, 111, 112, 500, 510, 511, 512, 513) mit angehängter Kompensationslogik (200, 210, 211, 212, 600, 610, 611, 612, 613) erkennt, die Kompensationslogik (200, 210, 211, 212, 600, 610, 611, 612, 613) in Bezug auf den Prozess-Kontrollfluss an einem logischen Ende der Bereiche (300, 310, 700, 710) anordnet und einen resultierenden abgeänderten Kontrollfluss (KF2, KF3, KF3') als Eingabe für die Migrations-Konformitätsanalyse verwendet.
  14. Datenverarbeitungsprogramm zum Ausführen in einem Datenverarbeitungssystem, wobei das Datenverarbeitungsprogramm Softwarecodeabschnitte zum Ausführen eines Verfahrens zum Migrieren von Geschäftsprozessinstanzen mit Kompensationslogik gemäß einem der vorangehenden Ansprüche 1 bis 9 umfasst und wobei das Verfahren ausgeführt wird, wenn das Programm auf dem Datenverarbeitungssystem ausgeführt wird.
  15. Computerprogrammprodukt, das auf einem computerverwendbaren Medium gespeichert ist und computerlesbare Programmmittel umfasst, die einen Computer zum Ausführen eines Verfahrens zum Migrieren von Geschäftsprozessinstanzen mit Kompensationslogik gemäß einem der vorangehenden Ansprüche 1 bis 9 veranlassen, wenn das Programm auf dem Computer ausgeführt wird.
DE102012210482A 2011-06-27 2012-06-21 Verfahren und System zum Migrieren von Geschäftsprozessinstanzen Withdrawn DE102012210482A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11171576.9 2011-06-27
EP11171576 2011-06-27

Publications (1)

Publication Number Publication Date
DE102012210482A1 true DE102012210482A1 (de) 2012-12-27

Family

ID=47321546

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012210482A Withdrawn DE102012210482A1 (de) 2011-06-27 2012-06-21 Verfahren und System zum Migrieren von Geschäftsprozessinstanzen

Country Status (2)

Country Link
US (1) US20120330703A1 (de)
DE (1) DE102012210482A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10176444B2 (en) * 2010-05-28 2019-01-08 International Business Machines Corporation Computer-implemented method, computer program product and system for analyzing a control-flow in a business process model
GB2559920A (en) 2015-10-16 2018-08-22 Wal Mart Stores Inc Sensor data analytics and alarm management
CA2954037A1 (en) 2016-01-21 2017-07-21 Wal-Mart Stores, Inc. Codeless information service for abstract retrieval of disparate data
US10732974B2 (en) 2016-05-05 2020-08-04 Walmart Apollo, Llc Engine agnostic event monitoring and predicting systems and methods

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7685604B2 (en) * 2006-06-29 2010-03-23 International Business Machines Corporation Business process execution language (BPEL) application generator for legacy interfaces
US20100121668A1 (en) * 2008-11-13 2010-05-13 International Business Machines Corporation Automated compliance checking for process instance migration
US8862491B2 (en) * 2009-01-15 2014-10-14 International Business Machines Corporation System and method for creating and expressing risk-extended business process models

Also Published As

Publication number Publication date
US20120330703A1 (en) 2012-12-27

Similar Documents

Publication Publication Date Title
DE60315996T2 (de) Verfahren und vorrichtung zur datenbewegung mittels sperren
DE60017457T2 (de) Verfahren zur isolierung eines fehlers in fehlernachrichten
DE10300545B4 (de) Vorrichtung, Verfahren, Speichermedium und Datenstruktur zur Kennzeichnung und Speicherung von Daten
DE112013000656T5 (de) System und Verfahren zum Verringern der Speichernutzung durch optimales Platzieren von virtuellen Maschinen in einem virtualisierten Rechenzentrum
DE112012004331T5 (de) Verwenden der Stärke von Rückverfolgbarkeitsverknüpfungen zum Überwachen der Software-Entwicklungsintegrität
DE102015121509A1 (de) Methodik und Vorrichtung zur Konsistenzprüfung durch Vergleich von Ontologiemodellen
DE112018007096T5 (de) Verfahren und vorrichtung zur software-visualisierung, sowie software-visualisierungsprogramm
DE102018116911A1 (de) Verfahren zur Erzeugung von Quellcode
DE102012210482A1 (de) Verfahren und System zum Migrieren von Geschäftsprozessinstanzen
DE202016008006U1 (de) Generierung von Integrationstests im Kleinen
DE112018005620T5 (de) Auftragsverwaltung in einem datenverarbeitungssystem
DE112017002779T5 (de) Formatspezifische Datenverarbeitungsoperationen
WO2012017056A1 (de) Verfahren und vorrichtung zur automatischen verarbeitung von daten in einem zellen-format
EP1745375A1 (de) Verfahren zur bestimmung von verklemmungen in nebenläufigen prozessen
DE102018117881A1 (de) System und verfahren zur verwendung von business intelligence für die regelbasierte herstellugnsprozessgestaltung
DE112011103505T5 (de) Verfahren zum Validieren von Laufzeitreferenzen
EP2990941B1 (de) Computerimplementiertes verfahren zur erzeugung eines steuergeräteprogrammcodes und diesbezügliche meldungsverwaltungsumgebung
DE112018006331B4 (de) Testfallgenerierungsvorrichtung, Testfallgenerierungsverfahren und Testfallgenerierungsprogramm
DE202012013449U1 (de) System für In-Line-Einfügung von Scriptabhängigkeiten
DE112020003689T5 (de) Reparaturunterstützungssystem und reparaturunterstützungsverfahren
DE202014011088U1 (de) System zur Beurteilung von Ressourcen in einem Computernetzwerk auf Übereinstimmung mit Anforderungen an ein Computersystem
DE102017212612A1 (de) Verfahren zum automatischen Erzeugen von Tests für die Software eines Fahrzeugs
DE102018123563A1 (de) Verfahren zur Zwischenkernkommunikation in einem Mehrkernprozessor
DE102018104752A1 (de) Verfahren zum Ausführen und Übersetzen eines Computerprogrammes in einem Rechnerverbund, insbesondere zum Steuern eines Mikroskops
DE112017006969T5 (de) Anforderungs-analysegerät, anforderungs-analyseverfahren und anforderungsanalyseprogramm

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: RICHARDT PATENTANWAELTE GBR, DE

Representative=s name: RICHARDT PATENTANWAELTE PART GMBB, DE

Representative=s name: RICHARDT PATENTANWAELTE PARTG MBB, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee