Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR ELIMINATING PROCESS ANOMALIES
Document Type and Number:
WIPO Patent Application WO/2019/174709
Kind Code:
A1
Abstract:
The invention relates to a method for monitoring process instances that are being executed and for eliminating process anomalies in said process instances, wherein (a) in a monitoring step a sensor, using a sensor definition, monitors a process log with respect to the process anomaly described in the sensor definition and detects process instances or processes comprising a plurality of process instances, that have the process anomaly described in the sensor definition, and (b) in a correction step, for a process instance detected in the monitoring step, the process anomaly is eliminated at the runtime of said process instance.

Inventors:
RINKE ALEXANDER (DE)
KLENK MARTIN (DE)
Application Number:
PCT/EP2018/056066
Publication Date:
September 19, 2019
Filing Date:
March 12, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CELONIS SE (DE)
International Classes:
G06F11/07; G06F11/00; G06F11/30; G06Q10/08
Foreign References:
US20160110277A12016-04-21
DE102004046611A12006-03-30
US20170102997A12017-04-13
Other References:
"Policy Technologies for Self-Managing Systems", 1 September 2008, IBM PRESS, article DAKSHI AGRAWAL ET AL: "Policy Technologies for Self-Managing Systems", pages: 139 - 145, XP055520929
Attorney, Agent or Firm:
2S-IP SCHRAMM SCHNEIDER BERTAGNOLL PATENT- UND RECHTSANWÄLTE PART MBB (DE)
Download PDF:
Claims:
Ansprüche

1. Computer implementiertes Verfahren zur Überwachung von sich in Ausfüh rung befindlichen Prozessinstanzen und zur Behebung von Prozessanomalien in diesen Prozessinstanzen, wobei jede Prozessinstanz eine Anzahl von Pro- zessschritte umfasst, wobei für die bereits ausgeführten Prozessschritte Pro- zessdaten in zumindest einem Prozessprotokoll gespeichert werden, wobei die Prozessdaten für jeden Prozessschritt zumindest

- eine Kennung des Prozessschrittes,

- eine Kennung, mit der der Prozessschritt eindeutig einer Prozessinstanz zuordenbar ist, und

- eine Reihenfolge des Prozessschrittes innerhalb der Prozessinstanz umfassen, wobei eine Prozessanomalie mit zumindest einer Sensordefinition beschrieben wird, wobei einer Prozessanomalie eine Menge von generischen Aktionen zur Behebung der Prozessanomalie zugeordnet ist, wobei

(a) in einem Überwachungsschritt ein Sensor unter Verwendung der Sens- ordefmition das Prozessprotokoll hinsichtlich der in der Sensordefinition beschriebenen Prozessanomalie überwacht und Prozessinstanzen oder mehrere Prozessinstanzen umfassende Prozesse detektiert, die die in der Sensordefinition beschriebenen Prozessanomalie aufweisen, und

(b) in einem Korrekturschritt für eine in dem Überwachungsschritt detek- tierte Prozessinstanz die Prozessanomalie zur Laufzeit dieser Prozessin stanz behoben wird, wobei

- aus der der Prozessanomalie zugeordneten Menge von generischen Aktionen zumindest eine generische Aktion ausgewählt wird, - basierend auf der ausgewählten generischen Aktion eine für den de- tektierten Prozess spezifische Prozesseingriffsinstanz erzeugt wird, und

- die Prozesseingriffsinstanz zur Behebung der Prozessanomalie der de- tektierten Prozessinstanz zur Ausführung gebracht wird.

Verfahren nach Anspruch 1 , wobei für jeden Prozessschritt die Prozessdaten während der Ausführung des Prozessschrittes oder am Ende des Prozess- schrittes in dem Prozessprotokoll gespeichert werden.

Verfahren nach Anspruch 1, wobei die Sensordefinition Daten und/oder An weisungen enthält, mit denen in dem Überwachungsschritt Prozessinstanzen und/oder Prozesse aus dem Prozessprotokoll selektiert werden, die ein vorbe- stimmtes Selektionskriterium erfüllen.

Verfahren nach dem vorhergehenden Anspruch, wobei das Selektionskrite- rium

- zumindest ein statischer oder dynamischer Parameter,

- zumindest ein vorbestimmtes Muster, und/oder

- zumindest ein mittels Mustererkennung festlegbarer Parameter ist, wobei bei einer Abweichung oder bei einer Nicht- Abweichung von dem Selektionskriterium das Selektionskriterium erfüllt ist und ein Abweichen o- der Nicht-Abweichen von dem Selektionskriterium indikativ für eine Pro zessanomalie ist.

Verfahren nach Anspruch 1, wobei eine Prozessinstanz mehrere Teilprozess instanzen aufweist, wobei die Prozessschritte der Teilprozessinstanzen in un terschiedlichen Quellsystemen ausgeführt werden können, und wobei für die bereits ausgeführten Prozessschritte der Teilprozessinstanzen die Prozessda ten in dem zumindest einen Prozessprotokoll zusammengeführt werden.

6. Verfahren nach Anspruch 1, wobei die Sensordefinition eine Information dar über umfasst, zu welchen Zeitpunkten der Überwachungsschritt ausgeführt wird. 7. Verfahren nach Anspruch 1, wobei vor dem Überwachungsschritt das Pro- zessprotokoll gemäß vorbestimmter Filterkriterien gefiltert wird und wobei das gefilterte Prozessprotokoll die Basis für den Überwachungsschritt ist.

8. Verfahren nach Anspruch 1 , wobei die in dem Prozessprotokoll gespeicherten Prozessdaten mit weiteren die jeweilige Prozessinstanz und/oder den jeweili gen Prozessschritt beschreibenden Hilfsdaten verknüpfbar sind, wobei beim Erzeugen der Prozesseingriffsinstanz diese mit den Hilfsdaten parametrisiert wird. 9. Verfahren nach dem vorhergehenden Anspruch, wobei die Prozesseingriffs instanz eine Anzahl von nicht-invasiven Aktionen und/oder eine Anzahl von invasiven Aktionen aufweist, wobei

- die nicht-invasiven Aktionen außerhalb des Quellsystems, in dem die je weilige Prozessinstanz ausgeführt wird, ausgeführt werden, und

- die invasiven Aktionen in dem Quellsystems, in dem die jeweilige Prozes sinstanz ausgeführt wird, ausgeführt werden.

10. Verfahren nach dem vorhergehenden Anspruch, wobei mit einer invasiven Aktion der Ablauf der jeweiligen Prozessinstanz in dem Quellsystem geän- dert und/oder gesteuert wird.

11. Verfahren nach Anspruch 9, wobei die nicht-invasiven Aktionen und/oder die invasiven Aktionen in für das jeweilige Quellsystem ausführbare Instruktio nen umgewandelt werden.

12. Verfahren nach Anspruch 1, wobei die Auswahl der zumindest einen generi schen Aktion aus der der Prozessanomalie zugeordneten Menge von generi schen Aktionen derart erfolgt, dass für eine Anzahl der in der Menge von generischen Aktionen enthaltenen Aktionen oder Kombinationen von Aktio- nen eine Simulation durchgeführt wird, in der ermittelt wird, welche Aktion oder Kombination von Aktionen angewandt auf die Prozessinstanz am besten zu einem vorbestimmten Ergebnis führt, wobei diese Aktion oder Kombina tion von Aktionen ausgewählt wird. 13. Verfahren nach Anspruch 7, wobei das Filterkriterium gebildet wird durch zumindest ein Attribut des Prozessprotokolls und die Ausprägungen, die die ses Attribut annehmen kann, wobei die Ausprägungen einem Nutzer zuge ordnet sind, wobei über die Zuordnung der Ausprägungen des Attributs zu dem Nutzer die in dem gefilterten Prozessprotokoll auftretenden Prozessano- malien ebenfalls diesem Nutzer zugeordnet sind.

14. Verfahren nach Anspruch 1, wobei das Prozessprotokoll in einem Arbeits speicher eines Computersystems gespeichert wird, vorzugsweise derart, dass aufeinanderfolgende Prozessschritte einer Prozessinstanz in benachbarten Speicherzellen gespeichert werden.

15. Verfahren nach Anspruch 6, wobei der Überwachungsschritt von einer Ano- malie-Detektions-Engine und der Korrekturschritt von einer Anomalie-Kor- rektur-Engine ausgeführt werden, wobei

- die Anomalie-Detektions-Engine die Ausführung des Sensors steuert, wo bei die Ausführung des Sensors gemäß den in der Sensordefinition ange gebenen Zeitpunkten getriggert wird, und

- die Anomalie-Detektions-Engine Informationen über die von dem Sensor detektierten Prozessinstanzen der Anomalie-Korrektur-Engine übergibt.

Description:
Verfahren zur Behebung von Prozessanomalien Gebiet der Erfindung

Die Erfindung betrifft ein Verfahren zur Überwachung von sich in Ausführung be- findlichen Prozessinstanzen und zur Behebung von Prozessanomalien in diesen Prozessinstanzen.

Hintergrund der Erfindung

Immer mehr Unternehmen setzen Verfahren ein, um Ist-Prozesse zu analysieren. Die zu analysierenden Prozesse können in einem Computersystem, mit Hilfe eines Computersystems oder außerhalb eines Computersystems ausgeführt worden sein. Bei den außerhalb eines Computersystems ausgeführten Prozessen kann es sich um technische Prozesse, etwa um Montageprozesse, Herstellungsprozesse oder der gleichen handeln.

Ein ausgeführter Prozess wird als Prozessinstanz eines bestimmten Prozesses be zeichnet. Eine Prozessinstanz kann hierbei mehrere Prozessschritte umfassen. Jeder Prozessschritt erzeugt in der Regel Daten, die in einem Computersystem gespei chert werden. Beispielsweise kann in dem Computersystem gespeichert werden, wer wann welchen Prozessschritt eines Bestellprozesses ausgeführt hat. Für einen Montageprozess kann beispielsweise gespeichert werden, wann welcher Montage schritt mit welchen Parametern (z.B. das Drehmoment beim Befestigen von Schrau ben) bei der Montage eines Fahrzeuges ausgeführt wurde - die Daten hierzu können z.B. von Messwertgebern bereitgestellt werden. Aus diesen gespeicherten Daten können Informationen extrahiert werden, die für die Analyse der Prozesse relevant sind. Bei diesen Analysen handelt es sich um rückwärtsgewandte bzw. retrospektive Analysen von bereits ausgeführten Prozessinstanzen, die Informationen über Schwächen der jeweiligen Prozesse liefern können. Allerdings ist ein proaktives Eingreifen in die Prozessinstanzen zur Steuerung fehlerhafter Prozessinstanzen nicht möglich, da die fehlerhaften Prozessinstanzen bereits ausgeführt wurden und Fehler in einzelnen Prozessinstanzen daher erst nach deren Ausführung entdeckt werden können. So kann beispielsweise für einen Montageprozess eines Fahrzeu- ges erst nach Abschluss des Montageprozesses festgestellt werden, dass die Mon tage dieses Fahrzeuges eine vorbestimmte Montagedauer überschritten hat. Mit den aus dem Stand der Technik bekannten Verfahren ist es allenfalls möglich, anhand der Analyse bereits ausgeführter Prozessinstanzen Verbesserungen an zukünftig auszuführenden Prozessinstanzen vorzunehmen. Fehler oder Anomalien - die trotz Verbesserungen des Prozesses auftreten können - in sich in Ausführung befindli chen Prozessinstanzen können aber nicht erkannt oder gar behoben werden.

Aufgabe der Erfindung

Aufgabe der Erfindung ist es daher, Lösungen bereitzustellen, die es ermöglichen, Fehler bzw. Anomalien bereits während der Ausführung der Prozessinstanzen zu erkennen und zu beheben.

Erfindungsgemäße Lösung Diese Aufgabe wird erfindungs gemäß durch ein Verfahren nach dem unabhängigen Anspruch gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben.

Bereit gestellt wird demnach in Verfahren zur Überwachung von sich in Ausfüh rung befindlichen Prozessinstanzen und zur Behebung von Prozessanomalien in diesen Prozessinstanzen, wobei jede Prozessinstanz eine Anzahl von Prozess- schritte umfasst, wobei für die bereits ausgeführten Prozessschritte der Prozessin stanzen Prozessdaten in zumindest einem Prozessprotokoll gespeichert werden, wobei die Prozessdaten für jeden Prozessschritt zumindest

- eine Kennung des Prozessschrittes,

- eine Kennung, mit der der Prozessschritt eindeutig einer Prozessinstanz zuord enbar ist, und

- eine Reihenfolge des Prozessschrittes innerhalb der Prozessinstanz

umfassen, wobei eine Prozessanomalie mit zumindest einer Sensordefinition be schrieben wird, wobei einer Prozessanomalie eine Menge von generischen Aktio nen zur Behebung der Prozessanomalie zugeordnet ist, wobei

(a) in einem Überwachungsschritt ein Sensor unter Verwendung der Sensordefini tion das Prozessprotokoll hinsichtlich der in der Sensordefinition beschriebe nen Prozessanomalie überwacht und Prozessinstanzen oder mehrere Prozess instanzen umfassende Prozesse detektiert, die die in der Sensordefinition be schriebenen Prozessanomalie aufweisen, und

(b) in einem Korrekturschritt für eine in dem Überwachungsschritt detektierte Pro zessinstanz die Prozessanomalie zur Laufzeit dieser Prozessinstanz behoben wird, wobei

- aus der der Prozessanomalie zugeordneten Menge von generischen Aktio nen zumindest eine generische Aktion ausgewählt wird,

- basierend auf der ausgewählten generischen Aktion eine für den detektierten Prozess bzw. eine für die detektierte Prozessinstanz spezifische Prozessein griffsinstanz erzeugt wird, und - die Prozesseingriffsinstanz zur Behebung der Prozessanomalie der detek- tierten Prozessinstanz oder des detektierten Prozesses zur Ausführung ge bracht wird. Eine Prozessanomalie ist ein Fehler in einer sich in Ausführung befindlichen Pro- zessinstanz. Eine Prozessanomalie kann aber auch eine Abweichung einer Prozes- sinstanz von einem vorgegebenen Sollwert sein, wobei die Abweichung nicht un bedingt ein Fehler sein muss, etwa wenn ein Drehmoment, mit dem eine Schraube befestigt wird ein Soll-Drehmoment überschreitet aber noch unterhalb eines maxi- mal zulässigen Drehmoments liegt.

Mit dem erfindungsgemäßen Verfahren kann aktiv in sich in Ausführung befindli che Prozessinstanzen eingegriffen werden. So kann beispielsweise in einen konkre ten technischen Prozess (z.B. in einem Pasteurisierungsvorgang) eingegriffen wer- den, wenn der Sensor in dem Überwachungsschritt eine Anomalie (z.B. das Über schreiten der Pasteurisierungstemperatur) feststellt. Mit dem Eingriff in den Prozess kann die Anomalie behoben (z.B. kann die Pasteurisierungsvorrichtung veranlasst werden die zugeführte Wärmeenergie zu reduzieren) In einer Ausgestaltung der Erfindung werden für jeden Prozessschritt die Prozess daten während der Ausführung des Prozessschrittes oder am Ende des Prozess schrittes in dem Prozessprotokoll gespeichert.

Die Sensordefinition kann Daten und/oder Anweisungen enthalten, mit denen in dem Überwachungsschritt Prozessinstanzen und/oder Prozesse aus dem Pro zessprotokoll selektiert werden, die ein vorbestimmtes Selektionskriterium erfül len.

Das Selektionskriterium kann

- zumindest ein statischer oder dynamischer Parameter,

- zumindest ein vorbestimmtes Muster, und/oder - zumindest ein mittels Mustererkennung festlegbarer Parameter

sein, wobei bei einer Abweichung oder bei einer Nicht- Abweichung von dem Se- lektionskriterium das Selektionskriterium erfüllt ist und ein Abweichen oder Nicht- Abweichen von dem Selektionskriterium indikativ für eine Prozessanomalie ist.

Eine Prozessinstanz kann mehrere Teilprozessinstanzen aufweisen, wobei die Pro- zessschritte der Teilprozessinstanzen in unterschiedlichen Quellsystemen ausge- führt werden können, und wobei für die bereits ausgeführten Prozessschritte der Teilprozessinstanzen die Prozessdaten in dem zumindest einen Prozessprotokoll zusammengeführt werden.

Einerseits werden so die Prozessdaten in einem zentralen Prozessprotokoll gespei- chert, selbst wenn die Teilprozesseinstanzen in unterschiedlichen Systemen ausge- führt werden (z.B. wenn ein Teilprozess eines Montageprozesses mit einer ersten Montagemaschine und ein weiterer Teilprozess dieses Montageprozesses mit einer zweiten Montagemaschine durchgeführt werden).

In einer Ausgestaltung der Erfindung kann die Sensor defmition eine Information darüber umfassen, zu welchen Zeitpunkten der Überwachungsschritt ausgeführt wird. Je nach Bedarf ist so auch eine Echtzeitüberwachung von sich in Ausführung befindlichen Prozessinstanzen möglich.

Es kann vorteilhaft sein, wenn vor dem Überwachungsschritt das Prozessprotokoll gemäß vorbestimmter Filterkriterien gefiltert wird, wobei das gefilterte Prozesspro- tokoll die Basis für den Überwachungsschritt ist. Damit kann die Menge der zu prüfenden Einträge in dem Prozessprotokoll bei Bedarf reduziert werden, was ins- besondere dann von Vorteil ist, wenn das Prozessprotokoll sehr viele Daten (z.B. Prozessdaten zu mehreren hundert Millionen Prozessschritten) aufweist. Die Ver arbeitungsgeschwindigkeit kann so erhöht werden. In einer Ausgestaltung der Erfindung können die in dem Prozessprotokoll gespei- cherten Prozessdaten mit weiteren die jeweilige Prozessinstanz und/oder den jewei- ligen Prozessschritt beschreibenden Hilfsdaten verknüpfbar sein, wobei beim Er zeugen der Prozesseingriffsinstanz diese mit den Hilfsdaten parametrisiert wird. Damit wird es möglich eine auf die jeweilige Prozessinstanz (für die eine Anomalie behoben werden soll) angepasst Prozesseingriffsinstanz zu erzeugen und die Sens- ordefmition um nicht in dem Prozessprotokoll gespeicherten Daten zu erweitern.

Die Prozesseingriffsinstanz kann eine Anzahl von nicht-invasiven Aktionen und/o der eine Anzahl von invasiven Aktionen aufweisen, wobei

- die nicht-invasiven Aktionen außerhalb des Quellsystems, in dem die jeweilige Prozessinstanz ausgeführt wird, ausgeführt werden, und

- die invasiven Aktionen in dem Quellsystems, in dem die jeweilige Prozessin stanz ausgeführt wird, ausgeführt werden.

Mit einer invasiven Aktion kann der Ablauf der jeweiligen Prozessinstanz in dem Quellsystem geändert und/oder gesteuert wird.

Die nicht-invasiven Aktionen und/oder die invasiven Aktionen können in für das jeweilige Quellsystem ausführbare Instruktionen umgewandelt werden.

Die Auswahl der zumindest einen generischen Aktion aus der der Prozessanomalie zugeordneten Menge von generischen Aktionen kann derart erfolgen, dass für eine Anzahl der in der Menge von generischen Aktionen enthaltenen Aktionen oder Kombinationen von Aktionen eine Simulation durchgeführt wird, in der ermittelt wird, welche Aktion oder Kombination von Aktionen angewandt auf die Prozess instanz am besten zu einem vorbestimmten Ergebnis führt, wobei diese Aktion oder Kombination von Aktionen ausgewählt wird. Für mehrere potentiell in Frage kom mende Aktionen kann so eine "optimale" Aktion oder Kombination von Aktionen ausgewählt werden so kann verhindert werden, dass eine Aktion oder eine Kombi nation von Aktionen an der laufenden Prozessinstanz "getestet" werden müssen. Das Filterkriterium kann gebildet werden durch zumindest ein Attribut des Pro- zessprotokolls und die Ausprägungen, die dieses Attribut annehmen kann, wobei die Ausprägungen einem Nutzer zugeordnet sind, wobei über die Zuordnung der Ausprägungen des Attributs zu dem Nutzer die in dem gefilterten Prozessprotokoll auftretenden Prozessanomalien ebenfalls diesem Nutzer zugeordnet sind.

Besonders vorteilhaft ist es, wenn das Prozessprotokoll in einem Arbeitsspeicher eines Computersystems gespeichert wird, vorzugsweise derart, dass aufeinander- folgende Prozessschritte einer Prozessinstanz in benachbarten Speicherzellen ge speichert werden. Damit kann das Prozessprotokoll als fortlaufender Stream aus dem Speicher ausgelesen werden, d.h. Speicherzelle für Speicherzelle. Komplexe Adressierungen oder Adressierungsvorgänge (etwa um Referenzen zwischen auf einanderfolgende Prozessschritte einer Prozessinstanz abzubilden), die nachteilig für die Performance sind, können so vermieden werden. Wenn bekannt ist, wie viele Speicherzellen von einer Prozessinstanz belegt werden, können diese zudem block weise ausgelesen werden.

Der Überwachungsschritt kann von einer Anomalie-Detektions-Engine und der Korrekturschritt kann von einer Anomalie-Korrektur-Engine ausgeführt werden, wobei

- die Anomalie-Detektions-Engine die Ausführung des Sensors steuert, wobei die Ausführung des Sensors gemäß den in der Sensor defmition angegebenen Zeit punkten getriggert wird, und

- die Anomalie-Detektions-Engine Informationen über die von dem Sensor detek- tierten Prozessinstanzen der Anomalie-Korrektur-Engine übergibt.

Die Anomalie-Detektions-Engine und die Anomalie-Korrektur-Engine können in einem Computersystem ausgeführt werden. Kurzbeschreibung der Figuren

Einzelheiten und Merkmale der Erfindung sowie konkrete Ausgestaltungen der Er findung ergeben sich aus der nachfolgenden Beschreibung in Verbindung mit der Zeichnung. Es zeigt:

Fig. 1 ein Blockdiagramm einer Anomalie-Detektions-Engine;

Fig. 2 ein Blockdiagramm einer Anomalie-Korrektur-Engine;

Fig. 3 ein Blockdiagramm der Routing-Engine;

Fig. 4 ein Blockdiagramm der Prozess-Eingriffs-Engine;

Fig. 5 ein Blockdiagramm der Benachrichtigungs-Engine; Fig. 6 ein Blockdiagramm eines Gesamtsystems der Erfindung;

Fig. 7 ein konkretes Beispiel einer sich in Ausführung befindlichen Prozes sinstanz;

Fig. 8 ein Blockdiagramm zur Verdeutlichung des grundlegenden erfinderi schen Verfahrens; und

Fig. 9 ein Netzwerk aus Prozessprotokollen, Anomalie-Detektions-Engines und Anomalie-Korrektur-Engines.

Detaillierte Beschreibung der Erfindung

Mit der Erfindung wird es erstmals möglich, die Ausführung von Prozessinstanzen zu überwachen und während der Ausführung einer Prozessinstanz in diesen einzu- greifen, um einen Fehler oder eine Anomalie in dieser Prozessinstanz zu beheben. In diesem Sinne wird auch ein sich in Ausführung befindlicher Prozess als Prozes sinstanz diese Prozesses bezeichnet. Die Behebung des Fehlers oder der Anomalie erfolgt erfindungsgemäß durch Aus- führen einer Prozesseingriffsinstanz, die in Abhängigkeit von dem detektierten Feh ler oder der Anomalie während der Ausführung der Prozessinstanz erzeugt wird. Mit einer solchen Prozesseingriffsinstanz kann beispielsweise der weitere Ablauf der Prozessinstanz beeinflusst bzw. gesteuert werden.

Beispielsweise kann in einem Quellsystem, in dem ein Bestellprozess ausgeführt wird, eine Zahlungssperre veranlasst werden, wenn die Rechnung eines Lieferanten vor der Lieferung der bestellten Ware eingeht. Gemäß eines anderen Beispiels kann eine Bestückungsmaschine für Leiterplatten in einem laufenden Bestückungsvor gang veranlasst werden, die Bestückungsreihenfolge der noch zu montierenden Komponenten zu ändern, wenn aufgrund der zuletzt montierten Komponenten ein Überschreiten der maximalen Bestückungsdauer droht. Eine Prozesseingriffsinstanz enthält demnach eine oder mehrere Anweisungen, die angepasst sind, die entsprechende Prozessinstanz zu ändern oder zu steuern. In dem vorstehenden Beispiel des Bestellprozesses kann diese Anweisung z.B. eine SAP ® - Transaktion sein, mit die Zahlungssperre veranlasst wird, wenn der Bestellprozes ses in einem SAP ® -System ausgeführt wird. In dem Beispiel der Bestückungsma- schine können die Anweisungen von der Bestückungsmaschine interpretierbare In struktionen sein, die eine entsprechende Änderung der Bestückungsreihenfolge durch die Bestückungsmaschine bewirken.

Erfindungsgemäß können beliebige Arten von Prozessinstanzen überwacht und während der Ausführung Anomalien oder Fehler behoben werden. Insbesondere können

- ausschließlich in einem Computersystem ausgeführte Prozessinstanzen (z.B. In stanzen eines Bestellprozesses oder Instanzen einer Bezahlprozesses), - ausschließlich durch technische Vorrichtungen ausgeführte Prozessinstanzen (z.B. ein Montageprozess, der durch eine oder mehrere Montagemaschinen aus- geführt wird oder eine Lackiervorgang, der durch einen Lackierroboter ausge- führt wird), und

- Prozessinstanzen, die teilweise in einem Computersystem und teilweise durch technische Vorrichtungen ausgeführt werden (z.B. ein Just-In-Time Produkti onsprozess, der einen in einem Computersystem ausgeführten Bestellprozess und einen durch Produktionsmaschinen ausgeführten Produktionsprozess um fasst),

überwacht und während der Ausführung Anomalien oder Fehler behoben werden.

Eine Prozessinstanz umfasst in der Regel mehrere Prozessschritte. So kann eine Instanz eines Bestellprozesses einen Schritt zum Prüfen der Verfügbarkeit eines Produktes, einen Schritt zum Bestellen einer bestimmten Menge des Produktes und einen Schritt zum Empfangen einer Bestellbestätigung umfassen. Eine Instanz eines durch eine Lackiermaschine ausgeführten Lackierprozesses kann einen Schritt zum Anfordem einer bestimmten Farbe aus einem Farblager, einen Schritt zum Aufträ gen der Farbe auf den Gegenstand und einen Schritt zum Aufträgen eines Klarla ckes umfassen.

Für die bereits ausgeführten Prozessschritte einer sich in Ausführung befindlichen Prozessinstanz werden Prozessdaten in einem Prozessprotokoll gespeichert. Neben den im Prozessprotokoll zu speichernden Prozessdaten können bei der Ausführung der Prozessschritte weitere Daten anfallen oder erzeugt werden, die nicht in dem Prozessprotokoll gespeichert werden müssen. Die Prozessdaten und diese weiteren Daten werden in ihrer Gesamtheit Quelldaten genannt. Es kann vorteilhaft sein, die Quelldaten in dem Quellsystem (z.B. in dem Computersystem, in dem ein Bestell prozess ausgeführt wird, oder in einer Montageeinrichtung zugeordneten Spei chereirichtung) zu speichern und aus dem Quellsystem die Prozessdaten zu extra- hieren und die extrahierten Prozessdaten in dem Prozessprotokoll zu speichern. Vorteilhaft ist es hierbei, wenn die Prozessdaten in Echtzeit in dem Prozessproto- koll gespeichert werden, d.h. unmittelbar nach der Ausführung des entsprechenden Prozessschrittes. Dadurch wird auch eine Echtzeitüberwachung (oder eine annä hernde Echtzeitüberwachung) der Prozessinstanzen möglich, was wiederum ein Eingreifen oder Steuern der Prozessinstanz in Echtzeit ermöglicht. Dies ist insbe- sondere dann wichtig, wenn die Prozessschritte einer Prozessinstanz in kurzen zeit lichen Abständen ausgeführt werden (etwa in einem Bestückungsprozess, bei dem innerhalb weniger Sekunden eine Vielzahl von Komponenten auf eine Leiterplatte montiert wird).

Das Prozessprotokoll enthält zumindest die Informationen, welche Prozessschritte für welche Objekte (z.B. Bestellungen, Produktionsgüter, Logistikvorgänge, Mon tageprozesse) zu welchen Zeitpunkten stattgefunden haben, also für jeden Prozess schritt zumindest

- eine Kennung des Prozessschrittes,

- eine Kennung, mit der der Prozessschritt eindeutig einer Prozessinstanz zuord enbar ist, und

- eine Reihenfolge des Prozessschrittes innerhalb der Prozessinstanz. Die Reihenfolge des Prozessschrittes innerhalb der Prozessinstanz kann beispiels weise durch eine fortlaufende eindeutige Nummer oder durch einen Zeitstempel (etwa der Ausführungszeitpunkt des Prozessschrittes) angegeben werden. Andere Arten, die Reihenfolge anzugeben sind möglich, etwa indem ein Prozessschritt auf seinen nachfolgenden Prozessschritt referenziert.

Zusätzlich können durch das Prozessprotokoll Stammdateninformationen zu den Objekten bzw. Prozessinstanzen bereitgestellt werden, beispielsweise Menge und Preis einer Bestellung, den Produktionstyp eines Gutes, die Transportroute eines Logistikvorgangs, oder Maximaldauer und -Temperatur eines Pasteurisierungsvor- ganges. Diese Stammdateninformationen können entweder in dem Prozessproto koll gespeichert werden oder mittels der Kennung des Prozessschrittes bzw. der Kennung der Prozessinstanz referenziert werden. Diese Stammdateninformationen werden auch Hilfsdaten genannt.

Eine Prozessinstanz kann mehrere Teilprozessinstanzen aufweisen, wobei die Pro- zessschritte der Teilprozessinstanzen in unterschiedlichen Quellsystemen ausge- führt werden können. Beispielsweise kann ein Beschaffungsprozess (= Prozessin stanz) einen Bestellprozess (= erste Teilprozessinstanz) und einen Bezahlprozess (= zweite Teilprozessinstanz) umfassen, wobei der Bestellprozess in einem Bestell- system und der Bezahlprozess in einem Buchhaltungssystem ausgeführt werden. In einem Produktionsprozess (= Prozessinstanz) können das Schleifen (= erste Teil- prozessinstanz) eines Bauteils von einer Schleifmaschine und das Lackieren (= zweite Teilprozessinstanz) des Bauteils von einem Lackierroboter durchgeführt werden. Die Prozessdaten der ausgeführten Prozessschritte der T eilprozessinstanzen können in separaten Prozessprotokollen gespeichert werden. Vorteilhaft ist es jedoch, wenn die Prozessdaten der Teilprozessinstanzen in einem gemeinsamen Prozessprotokoll gespeichert bzw. zusammengeführt werden. Die Prozessschritte einer konkreten Prozessinstanz werden nachfolgend auch Pro- zesspfad genannt. Demnach weist ein Prozessprotokoll mehrere Prozesspfade auf.

Die Prozessdaten werden bei einer in einem Computersystem ausgeführten Prozes- sinstanz in der Regel von diesem Computersystem bereitgestellt. Das Computer- System in dem eine Prozessinstanz ausgeführt wird, wird auch als Quellsystem be- zeichnet. Bei Prozessinstanzen, die von technischen Einrichtungen, etwa Produkti onsmaschinen, ausgeführt werden, werden die Prozessdaten in der Regel von der jeweiligen technischen Einrichtung, etwa von Messwertgebern (z.B. von einem Drehmoment- und Drehwinkelsensor eines Verschraubungsprozesses), bereitge- stellt. Die technische Einrichtung wird ebenfalls als Quellsystem bezeichnet. Das Quellsystem ist demnach jenes System, das die Prozessinstanz ausführt. Wird eine Prozessinstanz von mehreren Quellsystemen ausgeführt (z.B. eine erste Teilprozes- sinstanz von Quellsystem A und eine zweite Teilprozessinstanz von Quellsystem B) werden diese Quellsysteme gemeinsam als Quellsystem bezeichnet. Nachfolgend wird auch der Begriff "Prozessanomalie" verwendet. Eine Pro- zessanomalie ist ein in einer sich in Ausführung befindlichen Prozessinstanz auf- tretender Fehler oder ein Ablauf einer Prozessinstanz, der zu unerwünschten Ergeb- nissen führt oder von einem vorbestimmten Sollprozess abweicht. Vorteilhaft ist es, wenn das Prozessprotokoll in einem Arbeitsspeicher eines Com putersystems gespeichert wird, vorzugsweise derart, dass aufeinanderfolgende Pro- zessschritte einer Prozessinstanz in benachbarten Speicherzellen gespeichert wer den. Die Prozessschritte können so als fortlaufender Stream und in der richtigen Reihenfolge aus dem Arbeitsspeicher ausgelesen werden. Aufwändige Sortierun- gen können so entfallen.

Fig. 1 zeigt ein Blockdiagramm einer Anomalie-Detektions-Engine zur Verdeutli chung des Teilverfahrens zur Überwachung von sich in Ausführung befindlichen Prozessinstanzen und des Mechanismus zur Entdeckung bzw. Detektion von Pro- zessanomalien.

Basis für die Anomalie-Detektions-Engine ist das Prozessprotokoll, das gleichzei tig den Dateninput für die Anomalie-Detektions-Engine bildet. Die Anomalie-De tektions-Engine ist angepasst, das Prozessprotokoll zu überwachen und Anomalien in den allen oder in ausgewählten im Prozessprotokoll gespeicherten Prozessinstan zen zu detektieren.

Die Anomalie bzw. Anomalien, die in einem Prozessprotokoll bzw. für Prozessin stanzen in dem Prozessprotokoll aufgespürt werden sollen, werden durch eine oder mehrere Sensordefinition charakterisiert. In einem Überwachungsschritt überwacht ein Sensor der Anomalie-Detektions-Engine unter Verwendung der Sensordefiniti onen das Prozessprotokoll hinsichtlich der in den Sensordefinitionen beschriebenen Prozessanomalien. Gleichzeitig detektiert der Sensor Prozessinstanzen oder meh rere Prozessinstanzen umfassende Prozesse, die die in der Sensordefinition be- schriebenen Prozessanomalien aufweisen.

Die Sensordefinition kann sich sowohl auf Anomalien / Probleme in Geschäftspro zessen als auch auf Anomalien / Probleme in technischen Prozessen beziehen. Bei spielhafte Umfelder im Rahmen von Geschäftsprozessen sind Einkaufsprozesse, Vertriebsprozesse, Abrechnungsprozesse, das IT Service Management, die Weba nalytik oder die Stammdatenverwaltung. Beispiele für technische Prozesse umfas sen Logistikprozesse, Produktionsprozesse oder Montageprozesse.

Nachfolgend werden Beispiele für verschiedene Klassen von Anomalien wiederge- geben, die mit der erfindungsgemäßen Anomalie-Detektions-Engine überwacht und detektiert werden können, wobei auch weitere Klassen von Anomalien möglich sind.

- Klasse Zeitüberschreitung: Eine Zeitüberschreitung ist dadurch gekennzeichnet, dass eine Aktivität B nicht innerhalb einer vorgegebenen Zeitspanne nach dem Auftreten einer Aktivität A eintritt bzw. ausgeführt wird, d.h. eine vorgegebenen Zeitspanne zwischen zwei Aktivitäten bzw. Prozessschritten einer Prozessin stanz wird überschritten. Beispiele:

Zur Ausführung eines Produktionsvorganges müssen Rohstoffe bestellt werden. Die Rohstoffe werden nicht innerhalb der vorgegebenen Zeit spanne bestellt, sodass der mit dem Produktionsvorgang verknüpfte Kun- denauftrag nicht zum Kundenwunschtermin bedient werden kann. Die vorgeschriebene Erhitzungsdauer bei der Pasteurisierung von Milch wird überschritten.

- Klasse Zeitunterschreitung: Eine Zeitunterschreitung entsteht, wenn eine Min destzeitdifferenz zwischen zwei Prozessschritten einer Prozessinstanz unter schritten wird.

Beispiele:

Die Gefahrgutlieferung eines Lieferanten tritt vor dem angegebenen Liefer termin ein und führt zu einem Überlauf des Gefahrgutlagers.

Die zur Abhärtung von Stahl notwendige Mindestkühldauer im Abschre ckungsprozess wird nicht eingehalten.

- Klasse unerlaubtes Prozessmuster: Ein unerlaubtes Prozessmuster ist beispiels weise charakterisiert durch eine unerlaubte chronologische Abfolge von Pro zessschritten einer Prozessinstanz oder durch eine unerlaubte Kombination von Prozessparametem mehrerer Prozessschritte einer Prozessinstanz.

Beispiele:

Die Rechnung eines Lieferanten geht vor dem Eingang des bestellten Gutes ein.

Die Montagereihenfolge beim maschinengesteuerten Zusammenbau einer Maschine wird nicht eingehalten.

- Klasse Verletzung von Verantwortlichkeiten: Eine Verletzung von Verantwort lichkeiten tritt ein, wenn z.B. zwei unterschiedliche Prozessschritte einer Pro zessinstanz unerlaubterweise von derselben Person (oder in technischen Prozes sen von demselben Objekt/Maschine) ausgeführt werden. Beispiele:

Die Freigabe einer Lieferantenrechnung sowie die Zahlung derselben wer den von der gleichen Person ausgeführt, sodass das Vier-Augen-Prinzip ver- letzt wird.

Die initiale Montage und die Kontrolle des Radstands beim Fahrzeugbau werden mit dem gleichen Messgerät durchgeführt.

Die vorstehend genannten Klassen von Anomalien und die dazugehörigen Beispiele beziehen sich auf die Erkennung von Anomalien in einzelnen Prozessinstanzen bzw. in einzelnen Prozesspfaden.

Neben der Prozessinstanz-spezifischen Erkennung von Anomalien ermöglicht das erfindungsgemäß Verfahren auch die Überwachung und Detektion von Prozessin- stanz-übergreifenden Anomalien. Hierdurch kann für einen Prozess (= Instanzen dieses Prozesses) als Gesamtes ermittelt werden, ob er sich in einem normalen oder nicht normalen Zustand befindet. Folgende Typen von Anomalien können bei spielsweise überwacht und detektiert werden. - Anomalie vom Typ "Häufung" : Eine Anomalie vom Typ "Häufung" bezieht sich auf die in zeitlicher Hinsicht ungewöhnliche Anhäufung des Auftretens eines bestimmten Prozessschrittes über mehrere Prozessinstanzen hinweg. Das Attri but "ungewöhnlich" kann sich hierbei entweder auf einen statisch vorgegebenen Referenzwert oder einen dynamisch ermittelten Wert aus der Vergangenheit be- ziehen.

Beispiele:

Die Absagequote von Kundenaufträgen nimmt ungewöhnlich stark zu. - Der Ausschussanteil in einem Produktionsprozess steigt statistisch signifi kant an. - Anomalie vom Typ "Durchlaufzeit": Eine Durchlaufzeitenanomalie beschreibt die ungewöhnliche zeitliche Entwicklung der Durchlaufzeit zwischen zwei Pro- zessschritten über mehrere Prozessinstanzen hinweg. Mit dem erfmdungsgemä- ßen Verfahren kann eine signifikante Abweichung von einem statischen Refe- renzwert oder von einem dynamisch ermittelten Referenzwert aus den Durch laufzeitwerten der Vergangenheit ermittelt werden.

Beispiele:

Der Freigabeprozess (z.B. die Dauer zwischen der Erstellung und Freigabe einer Bestellung) dauert über mehrere Prozessinstanzen hinweg plötzlich ungewöhnlich lange.

Die Liegezeit eines Erzeugnisses innerhalb des Produktionssystems nimmt ungewöhnlich hohe Werte an.

Die Sensordefinition weist Daten und/oder Anweisungen auf, mit denen in dem Überwachungsschritt Prozessinstanzen und/oder Prozesse aus dem Prozessproto- koll selektiert werden, die ein vorbestimmtes Selektionskriterium erfüllen. Bei- spiele für ein vorbestimmtes Selektionskriterium sind vorstehend zu den Klassen von Anomalien bzw. Typen von Anomalien genannten Beispiele.

In dem vorstehend zur Klasse "Zeitüberschreitung" genannten Beispiel der Erhit zungsdauer bei der Pasteurisierung von Milch könnte die Anweisung bzw. das Se- lektionskriterium der Sensordefinition lauten: "Finde alle Prozessinstanzen des Pro zesses 'Pasteurisieren von Milch', bei denen die Erhitzungsdauer in dem Erhitzungs schritt größer als 8 Minuten ist". Die Erhitzungsdauer wird von einem Zeitgeber erfasst und zur Speicherung in dem Prozessprotokoll bereitgestellt. Sobald für eine Prozessinstanz des Prozesses "Pasteurisieren von Milch" der Prozessschritt "Erhit- zungsschritt" ausgeführt wurde, wird für diesen Prozessschritt ein entsprechender Eintrag in Prozessprotokoll erzeugt. Die Erhitzungsdauer kann direkt in dem Pro- zessprotokoll gespeichert werden. Alternativ kann die Erhitzungsdauer für diesen Prozessschritt in einer externen Tabelle gespeichert werden, auf die von dem Pro- zessprotokoll aus referenziert wird. Direkt nach Erzeugen des entsprechenden Ein- träges in dem Prozessprotokoll kann der Sensor der Anomalie-Detektions-Engine, der das Prozessprotokoll gemäß dieser Sensordefinition überwacht, diese Anomalie detektieren und die detektierte Anomalie zur Behebung dieser Anomalie an eine Anomalie-Korrektur-Engine (die weiter unten näher beschrieben wird) übergeben. Bei dem eben genannten Beispiel der Erhitzungsdauer bei der Pasteurisierung von Milch kann alternativ die Anweisung bzw. das Selektionskriterium der Sensordefi- nition folgendermaßen lauten: "Finde alle Prozessinstanzen des Prozesses’Pasteu- risieren von Milch', bei denen seit dem Start der Erhitzung mehr als 8 Minuten ver gangen sind". Der Start der Erhitzung kann in dem Prozessprotokoll beispielsweise durch einen Zeitstempel angegeben werden. Hierbei wird also die Erhitzungsdauer nicht selbst im Prozessprotokoll gespeichert. Vielmehr überprüft der jeweilige Sen sor fortlaufend (z.B. alle 5 Sekunden), ob seit dem Start der Erhitzung die vorgege benen Erhitzungsdauer (hier 8 Minuten) bereits überschritten wurden. Diese alternative Sensordefinition hat gegenüber der ersten Sensordefinition den wesentlichen Vorteil, dass bereits während der Ausführung des Erhitzungsschrittes ein Überschreiten der vorgegebenen Erhitzungsdauer detektiert bzw. erkannt wer den kann (bei der ersten Sensordefinition hingegen kann erst nach dem Beenden des Erhitzungsschrittes ein überschreiten der vorgegebenen Erhitzungsdauer detek- tiert werden). Dadurch kann die Anomalie-Korrektur-Engine mittels einer entspre chend Prozesseingriffsinstanz noch in den laufenden Erhitzungsschritt eingreifen und beispielsweise einer Pasteurisierungsvorrichtung Instruktionen zur Verfügung stellen, mit denen die Pasteurisierungsvorrichtung veranlasst wird, den Erhitzungs schritt unverzüglich zu beenden. Die vorstehend genannten Klassen und Typen von Anomalien für Prozessinstanzen und Prozesse als Gesamtes können erfindungsgemäß in einer Sensordefinition be- schrieben werden, d.h. mit Hilfe von Daten und/oder Anweisungen bzw. Selekti onskriterien in der Sensor definition definiert werden.

Hierbei können die drei nachfolgend beschriebenen Arten von Sensordefinitionen vorgesehen werden.

- Sensordefinition für die Anomalie durch Überschreitung / Unterschreitung eines statisch festgelegten Parameters (statischer Sensor): Die oben beschriebenen

Beispiele der Prozessinstanz-abhängigen Anomalien können dahingehend in der Sensordefinition berücksichtigt werden, dass ein vorgegebener Parameter (ein Zeitintervall, eine Soll- Abfolge von Prozessaktivitäten, ...) nicht eingehalten wird und die entsprechende Prozessinstanz daher eine Anomalie aufweist.

- Sensordefinition für Anomalien mittels Mustererkennung: Die Anomalien der oben genannten Typen "Häufung" und "Durchlaufzeit" für Prozessinstanz-über- greifende Anomalien stellen Beispiele für eine durch die Erfindung unterstützte Mustererkennung dar. Anhand eines Referenzzeitraums in der Vergangenheit werden typische Muster aus Prozessinstanzen eines Prozesses extrahiert und Ab weichung von diesen Mustern in der Beobachtungsperiode können als Pro zessanomalie erkannt werden.

Beispiele:

Der Sensor der Anomalie-Detektions-Engine scannt fortlaufend die Quote manueller Eingriffe im Rahmen eines Beschaffungsprozesses (z.B. manu elle Änderungen der Bestellpreise oder -mengen). Ergeben sich in der aktu ellen Woche (=Beobachtungsperiode) Ausprägungen, welche signifikant von Höhe und Schwankung der Quote im Referenzzeitraum (z.B. dem ver gangenen Jahr) abweichen, wird eine Prozessanomalie detektiert, die durch eine Anomalie-Korrektur-Engine behoben werden kann.

In einem Fertigungsprozess wird ein bestimmtes Produkt nach bestimmten Vorgaben hergestellt. Im Vergleich zu den Fertigungsmengen in der Ver gangenheit wird durch den Sensor festgestellt, dass die Produktionsmenge in der Beobachtungsperiode plötzlich auffallend niedrig ist. Die Anomalie- Korrektur-Engine kann in den Fertigungsprozess eingreifen, um die Pro duktionsmenge wieder auf das gewünschte Niveau zu bringen.

- Sensordefinition für Anomalien durch Überschreitung / Unterschreitung eines dynamisch mittels Mustererkennung festgelegten Parameters: In Erweiterung zum oben beschriebenen statischen Sensor ist es erfindungsgemäß möglich den Parameter zur Abgrenzung einer Anomalie dynamisch mittels eines Musterer kennungsprozesses zu bestimmen. Nach Vorgabe eines parametrischen Modells erfolgt die Kalibrierung der Parameter hierbei auf Basis von Mustern in einer Referenzperiode. Die so festgesetzten Parameter können wie beim statischen Sensor als Basis zur Erkennung von Anomalien herangezogen werden.

Nachfolgend wird ein ausführliches Beispiel für eine Sensordefinition bzw. für ei nen Sensor wiedergegeben.

Betrachten wird eine beispielhafte Sensordefinition, mit der ein Sensor der Anoma- lie-Detektions-Engine ausstehende Lieferungen aus den USA und Deutschland in einem Prozessprotokoll detektieren kann.

Das Prozessprotokoll, das mindestens eine Kennung der Prozessschritte, eine Ken nung, mit der die Prozessschritte eindeutig einer Prozessinstanz zuordenbar sind und eine Reihenfolge der Prozessschrittes innerhalb der Prozessinstanzen aufweist (= Minimalattribute des Prozessprotokolls), wird in diesem Beispiel um Hilfsdaten angereichert, um es dem Sensor zu ermöglichen ausstehende Lieferungen aus den USA und Deutschland zu detektieren. Das Prozessprotokoll enthält damit die Mi nimalattribute des Prozessprotokolls und die notwendigen Hilfsdaten.

In die Definition der Sensordefinition fließen hier neben den genannten Minimalatt- ributen des Prozessprotokolls auch die Hilfsdaten ein. Sämtliche für dieses Beispiel relevanten Bestandteile werden nachfolgend aufgeführt.

1. Die Minimalattribute des Prozessprotokolls, d.h. die Prozessschritte mit den entsprechenden Zuordnungen zu einer Prozessinstanz und deren Ausführungs- Zeitpunkte werden hier in einer Tabelle "Prozessschritte" gespeichert.

Tabelle Prozessschritte

Die Spalte "ID" kennzeichnet die Prozessinstanz, die Spalte "Prozessschrit" den Prozessschritt innerhalb der Prozessinstanz und die Spalte "Eintrittszeit- punkt" den Zeitpunkt, zu dem der jeweilige Prozessschritt ausgeführt wurde. Durch die Spalte "Eintrittszeitpunkt" ist zudem die Reihenfolge der Prozess- schritte innerhalb einer Prozessinstanz festgelegt. Eine Liste aller Bestellungen (die beispielsweise in einer Datenbank in einer Tabelle "Bestellungen" gespeichert sein können), bestehend aus der Kennung der Bestellung (ID = Bestellnummer) und einer Kennung des jeweiligen Liefe- ranten. Weitere Attribute, die für die Sensordefinition gemäß dieses Beispiels nicht notwendig sind, können vorgesehen sein, etwa die Währung und der Be- stellwert.

Tabelle Bestellungen Informationen zu den Lieferanten. Diese sind für die Einschränkung auf aus- stehende Lieferungen aus den USA und Deutschland notwendig und werden in vielen Quellsystemen in Lorm einer zentralen Stammdatentabelle (hier Tabelle

"Lieferanten") bereitgestellt. Diese Tabelle enthält zumindest eine Kennung der Lieferanten und das dem jeweiligen Lieferanten zugeordnete Land. Weitere Attribute, die für die Sensordefinition gemäß dieses Beispiels nicht notwendig sind, können vorgesehen sein, etwa die Telefonnummer des Lieferanten.

Tabelle Lieferanten

Eine mögliche Sensordefinition, mit der ein Sensor der Anomalie-Detektions-En- gine ausstehende Lieferungen aus den USA und Deutschland in einem Prozesspro- tokoll detektieren kann, kann (gemäß eines Pseudocodes) folgendermaßen ausse- hen:

FILTER

process equals 'Erhalte Auftragsbestätigung'

and process not equals 'Erhalte Ware'

and process not equals 'Sende Mahnung'

and "Lieferanten". "Land" IN ('USA', 'GER')

and DAYS BETWEEN

(

PU_MAX("Bestellungen" , "Prozessschritte" . "Eintrittszeitpun kt", "Prozessschritte". "Prozessschritt" = 'Bestätigtes Lieferda tum’, TODAY0)

) >= 7 Die Filter-Bedingung (FILTER) untersucht das gesamte Prozessprotokoll auf die angegebenen Kriterien und gibt genau die Bestellungen zurück, bei welchen die Kriterien verletzt sind und somit eine Anomalie aufweisen.

Die drei "process-equals"- Ausdrücke grenzen den Datenbestand ein auf jene Be- Stellungen, bei welchen die Auftragsbestätigung des Lieferanten bereits erhalten wurde, allerdings noch keine Ware eingegangen ist und keine Mahnung versandt wurde. D.h., das Prozessprotokoll auf offene Bestellungen (im Sinne nicht erfolgter Wareneingänge) reduziert. Die Bedingungen für die Lieferantenherkunft ("Lieferanten". "Land" IN ('USA', 'GER')) steht sicher, dass dem gewünschten Anwendungsfall entsprechend nur deutsche und amerikanische Lieferanten berücksichtigt werden. Im Allgemeinen können hier beliebige Attribute des Prozessprotokolls verwendet werden.

Die Bedingung "DAYS BETWEEN..." gibt schließlich die Anomaliebedingung (in diesem Fall für die Zeitüberschreitung) an. Sobald mindestens sieben Tage zwi- schen dem Betrachtungszeitpunkt und dem letzten bestätigten Lieferdatum liegen, gilt die Lieferung als verspätet und stellt damit eine Anomalie dar.

Die Funktion PU MAX ist vorgesehen, um für eine Bestellposition genau das am weitesten in der Zukunft liegende Datum zu ermitteln.

Wird der Sensor der Anomalie-Detektions-Engine mit der vorstehenden Sensorde- finition auf das vorstehende Beispiel eines Prozessprotokolls angewandt, so erge- ben sich zum Betrachtungszeitpunkt 12.02.2018 (z.B. Ausführungszeitpunkt des Sensors) Anomalien für die Bestellungen 10829382 (19 Tage Verspätung) und 10182731 (sieben Tage Verspätung). Die Bestellung 20173621 stellt hingegen keine Anomalie dar, da unter anderem die Ware bereits erhalten wurde und die Be- dingung "process not equals 'Erhalte Ware' " somit nicht erfüllt ist. Der Sensor selbst kann zu fest vorgegebenen Zeitpunkten ausgeführt werden, z.B. zyklisch alle zwei Tage, oder jeden Montag und Mittwoch. Alternativ kann die Aus- führung des Sensors durch einen Eintrag in die Tabelle "Prozessschritte" getriggert werden, d.h. sobald dieser Tabelle ein neuer Eintrag hinzugefügt wird, wird der Sensor ausgeführt. Das Triggern des Sensors durch das Hinzufügen eines Eintrages in das Prozessprotokoll kann dann vorteilhaft sein, wenn eine Detektion von Ano- malien in Echtzeit oder nahezu in Echtzeit benötigt wird, um auch in Echtzeit de- tektierte Anomalien beheben zu können.

In die Sensordefinition können beliebige Prozessschritte sowie -attribute eingehen und beliebige Rechenoperationen auf diesen für die Anomaliedetektion ausgeführt werden. Vorstehend ist ein Beispiel für einen Bestellprozess wiedergegeben. Ent sprechende Sensordefinitionen können auch für technische Prozesse (z.B. Ferti gungsprozesse) festgelegt werden. Die Möglichkeiten für die Sensordefinition sind letztlich nur durch die in dem Prozessprotokoll gespeicherten Daten begrenzt.

So kann beispielsweise eine Sensordefinition für einen Lackierprozess in der Auto mobilindustrie definiert werden, in dem Bauteile mit einem Lackierroboter lackiert werden. Nach einem Lackiervorgang kann ein Messinstrument die aufgetragene Lackdicke messen und diesen Messwert für die entsprechende Prozessinstanz (= Lackiervorgang) in dem Prozessprotokoll speichern. Ein entsprechender Sensor der Anomalie-Detektions-Engine kann dieses Prozessprotokoll überwachen und detek- tieren, wenn auf einem Bauteil eine zu dünne Lackschicht aufgetragen wurde. Die Anomalie-Detektions-Engine kann dann der unten beschriebenen Anomalie-Kor- rektur-Engine Informationen zu detektierten Prozessinstanzen zur Verfügung stel- len, die dann entsprechend angepasste Prozesseingriffsinstanzen erzeugen kann. Mit den Prozesseingriffsinstanzen kann die Anomalie-Korrektur-Engine den La- ckierroboter anweisen, eine weitere Lackschicht auf das entsprechende Bauteil auf zutragen. Eine mögliche Sensordefinition für diesen Sensor könnte (gemäß eines Pseudocodes) folgendermaßen lauten:

FILTER

process equals 'Lackiervorgang abgeschlossen'

and process not equals 'Bauteil hat Lackierhalle verlassen' and "Bauteile". "Lackdicke" < 1,5 mm

Ein Sensor gemäß dieser Sensordefinition gibt alle Prozessinstanzen (Lackiervor gänge) zurück, bei denen der Lackiervorgang abgeschlossen ist, die Lackdicke klei ner als 1,5 mm ist und das entsprechende Bauteil die Lackierhalle noch nicht ver lassen hat. Die Anomalie-Korrektur-Engine kann dann den Lackierroboter anwei- sen das Bauteil noch einmal zu lackieren. Ersetzt man bei der vorstehend genannten Sensordefinition die zweite Bedingung durch and process equals 'Bauteil hat Lackierhalle verlassen' dann könnte die Anomalie-Korrektur-Engine eine Transporteinrichtung (z.B. ein Lagerroboter) veranlassen, das Bauteil wieder in die Lackierhalle zu transportieren, um es noch einmal zu lackieren. Die vorstehend beschriebene Sensordefinitionen und die Anomaliedetektion mit Hilfe eines Sensors basierend auf einem Prozessprotokoll bieten mehrere techni sche Vorteile, von denen nachfolgend einige aufgeführt sind.

- Durch die Zusammenführung potenziell mehrerer Bestandteile (Minimalattri- bute des Prozessprotokolls und Hilfsdaten) eines Quellsystems wird es möglich, Sensoren bereitzustellen, die neben der Reihenfolge der Prozessschritte inner halb einer Prozessinstanz auch weitere Abhängigkeiten zwischen den Prozess schritten berücksichtigen können. Diese Abhängigkeit kann sich sogar über mehrere Prozesse und Prozessarten erstrecken, d.h. ein Sensor kann Abhängig- keiten zwischen Prozessschritten berücksichtigen, die zu Prozessinstanzen un terschiedlicher Prozesse gehören oder die zu unterschiedlichen Prozessinstanzen ein und desselben Prozesses gehören. Beispielsweise können so Produktions-, Logistik- und Vertriebsprozess in einem Unternehmen verknüpft werden, wodurch ein Sensor Anomalien über mehrere Prozessinstanzen hinweg detektie- ren kann. Beispiel: Eine Anomalie in einem Produktionsprozess (z.B. eine Zeit überschreitung in einem Fertigungs Vorgang) kann mit der Nichtverfügbarkeit ei nes eigentlich früher reservierten Spediteurs einhergehen, was die Belieferung eines Kunden zu einem bestätigten Termin beeinträchtigen kann. Durch die De finition eines übergreifenden Sensors kann die drohende Verzögerung des Ter- mins bereits zum Zeitpunkt der Produktionsstörung erkannt werden. - Es können mehrerer Systemlandschaften berücksichtigt werden. Singuläre Ano- maliedetektionssysteme sind monosystemisch und daher nur in der Lage, Ab- weichungen innerhalb einer Systemlandschaft (etwa bei Prozessen bzw. Prozes- sinstanzen die innerhalb eines bestimmten Systems, z.B. innerhalb eines SAP ® - Systems oder innerhalb einer Produktionsanlage ausgeführt werden) aufzuspü- ren. Mit Hilfe des Prozessprotokolls können Prozesse bzw. Prozessinstanzen, die in unterschiedlichen Systemen ausgeführt werden, zusammengeführt werden und so von einem Sensor überwacht werden. Beispiel: Ein Bestellprozess und ein Fertigungsprozess werden für ein bestimmtes Produkt zeitlich hintereinander ausgeführt und bilden zusammen einen Beschaffungsprozess. Prozessdaten des Bestellprozesses, der in einem SAP-System ausgeführt wird, und Prozessdaten des Fertigungsprozesses, der von einer Fertigungsmaschine ausgeführt wird, werden in einem gemeinsamen Prozessprotokoll gespeichert. Ein Sensor kann so den gesamten Beschaffungsprozess überwachen und Anomalien innerhalb des gesamten Beschaffüngsprozesses detektieren, obwohl der Bestellprozesses und der Fertigungsprozesses in unterschiedlichen Systemen ausgeführt werden.

- Ein weiterer technischer Vorteil der Erfindung ergibt sich aus den drei Arten von Sensordefinitionen (statisches parametrisches Modell, Mustererkennung, dyna misches parametrisiertes Modell). Insbesondere die Sensor definitionen mittels Mustererkennung und mittels eines dynamisch parametrisierten Modells ermög- lichen eine automatisierte Anomaliedetektion, die manuell nicht bewerkstellig- bar ist, d.h. nur unter Zuhilfenahme des erfindungsgemäßen Computer imple- mentieren Verfahrens möglich ist.

- Ferner können unterschiedliche Sensoren zu einem gesamtheit liehen Signal ver dichtet werden und dadurch ein übergeordneter Sensor zur Erkennung funda mentaler Prozessschwächen bereitgestellt werden. Heterogene singuläre Signale aus einzelnen Sensoren können so parallel aufgezeichnet und simultan ausge wertet werden. Ein übergeordneter Sensor wird auch als Meta-Sensor bezeichnet. Ein Meta- Sensor verwendet als Eingabe bereits vorhandene Sensoren, sodass ein Meta- Sensor als ein Sensor angesehen werden kann, der bereits vorhandene Sensoren überwacht. Dadurch ist es beispielsweise möglich über mehrere Sensoren hin- weg Häufungen bestimmter Anomalien zu detektieren, was anhand des folgen den Beispiels näher erläutert wird.

In der Anomalie-Detektions-Engine sind verschiedene einzelne Sensoren defi niert, die das Prozessprotokoll hinsichtlich bestimmter Anomalien überwachen und diese Anomalien detektieren, beispielsweise:

- ein Sensor, der die Erhöhung eines Bestellpreises in einer Bestellposition durch den Lieferanten detektiert,

- ein Sensor, der die Verschiebung eines Liefertermins in einer Bestellposition durch den Lieferanten detektiert, und

- ein Sensor, der die Erhöhung der nachgefragten Liefermenge in einem Kun denauftrag durch den Kunden detektiert.

Diesen drei Sensoren ist beispielsweise das Attribut "Materialnummer" gemein, d.h. die Sensoren können bei der Detektion einer entsprechenden Anomalie Da- ten bereitstellen, die die Materialnummer der entsprechenden Prozessinstanz umfassen. Es kann nun beispielsweise ein Meta-Sensor bereitgestellt werden, der Anomalien vom Typ "Häufung" etwa hinsichtlich der Materialnummer de tektiert. Der in diesem Beispiel bereitgestellte Meta-Sensor kann nun detektie ren, dass etwa in der laufenden Woche eine Häufung über die einzelnen Senso- ren hinweg für ein bestimmtes Material (hier angegeben durch die Materialnum mer) eintritt. Diese Häufung kann daraufhindeuten, dass sich eine Knappheit für dieses Material anbahnt.

Der Anomalie-Detektions-Engine, die auch den Meta-Sensor ausführt und steu- ert, kann nun der Anomalie-Korrektur-Engine Informationen zu der detektierten Häufung bereitstellen. Die Anomalie-Korrektur-Engine kann daraufhin entspre- chende Prozesseingriffsinstanzen erzeugen, mit denen beispielsweise ein Wa renwirtschaftssystem veranlasst wird aktiv und automatisch den Bestand dieses Material aufzubauen, etwa indem zusätzliches Material bei alternativen Liefe- ranten bestellt wird.

Derartige Häufungen können nur mittels eines Computersystems erkannt wer den, da einerseits eine große Anzahl von Sensoren unterschiedliche Anomalien detektieren können, die alle zu einer bestimmte Häufung beitragen können, und andererseits jeder Sensor eine sehr große Anzahl von Prozessinstanzen detektie ren kann, die die bestimmte Häufung jeweils unterschiedlich quantitativ beein flussen können.

Mit den vorstehend beschriebenen Sensoren und Sensordefinitionen können Ano malien in Prozessinstanzen während der Ausführung der Prozessinstanzen detek- tiert werden. Eine Anomalie-Detektions-Engine, die den Sensor ausführt übergibt die detektierten Prozessinstanzen oder Informationen zu den detektierten Prozess instanzen einer Anomalie-Korrektur-Engine, die angepasst ist, die Anomalie bzw. Anomalien in den detektierten Prozessinstanzen zu beseitigen. Die Beseitigung der Anomalie erfolgt hierbei während der Ausführung der jeweiligen detektierten Pro zessinstanz, es wird also aktiv in die Prozessinstanz eingegriffen und beispielsweise der weitere Ablauf der Prozessinstanz gesteuert. Ferner übergibt die Anomalie-De- tektions-Engine der Anomalie-Korrektur-Engine die Sensordefinition (oder den Sensor), auf dessen Basis der Sensor die Prozessinstanzen detektiert hat.

Fig. 2 zeigt ein Blockdiagramm einer Anomalie-Korrektur-Engine zur Verdeutli chung des Teilverfahrens zur Korrektur von sich in Ausführung befindlichen Pro zessinstanzen. "Korrektur" bedeutet hierbei, dass Anomalien einer Prozessinstanz behoben bzw. beseitigt werden. Die Anomalie-Detektions-Engine und die Anoma lie-Korrektur-Engine können hierbei auf unterschiedlichen mit einem Kommunika tionsnetzwerk verbundenen Systemen ausgeführt werden. Die Anomalie-Korrektur-Engine wird so konfiguriert, dass jeder möglichen Sens- ordefinition bzw. jedem möglichen Sensor eine Menge von generischen Aktionen zugeordnet wird. Die einem Sensor zugeordneten generischen Aktionen können verwendet werden, um die von diesem Sensor detektierten Prozessinstanzen zu "korrigieren".

Nachdem die Anomalie-Korrektur-Engine von der Anomalie-Detektions-Engine eine Prozessinstanz zusammen mit der jeweiligen Sensordefinition bzw. zusammen mit dem jeweiligen Sensor empfangen hat, wird aus der Menge von generischen Aktionen zumindest eine generische Aktion ausgewählt. Enthält die einem Sensor zugeordnete Menge von generischen Aktionen mehrere generische Aktionen kann die Auswahl einer generischen Aktion z.B. auf Basis eines oder mehrerer Attributs- werte der jeweiligen Prozessinstanz erfolgen, oder auf Basis einer Simulation, mit der die geeignetste Aktion ermittelt wird, wie weiter unten näher beschrieben wird.

Die generischen Aktionen definieren jeweils eine bestimmte Aktion, mit der eine anomale Prozessinstanz korrigiert werden kann, wobei die Definition der generi schen Aktion Quellsystem-unabhängig erfolgt. Beispielsweise wird eine generische Aktion "Mahnung erzeugen" definiert, mit der eine entsprechende Anomalie in ei ner Prozessinstanz, die in einem SAP ® -System ausgeführt wird, oder in einer Pro zessinstanz, die in einem Salesforce ® -System ausgeführt, behoben werden kann.

Basierend auf der ausgewählten generischen Aktion wird eine für die jeweilige de- tektierte Prozessinstanz spezifische Prozesseingriffsinstanz erzeugt. Die Pro zesseingriffsinstanz ist im Unterscheid zur generischen Aktion Quellsystem-abhän- gig. Bei dem vorgenannten Beispiel würden für die generische Aktion "Mahnung erzeugen" jeweils unterschiedliche Prozesseingriffsinstanzen für das SAP ® -System und für das Salesforce ® -System erzeugt werden. Die Prozesseingriffsinstanz selbst wird wiederum so angepasst, dass sie die Ano- malie in der konkreten detektierten Prozessinstanz beheben kann. Diese Anpassung kann beispielsweise über Parameter der Prozesseingriffsinstanz erfolgen, denen At tributswerte der jeweiligen Prozessinstanz, z.B. eine eindeutige Kennung der Pro- zessinstanz, übergeben werden können. Andere Arten einer solchen Anpassung sind ebenfalls möglich.

Die Prozesseingriffsinstanz wird dann in durch das Quellsystem (in dem die detek- tierte Prozessinstanz ausgeführt wird) ausführbare Instruktion umgewandelt. Diese Instruktionen werden dann von der Anomalie-Korrektur-Engine an das entspre- chende Quellsystem übertragen und dort zur Ausführung gebracht.

In einer Ausgestaltung der Erfindung kann eine Prozesseingriffsinstanz mehrere Aktivitäten umfassen. Diese Aktivitäten werden ebenfalls in durch das Quellsystem ausführbare Instruktion umgewandelt und dann von der Anomalie-Korrektur-En gine an das entsprechende Quellsystem übertragen und dort zur Ausführung ge bracht. Diese Ausgestaltung ist insbesondere dann vorteilhaft, wenn zur Behebung der Anomalie einer detektierten Prozessinstanz

- mehrere z.B. voneinander unabhängige Aktivitäten in dem Quellsystem ausge- führt werden müssen, oder

- mehrere Aktivitäten in unterschiedlichen Quellsystemen ausgeführt werden müssen. Beispielsweise kann ein zu dünner Lackauftrag durch einen Lackierro- boter zu einer Verzögerung des zugesicherten Liefertermins führen. Die generi sche Aktion zur Behebung dieser Anomalie könnte "Lackerschritt wiederholen" sein. Basierend auf dieser generischen Aktion wird eine Prozesseingriffsinstanz erzeugt, die eine erste Aktivität und einer zweite Aktivität umfasst. Mit der ers ten Aktivität kann der Lackierroboter veranlasst werden, eine zusätzliche Lack schicht aufzutragen. Mit der zweiten Aktivität kann ein ERP-System veranlasst werden, dem Kunden einen neuen Liefertermin mitzuteilen. Für beide Aktivitä- ten erzeugt die Anomalie-Korrektur-Engine entsprechende Instruktionen und überträgt diese an den Lackierroboter bzw. an das ERP-System. Erfindungsgemäß sind zwei Arten von Prozesseingriffsinstanzen bzw. von Aktivi- täten vorgesehen, nämlich

- nicht-invasive Aktivitäten bzw. Prozesseingriffsinstanzen, und

- invasive Aktivitäten bzw. Prozesseingriffsinstanzen.

Nicht-invasive Aktivitäten bzw. Prozesseingriffsinstanzen beziehen sich auf Akti vitäten, welche außerhalb des betroffenen Quellsystems ausgeführt werden. Erfin dungsgemäß können hierbei beliebige Informationen aus dem Prozessprotokoll ver wertet werden.

Im Falle des Gefahrgutüberlaufs (siehe obiges Beispiel zur Anomalieklasse Zeitun- terschreitung) kann beispielsweise die Warengruppe des den Überlauf verursachen den Materials oder der liefernde Hersteller ermittelt und visualisiert werden.

Neben der statischen Visualisierung von Informationen aus dem Prozessprotokoll unterstützt die Anomalie-Korrektur-Engine auch die dynamische Informationsbe rechnung. So kann beispielsweise für das Gefahrgutlager unter Zuhilfenahme der bestehenden Liefereinteilungen an die Kunden automatisiert berechnet werden, wann welche Kapazitäten frei werden und wann es somit ohne weiteren Eingriff zu einer Beendigung des Überlaufs kommt.

Ein weiteres Beispiel einer nicht-invasiven Aktivität besteht im Aufruf einer Pro zessanalyse, mit der basierend auf dem Prozessprotokoll der gesamte Prozess einer Prozessinstanz visualisiert und ausgewertet werden kann. Zusätzliche Information, etwa Prozesskennzahlen können berechnet und angezeigt werden. Die Anomalie- Korrektur-Engine kann hierzu eine detektierte Anomalie mit einer dem Prozesspro tokoll zugehörigen Prozessanalyse verknüpfen, sodass eine Aktivität ausgeführt werden kann, mit der für eine detektierte Anomalie direkt eine Analyse des zugrun deliegenden Prozesses ausgeführt werden kann. Die für die Analyse benötigten In formationen sind in dem Prozessprotokoll (Minimaldaten des Prozessprotokolls und Hilfsdaten) enthalten, wobei die Minimaldaten des Prozessprotokolls und die Hilfsdaten entsprechend miteinander verknüpft sind. Dadurch kann auf einfache Weise das Prozessprotokoll hinsichtlich einer bestimmten Prozessinstanz oder hin sichtlich der Prozessinstanzen eines bestimmten Prozesses gefiltert werden, sodass auch nur die diesen Prozessinstanzen zugehörigen Daten in die Analyse einfließen. Dadurch wird eine einfache Verifikation der detektierten Anomalie ermöglicht.

Invasive Aktivitäten bzw. Prozesseingriffsinstanzen beziehen sich hingegen auf Aktivitäten, welche innerhalb des betroffenen Quellsystems ausgeführt werden und damit V eränderungen in dem Quellsystem triggern, um Anomalien zu beheben oder aktiv Verbesserungen in der ausgeführten Prozessinstanz vornehmen.

Invasive Aktivitäten können Instruktionen umfassen, die

- ausschließlich in einem Computersystem ausgeführt werden,

- ausschließlich durch technische Vorrichtungen (z.B. eine Montagemaschine) ausgeführt werden, oder

- teilweise in einem Computersystem und teilweise durch technische Vorrichtun gen ausgeführt werden,

um die jeweilige Anomalie zu beheben.

Bei dem oben genannten Beispiel des unerlaubten Prozessmusters durch Eingang der Rechnung eines Lieferanten vor Eingang der bestellten Ware auf, kann die von der Anomalie-Korrektur-Engine erzeugte Prozesseingriffsinstanz eine invasive Ak tivität umfassen, mit der eine Zahlungssperre für die entsprechende Bestellung im Quellsystem (z.B. in einem ERP-System, in dem der Bestellprozess ausgeführt wird) gesetzt wird. Dadurch greift die Anomalie-Korrektur-Engine mit der entspre chenden Prozesseingriffsinstanz in den Ablauf der Prozessinstanz ein.

Bei dem oben genannten Beispiel der nicht eingehaltenen Montagereihenfolge beim Zusammenbau einer Maschine kann die Anomalie-Korrektur-Engine eine Pro- zesseingriffsinstanz mit einer invasiven Aktivität erzeugen, wobei die invasive Ak tivität eine Montagemaschine veranlasst, die Montagereihenfolge der noch zu mon tierenden Teile zu ändern. Beim oben genannten Beispiel der Zeitüberschreitung in einem Produktionsvor gang kann mittels einer ersten invasiven Aktivität eine Beschleunigung der nach folgenden von einer Maschine ausgeführten Produktionsschritte zur rechtzeitigen Fertigstellung getriggert werden. Zusätzlich oder alternativ kann mittel einer zwei ten invasiven Aktivität ein ERP-System veranlasst werden, den Spediteur und den Kunden über eine verspätete Lieferung zu informieren. Dies ist aus gleichzeitig ein Beispiel dafür, dass Instruktionen teilweise in einem Computersystem und teilweise durch technische Vorrichtungen ausgeführt werden können.

Bei einem Überlauf eines Gefahrgutlagers kann die Anomalie-Korrektur-Engine eine Prozesseingriffsinstanz erzeugen, mit der eine automatisierte Umschichtung des Lagerbestands oder die vorzeitige Auslieferung gelagerter Gefahrgüter getrig gert werden kann, um Zusatzkapazitäten zu schaffen.

Erfindungsgemäß können drei Arten von Prozesseingriffsinstanzen erzeugt wer- den:

- Statisch generierte Prozesseingriffsinstanzen können sich auf die Wiedergabe von Informationen, welche statisch aus dem der Anomalie zugeordneten Pro zessprotokoll gewonnen werden, beschränken. Hierzu zählen beispielsweise das Anzeigen von Attributen der Anomalie, wie beispielsweise der Lieferanten- und Referenzbelegnummer bei einer verspäteten Lieferung, den handelnden Perso nen bei einer Verletzung der Process Compliance oder der Dauer der Zeitüber schreitung bei einem Pasteurisierungsvorgang. - Bei dynamisch erzeugten Prozesseingriffsinstanzen werden über das Pro- zessprotokoll hinausgehende Metainformationen der Anomalie sowie des Quell- systems mit einbezogen. Ein Ergebnis davon ist beispielsweise die Verknüpfung einer Anomalie mit einer dem Prozessprotokoll zugehörigen Prozessanalyse o- der die Erzeugung einer im Quellsystem ausführbaren Aktivität (= invasive Ak tivität).

- Gemäß einer dritten Art wird für das Erzeugen einer Prozesseingriffsinstanz eine optimale Aktion aus der Menge von generischen Aktionen mittels einer Simula- tion ermittelt. Beispielsweise kann für alle möglichen generischen Aktionen er mittelt werden, wie sich die Durchlaufzeit einer Prozessinstanz bei Anwendung der Aktionen auf die Prozessinstanz ändert, und jene Aktion zum Erzeugen der Prozesseingriffsinstanz ausgewählt werden, bei der die ermittelte Durchlaufzeit am nahesten an eine Soll-Durchlaufzeit herankommt.

Anknüpfend an das oben genannte Beispiel, bei dem ein Sensor der Anomalie-De- tektions-Engine ausstehende Lieferungen aus den USA und Deutschland detektiert, kann eine wünschenswerte Aktion sein, den betroffenen Lieferanten gezielt zu mah nen. Dies ist ein Beispiel für eine dynamisch erzeugte, invasive Aktion, da einer- seits Attribute der Anomalie in die Erzeugung der Prozesseingriffsinstanz einflie ßen, und andererseits eine direkte Ausführung der Prozesseingriffsinstanz (in Form von ausführbaren Instruktionen) und damit eine Änderung im Quellsystem herbei geführt werden. "Dynamisch" heißt in diesem Fall, dass z.B. Lieferantennummer in die Erzeugung der Prozesseingriffsinstanz einfließt, um gezielt den betroffenen Lie- feranten zu mahnen. "Invasiv" heißt, dass die Mahnung direkt im Quellsystem er zeugt wird.

Die vorstehend beschriebenen Prozesseingriffsinstanzen und deren Erzeugung bie ten mehrere technische Vorteile, von denen nachfolgend einige aufgeführt sind. - Die generischen Aktionen können für beliebige Module innerhalb eines Systems und für verschiedene Quellsysteme einheitlich definiert werden. Erst beim aus- führen der Prozesseingriffsinstanzen müssen quellsystem-spezifische Instrukti onen erzeugt werden, die in einer Ausgestaltung der Erfindung auch von dem Quellsystem selbst erzeugt werden können, wenn die Anomalie-Korrektur-En- gine dem Quellsystem die hierfür benötigten Informationen zur Verfügung stellt. Insbesondere Anomalien, die den gleichzeitigen invasiven Eingriff in mehrere Systeme zur Behebung der Anomalie erfordern, stellt dies eine notwendige Vo raussetzung für eine aktive Steuerung eines gesamtheitlichen Prozesses dar.

- Einen weiteren Vorteil stellt die beschriebene Verknüpfung einer Anomalie mit einer dem Prozessprotokoll zugehörigen Prozessanalyse dar. Hierdurch wird eine effiziente Methode bereitgestellt, Anomalien gezielt zu untersuchen, deren Prozessfluss im Detail nachzuvollziehen und die geeignetste Handlungsoption auszuwählen.

- Ein weiterer bedeutender technischer Vorteil besteht darin, die geeignetste Ak tion mittels einer Simulation zu ermitteln. Dadurch können beispielsweise die Auswirkung verschiedener Anordnungen der Montageabfolge in einem Produk- tionsprozess oder die Entwicklung des Gefahrgutbestands bei Anpassung der Planlieferzeiten simuliert und die voraussichtlich beste Option ausgewählt wer den. Ein manuelles "Ausprobieren" in der sich in Ausführung befindlichen Pro zessinstanz ist hingegen nicht möglich. Gemäß einem weiteren Aspekt der Erfindung kann für eine effektive Prozesssteue rung die Zuweisung der Prozesseingriffsinstanzen an die verantwortlichen und han delnden Bearbeiter vorgesehen sein. Dieser Aspekt der Erfindung wird mit Bezug auf Fig. 3, die ein Blockdiagramm einer Routing-Engine zeigt, näher beschrieben. Aufgabe der Routing-Engine ist es, für einen gegebenen Nutzer das Prozessproto- koll bereits dahingehend einzugrenzen, dass alle darin auftretenden Anomalien mit dem durch den Nutzer zu bearbeitenden Prozessinstanzen übereinstimmen. Eingehende Parameter der Routing-Engine sind das Prozessprotokoll, ein Zuord- nungsattribut (das ein Attribut des Prozessprotokolls sein kann), und Ausprägungen (Werte) des Zuordnungsattributes, welche einem gegebenen Nutzer zugeordnet werden sollen.

Beispiel:

- Für eine Einkaufsposition im Bestellprozess ist ein bestimmter Einkäufer zustän- dig, welcher über den Materialstamm des Quellsystems dem eingekauften Ma terial zugeordnet ist. In diesem Fall ist das Zuordnungsattribut die Materialnum mer und der dem Einkäufer zugeordnete Wert des Zuordnungsattributes die Ma terialnummer der einzelnen Einkaufsposition. Basierend auf den eingehenden Parametern gleicht die Routing-Engine für einen gegebenen Nutzer das Prozessprotokoll hinsichtlich aller Ausprägungen des Zuord nungsattributs und der dem Nutzer zugewiesenen Ausprägungen ab und gibt jenen Teil des Prozessprotokolls zurück, welcher hinsichtlich der der dem Nutzer zuge wiesenen Ausprägungen des Zuordnungsattributes übereinstimmt. Ergebnis ist ein gefiltertes Prozessprotokoll, das von der Anomalie-Detektions-Engine überwacht werden kann (vgl. auch Fig. 4).

Ein technischer Vorteil der Routing-Engine besteht darin, dass die Einschränkung des Prozessprotokolls auf die für den Nutzer relevanten Prozessanomalien automa- tisiert vorgenommen wird. Eine manuelle Zuordnung ist bei Berücksichtigung der typischerweise extrem hohen Anzahl einzelner Prozessinstanzen (mehrere Millio nen) in dem Prozessprotokoll nicht möglich.

Zudem können neben den Attributen des Prozessprotokolls auch Attribute der Ano- malie in die Zuweisung einfließen können. Die Zuweisung von Prozessinstanzen mittels der Routing-Engine zu einzelnen Nutzem ist dann vorteilhaft, wenn zwar die Anomalie-Detektions-Engine eine Anomalie behaftete Prozessinstanz detektiert und die Anomalie-Korrektur-Engine eine Prozesseingriffsinstanz erzeugt, die Aus- führung der Prozesseingriffsinstanz aber von einem Nutzer bestätigt werden muss. In Fällen, in denen kein Eingriff eines Nutzers notwendig ist, kann auf die Zuord- nung zu einem Nutzer auch verzichtet werden.

Gemäß dem obigen Beispiel der Zeitüberschreitung in einem Fertigungsprozess, soll die Zuordnung des Bearbeiters zunächst über die entsprechende Zuweisung im Produktionsauftrag erfolgen. Tritt in der Prozessinstanz keine Verbesserung ein und zögert sich die Fertigstellung weiter hinaus, soll die Zuordnung über ein anderes Attribut erfolgen, mit dem die Prozessinstanz dem Werksleiter zugeordnet wird. Gemäß der Erfindung ist es vorgesehen, dass die Prozessinstanzen auch nach Ein greifen in die Prozessinstanz mittels einer Prozesseingriffsinstanz weiterhin von der Anomalie-Detektions-Engine überwacht werden. Die Anomalie-Detektions-En- gine kann so feststellen, ob nach einer Prozesseingriffsinstanz, die von Bearbeiter bestätigt wurde, weiterhin eine Zeitüberschreitung vorliegt.

Zudem kann es vorteilhaft sein, wenn die vorstehend geschilderte Eskalation einer Prozessanomalie als Regel in der Routing-Engine hinterlegt wird.

In einer Ausgestaltung der Erfindung kann es vorteilhaft sein, die Menge der mög lichen generischen Aktionen für das Erzeugen der Prozesseingriffsinstanzen von der jeweiligen Eskalationsstufe abhängig zu machen. Beispielsweise kann eine ge nerische Aktion "Maschine abschalten" nur für einen Werksleiter zum Erzeugen einer entsprechende Prozesseingriffsinstanz zur Verfügung gestellt werden, nicht aber einem normalen Mitarbeiter.

Ein weiterer wesentlicher Vorteil der Routing-Engine besteht darin, dass das Pro zessprotokoll für die Überwachung durch die Anomalie-Detektions-Engine erheb- lieh reduziert werden kann. Insbesondere bei einer sehr großen Anzahl von Prozes- sinstanzen (typischerweise mehrere Millionen) kann so eine effiziente Überwa chung des Prozessprotokolls gewährleistet werden Fig. 4 zeigt ein Blockdiagramm einer Prozess-Eingriffs-Engine, aus dem die Be- ziehungen der Anomalie-Detektions-Engine, der Anomalie-Korrektur-Engine und der Routing-Engine für einen bestimmten Sensor hervorgehen.

Die Konfiguration eines Sensors zur Identifikation einer bestimmten Prozessano- malie beinhaltet das Prozessprotokoll, die Kriterien (Sensordefinition) der Anoma lie, das Zeitintervall der periodischen Überprüfung des Prozessprotokolls auf diese Anomalie, die Zuweisungsregel sowie die festgelegte Menge möglicher Aktionen zur Anomaliebehebung. Ausgehend von der Sensorkonfiguration erfolgt zunächst die (optionale) Berech nung des gefilterten Prozessprotokolls für einen Nutzer auf Basis der Zuweisungs regel. Dieses gegebenenfalls gefilterte Prozessprotokoll wird dann der Anomalie- Detektions-Engine zur Verfügung gestellt. Die Anomalie-Detektions-Engine über wacht das gefilterte Prozessprotokoll und ermittelt daraus jene Prozessinstanzen, die der Sensordefinition entsprechen, also eine Anomalie gemäß der Sensordefini tion aufweisen. Für die ermittelten bzw. detektierten Prozessinstanzen werden in einem weiteren Schritt die Prozesseingriffsinstanzen erzeugt und in den jeweiligen Quellsystemen zur Ausführung gebracht. Gemäß einen weiteren Aspekt der Erfindung kann eine Benachrichtigungs-Engine vorgesehen sein, mit der Nutzer über aufgetretene Prozessanomalien (= Prozessin stanzen, die eine Anomie aufweisen) informiert werden können. Ein Blockdia gramm einer Benachrichtigungs-Engine ist in Fig. 5 gezeigt. Im Unterschied zur in Fig. 4 gezeigten Prozess-Eingriffs-Engine bezieht sich die Benachrichtigungs-Engine nicht auf einen einzelnen Sensor, sondern bezieht alle Anomalien mit ein, die einem bestimmten Nutzer über verschiedene Sensoren zu- geordnet sind. Die Ausgangsbasis für die Benachrichtigung eines Nutzers ist daher die Menge aller ihm zugewiesenen Prozesseingriffsinstanzen (in Fig. 5 mit Process Intervention Store bezeichnet). Diese Menge wird entsprechend der Frequenz des Sensors (Sensorintervall) in der Sensorkonfiguration laufend aktualisiert und die neu entstehenden Anomalien über die Zeit gesammelt.

Neben dem Process Intervention Store spielt das Prozesseingriffsregister eine ent scheidende Rolle bei der Benachrichtigung. In dem Prozesseingriffsregister werden die einem Nutzer bereits zum Zeitpunkt der vergangenen Benachrichtigung zuge- wiesenen Anomalien festgehalten bzw. registriert.

Die Menge neuer, d.h. seit der letzten Benachrichtigung entstanden Anomalien wird durch den Abgleich des Process Intervention Store mit dem Prozesseingriffsregister ermittelt. Die Prozesseingriffsinstanzen, die nicht bereits Teil des Prozesseingriffs- registers sind, werden zudem hinaus fortlaufend auf ihren Status überprüft. Der Sta tus kann hierbei die Gültigkeit einer Anomalie umfassen - wenn eine neue Anoma lie vor der nächsten Benachrichtigung behoben wird, kann diese Anomalie wieder aus dem Process Intervention Store entfernt oder als ungültig markiert werden. Al- temativ kann für jede in das Prozesseingriffsregister zu übertragende Anomalie überprüft werden, ob diese Anomalie noch besteht. Diese Überprüfung kann mit Hilfe der Anomalie-Detektions-Engine durchgeführt werden. Der Abgleich und der Versand der entsprechenden Benachrichtigung erfolgt zu den im Benachrichti gungsintervall festgelegten Zeiten (z.B. täglich von Montag bis Freitag um 11 und 15 Uhr). Ein Nutzer erhält eine Benachrichtigung mit den gebündelten Anomalien, welche noch nicht Bestandteil des Prozesseingriffsregisters sind und zum Zeitpunkt der Benachrichtigung noch bestehen.

Durch die Entkopplung der Intervalle für die Überprüfung durch die Sensoren der Anomalie-Detektions-Engine und den Versand der Benachrichtigungen kann die Aktualität der Prozesseingriffsinstanzen unabhängig von der Nutzerbenachrichti gung gesteuert werden. Durch die sensorübergreifende Bündelung von Anomalien kann der Nutzer zentralisiert benachrichtigt werden. Mit Hilfe der Berücksichti gung des Status der Anomalien wird gewährleistet, dass der zuständige Bearbeiter nur über tatsächlich bestehenden Anomalien informiert wird.

Fig. 6 zeigt ein Blockdiagramm eines Gesamtsystems der Erfindung.

Durch das Zusammenwirken der Anomalie-Korrektur-Engine und der Benachrich- tigungs-Engine werden Anomalien erkannt und hierfür Prozesseingriffsinstanzen zur Behebung der Anomalien erzeugt, die Benachrichtigungen verschickt und die Anomaliebehebung damit begünstigt.

Fig. 7 zeigt anhand einer konkreten sich in Ausführung befindlichen Prozessinstanz das Zusammenwirken von Quellsystem, Prozessprotokoll, Anomalie-Detektions- Engine und Anomalie-Korrektur-Engine. Die Prozessinstanz umfasst in diesem Beispiel zwei Teilprozessinstanzen Pl und P2.

Bei der Teilprozessinstanz Pl handelt es sich um einen Vertriebsprozess, bei dem hier bereits vier Schritte ausgeführt wurden, nämlich die Schritte "Angebot erstel len", "Liefertermin bestätigen", "Produktion beauftragen" und "Spedition benach richtigen". Die Teilprozessinstanz Pl wurde in einem ERP-System ausgeführt.

Bei der Teilprozessinstanz P2 handelt es sich um einen Produktionsprozess, bei dem ein bestimmtes vorgefertigtes Bauteil gemäß Kundenwunsch lackiert wird. Bei der Teilprozessinstanz P2 wurden bereits drei Schritte ausgeführt, nämlich "Bauteil anfordem" (z.B. aus einem Bauteilelager), "Bauteil lackieren" (nach dem Lackieren wurde das Bauteil getrocknet), und "Lackdicke messen". Die Teilprozessinstanz P2 wurde von einem Lackierroboter ausgeführt, der entsprechende Sensoren zum Mes- sen der Lackdichte aufweist. Für die beiden in den Teilprozessinstanzen Pl und P2 ausgeführten Schritte werden entsprechende Einträge in dem Prozessprotokoll erzeugt (Schritte Sl und S2), wo- bei in Fig. 7 der Einfachheit halber nur der Ausführungszeitpunkt und die Kennung des jeweiligen Prozessschrittes gezeigt sind. Zu dem Schritt "Lackdicke messen" der Teilprozessinstanz P2 wird in dem Prozessprotokoll zusätzlich die gemessene Lackdichte gespeichert. Die Einträge in dem Prozessprotokoll werden vorteilhaf terweise direkt nach dem Ausführen der entsprechenden Schritte erzeugt.

Ein Sensor der Anomalie-Detektions-Engine überwacht fortlaufend (z.B. alle zwei Minuten) das Prozessprotokoll. Gemäß dem in Fig. 7 gezeigten Beispiel sieht die Sensordefinition vor, dass der Sensor das Prozessprotokoll darauf hin überwacht, ob innerhalb einer Prozessinstanz ein Schritt "Lackdicke messen" ausgeführt wurde, bei dem die gemessene Lackdicke kleiner als 3 mm ist. In diesem Beispiel wurde in dem Schritt "Lackdicke messen" eine Lackdicke von 1,5 mm gemessen. Eine Lackdicke von unter 3 mm stellt im Sinne der vorliegenden Erfindung eine Prozessanomalie dar. Der Wert der Mindestlackdicke von 3 mm ist hier fest vorgegeben. Er kann aber auch dynamisch vorgegeben werden, etwa aus den Anforderungen des bestellenden Kunden.

Weil der Sensor die vorstehend genannte Prozessanomalie detektiert hat, ist es er findungsgemäß vorgesehen, diese Prozessanomalie zu beheben. Hierzu teilt die Anomalie-Detektions-Engine der Anomalie-Korrektur-Engine mit, in welcher Pro zessinstanz welche Anomalie aufgetreten ist. In dem Beispiel gemäß Fig. 7 teilt die Anomalie-Detektions-Engine der Anomalie-Korrektur-Engine mit, dass der in dem Prozessprotokoll angegebenen Prozessinstanz eine zu geringe Lackdicke gemessen wurde.

Für diese spezifische Prozessanomalie wählt die Anomalie-Korrektur-Engine aus einer Menge von generischen Aktionen (die in Fig. 7 nicht gezeigt sind) jene gene rischen Aktionen aus, mit denen diese Prozessanomalie behoben werden kann. In dem vorliegenden Beispiel sind diese die generischen Aktionen "Liefertermin ver schieben" und "Nochmal lackieren". Die generische Aktion "Liefertermin verschie- ben" ist hier deshalb notwendig, da sich durch ein nochmaliges Lackieren des Bau- teils die Bereitstellung des Bauteils zur Übergabe an die Spedition verzögert.

Aus den ausgewählten generischen Aktionen erzeugt die Anomalie-Korrektur-En- gine Prozesseingriffsinstanzen. Die Prozesseingriffsinstanz "Liefertermin verschie- ben" wird von der Anomalie-Korrektur-Engine an das ERP-System übergeben (Schritt S3), in dem die erste Teilprozessinstanz Pl ausgeführt wurde. Die Pro- zesseingriffsinstanz "Nochmal lackieren" wird von der Anomalie-Korrektur-En gine an das Produktionssystem-System (z.B. an den Lackierroboter) übergeben (Schritt S4), in dem die zweite Teilprozessinstanz P2 ausgeführt wurde. Beim Er zeugen der Prozesseingriffsinstanzen aus den generischen Aktionen werden die Prozesseingriffsinstanzen mithilfe einer Anzahl von Parametern angepasst, wobei die Werte der Parameter fest vorgegeben sein können oder beispielsweise in Ab hängigkeit von der aktuellen Prozessinstanz gesetzt werden können. So kann die generische Aktion "Liefertermin verschieben" für unterschiedliche Prozessinstan zen unterschiedlicher Prozesse verwendet werden, um einen Liefertermin zu ver schieben. In dem vorliegenden Beispiel kann die Anomalie-Korrektur-Engine aus der Dauer für das Lackieren und das Trocknen des Bauteils und aus der Verfügbar keit des Lackierroboters die Verzögerung der Verfügbarkeit des Bauteils berech nen, und diese Verzögerung (z.B. 36 Stunden) als Parameter der Prozesseingriffs instanz "Liefertermin verschieben" übergeben. Die Anomalie-Korrektur-Engine kann die parametrisierten Prozesseingriffsinstan zen direkt an das jeweilige Quellsystem übergeben. Die Quellsysteme können dann die jeweilige Prozesseingriffsinstanz in Instruktionen umwandeln, die von dem je weiligen Quellsystem ausführbar sind. Alternativ und in vorteilhafter Weise ist es jedoch vorgesehen, dass die Anomalie- Korrektur-Engine aus den Prozesseingriffsinstanzen entsprechende durch das je- weilige Quellsystem ausführbare Instruktionen erzeugt und diese Instruktionen dann an das jeweilige Quellsystem übergibt. Dies hat den Vorteil, dass die Quell- Systeme nicht angepasst werden müssen, um aus den Prozesseingriffsinstanzen aus- führbare Instruktionen zu erzeugen. Das Erstellen von Instruktionen aus den Pro- zesseingriffsinstanzen kann so zentral durch die Anomalie-Korrektur-Engine vor genommen werden. Die Anomalie-Korrektur-Engine erzeugt die entsprechenden Instruktionen in Abhängigkeit von dem jeweiligen Quellsystem, dem die Instrukti- onen zur Verfügung gestellt werden sollen.

Die Prozesseingriffsinstanzen bzw. die zugehörigen Instruktionen werden dann von dem jeweiligen Quellsystem ausgeführt. Für die entsprechenden Schritte (gemäß den ausgeführten Instruktionen) können dann wiederum Einträge in dem Pro- zessprotokoll erzeugt werden (in Fig. 7 nicht gezeigt), die wiederum von dem Sen sor der Anomalie-Detektions-Engine überwacht werden können. Für das nochma lige Lackieren könnten so die Einträge "19.04.2018 12:00 Bauteil nochmal lackie ren", "19.04.2018 12:30 Trockenvorgang Start", "19.04.2018 12:43 Trockenvor gang Ende" und "19.04.2018 12:32 Lackdicke messen Lackdicke 3,05 mm" in dem Prozessprotokoll erzeugt werden. Da die Lackdicke nunmehr größer als 3 mm ist, gilt die Anomalie gemäß der Sensordefinition des Sensors, der das Prozessprotokoll überwacht, als behoben.

Fig. 7 zeigt anhand einer konkreten sich in Ausführung befindlichen Prozessinstanz das Zusammenwirken von Quellsystem, Prozessprotokoll, Anomalie-Detektions- Engine und Anomalie-Korrektur-Engine. Die Prozessinstanz umfasst in diesem Beispiel zwei Teilprozessinstanzen Pl und P2. Bei der Teilprozessinstanz Pl handelt es sich um einen Vertriebsprozess, bei dem hier bereits vier Schritte ausgeführt wurden, nämlich die Schritte "Angebot erstel- len", "Liefertermin bestätigen", "Produktion beauftragen" und "Spedition benach richtigen". Die Teilprozessinstanz Pl wurde in einem ERP-System ausgeführt.

Bei der Teilprozessinstanz P2 handelt es sich um einen Produktionsprozess, bei dem ein bestimmtes vorgefertigtes Bauteil gemäß Kundenwunsch lackiert wird. Bei der Teilprozessinstanz P2 wurden bereits drei Schritte aus ge führt, nämlich "Bauteil anfordem" (z.B. aus einem Bauteilelager), "Bauteil lackieren" (nach dem Lackieren wurde das Bauteil getrocknet), und "Lackdicke messen". Die Teilprozessinstanz P2 wurde von einem Lackierroboter ausgeführt, der entsprechende Sensoren zum Mes- sen der Lackdichte aufweist.

Lür die beiden in den Teilprozessinstanzen Pl und P2 ausgeführten Schritte werden entsprechende Einträge in dem Prozessprotokoll erzeugt (Schritte Sl und S2), wo- bei in Lig. 7 der Einfachheit halber nur der Ausführungszeitpunkt und die Kennung des jeweiligen Prozessschrittes gezeigt sind. Zu dem Schritt "Lackdicke messen" der Teilprozessinstanz P2 wird in dem Prozessprotokoll zusätzlich die gemessene Lackdichte gespeichert. Die Einträge in dem Prozessprotokoll werden vorteilhaf- terweise direkt nach dem Ausführen der entsprechenden Schritte erzeugt.

Ein Sensor der Anomalie-Detektions-Engine überwacht fortlaufend (z.B. alle zwei Minuten) das Prozessprotokoll. Gemäß dem in Big. 7 gezeigten Beispiel sieht die Sensordefinition vor, dass der Sensor das Prozessprotokoll darauf hin überwacht, ob innerhalb einer Prozessinstanz ein Schritt "Lackdicke messen" ausgeführt wurde, bei dem die gemessene Lackdicke kleiner als 3 mm ist.

In diesem Beispiel wurde in dem Schritt "Lackdicke messen" eine Lackdicke von 1,5 mm gemessen. Eine Lackdicke von unter 3 mm stellt im Sinne der vorliegenden Erfindung eine Prozessanomalie dar. Der Wert der Mindestlackdicke von 3 mm ist hier fest vorgegeben. Er kann aber auch dynamisch vorgegeben werden, etwa aus den Anforderungen des bestellenden Kunden.

Weil der Sensor die vorstehend genannte Prozessanomalie detektiert hat, ist es er- findungsgemäß vorgesehen, diese Prozessanomalie zu beheben. Hierzu teilt die Anomalie-Detektions-Engine der Anomalie-Korrektur-Engine mit, in welcher Pro- zessinstanz welche Anomalie aufgetreten ist. In dem Beispiel gemäß Fig. 7 teilt die Anomalie-Detektions-Engine der Anomalie-Korrektur-Engine mit, dass der in dem Prozessprotokoll angegebenen Prozessinstanz eine zu geringe Lackdicke gemessen wurde.

Für diese spezifische Prozessanomalie wählt die Anomalie-Korrektur-Engine aus einer Menge von generischen Aktionen (die in Fig. 7 nicht gezeigt sind) jene gene rischen Aktionen aus, mit denen diese Prozessanomalie behoben werden kann. In dem vorliegenden Beispiel sind diese die generischen Aktionen "Liefertermin ver schieben" und "Nochmal lackieren". Die generische Aktion "Liefertermin verschie ben" ist hier deshalb notwendig, da sich durch ein nochmaliges Lackieren des Bau teils die Bereitstellung des Bauteils zur Übergabe an die Spedition verzögert. Aus den ausgewählten generischen Aktionen erzeugt die Anomalie-Korrektur-En gine Prozesseingriffsinstanzen. Die Prozesseingriffsinstanz "Liefertermin verschie ben" wird von der Anomalie-Korrektur-Engine an das ERP-System übergeben (Schritt S3), in dem die erste Teilprozessinstanz Pl ausgeführt wurde. Die Pro zesseingriffsinstanz "Nochmal lackieren" wird von der Anomalie-Korrektur-En- gine an das Produktionssystem-System (z.B. an den Lackierroboter) übergeben (Schritt S4), in dem die zweite Teilprozessinstanz P2 ausgeführt wurde. Beim Er zeugen der Prozesseingriffsinstanzen aus den generischen Aktionen werden die Prozesseingriffsinstanzen mithilfe einer Anzahl von Parametern angepasst, wobei die Werte der Parameter fest vorgegeben sein können oder beispielsweise in Ab- hängigkeit von der aktuellen Prozessinstanz gesetzt werden können. So kann die generische Aktion "Liefertermin verschieben" für unterschiedliche Prozessinstan zen unterschiedlicher Prozesse verwendet werden, um einen Liefertermin zu ver schieben. In dem vorliegenden Beispiel kann die Anomalie-Korrektur-Engine aus der Dauer für das Lackieren und das Trocknen des Bauteils und aus der Verfügbar- keit des Lackierroboters die Verzögerung der Verfügbarkeit des Bauteils berech nen, und diese Verzögerung (z.B. 36 Stunden) als Parameter der Prozesseingriffs instanz "Liefertermin verschieben" übergeben.

Die Anomalie-Korrektur-Engine kann die parametrisierten Prozesseingriffsinstan- zen direkt an das jeweilige Quellsystem übergeben. Die Quellsysteme können dann die jeweilige Prozesseingriffsinstanz in Instruktionen umwandeln, die von dem je weiligen Quellsystem ausführbar sind.

Alternativ und in vorteilhafter Weise ist es jedoch vorgesehen, dass die Anomalie- Korrektur-Engine aus den Prozesseingriffs instanzen entsprechende durch das je weilige Quellsystem ausführbare Instruktionen erzeugt und diese Instruktionen dann an das jeweilige Quellsystem übergibt. Dies hat den Vorteil, dass die Quell systeme nicht angepasst werden müssen, um aus den Prozesseingriffsinstanzen aus führbare Instruktionen zu erzeugen. Das Erstellen von Instruktionen aus den Pro- zesseingriffsinstanzen kann so zentral durch die Anomalie-Korrektur-Engine vor genommen werden. Die Anomalie-Korrektur-Engine erzeugt die entsprechenden Instruktionen in Abhängigkeit von dem jeweiligen Quellsystem, dem die Instrukti onen zur Verfügung gestellt werden sollen. Die Prozesseingriffsinstanzen bzw. die zugehörigen Instruktionen werden dann von dem jeweiligen Quellsystem ausgeführt. Für die entsprechenden Schritte (gemäß den ausgeführten Instruktionen) können dann wiederum Einträge in dem Pro zessprotokoll erzeugt werden (in Fig. 7 nicht gezeigt), die wiederum von dem Sen sor der Anomalie-Detektions-Engine überwacht werden können. Für das nochma- lige Lackieren könnten so die Einträge "19.04.2018 12:00 Bauteil nochmal lackie- ren", "19.04.2018 12:30 Trockenvorgang Start", "19.04.2018 12:43 Trockenvor gang Ende" und "19.04.2018 12:32 Lackdicke messen Lackdicke 3,05 mm" in dem Prozessprotokoll erzeugt werden. Da die Lackdicke nunmehr größer als 3 mm ist, gilt die Anomalie gemäß der Sensordefinition des Sensors, der das Prozessprotokoll überwacht, als behoben.

Mit Bezug auf Fig. 8 werden abschließend die grundlegenden Schritte des erfin dungsgemäßen Verfahrens zusammengefasst. Eine Maschine führt mehrere Schritte z.B. eines Produktionsprozesses aus. Bei der Maschine kann es sich auch um ein Computersystem handeln, in dem bzw. mit dem ein Prozess (z.B. ein Bestellprozess in einem ERP-System) ausgeführt wird. Der von der Maschine ausgeführte Prozess (= Prozessinstanz) kann mehrere Prozess schritte umfassen. Jeder Prozessschritt erzeugt Daten, die als Prozessdaten PD in dem Prozessprotokoll gespeichert werden. Im Palle einer Maschine können diese Daten etwa Sensordaten oder Betriebsparameter umfassen. Die Prozessdaten um fassen neben diesen Daten zumindest eine Kennung der Prozessinstanz und eine Kennung des Prozessschrittes sowie eine Information (z.B. einen Zeitstempel), mit der die Reihenfolge der Prozessschritte einer Prozessinstanz festgelegt wird. Jeder Prozessschritt speichert die Prozessdaten während der Ausführung oder unmittelbar nach der Ausführung.

Das Prozessprotokoll kann in einer Datenbank eines Computersystems gespeichert werden, das über ein Kommunikationsnetzwerk mit der Maschine verbunden ist. Vorteilhaft ist es, wenn die Datenbank in einem Arbeitsspeicher des Computersys tems gespeichert wird.

Eine Anomalie-Detektions-Engine steuert einen Sensor (oder mehrere Sensoren), der laufend (oder in bestimmten zeitlichen Abständen) das Prozessprotokoll über wacht und anhand einer oder mehrere Sensordefinitionen fehlerhafte bzw. Anoma lie behaftete Prozessinstanzen PI in dem Prozessprotokoll ermittelt. Dadurch, dass die Prozessdaten während der Ausführung oder unmittelbar nach der Ausführung der jeweiligen Prozessschritte in dem Prozessprotokoll gespeichert werden, können fehlerhafte bzw. Anomalie behaftete Prozessinstanzen bereits während der Ausfüh rung der jeweiligen Prozessinstanz detektiert werden, d.h. bevor die Ausführung der jeweiligen Prozessinstanz abgeschlossen ist. In Abhängigkeit von den Zeitin tervallen, in denen der Sensor (bzw. die Sensoren) das Prozessprotokoll abffagen, ist sogar eine Detektion von fehlerhaften bzw. Anomalie behafteten Prozessinstan zen in Echtzeit möglich, was wiederum einen Eingriff in die jeweilige Prozessin stanz in Echtzeit ermöglicht, um den Fehler zu beheben bzw. die Anomalie zu be- seitigen.

Die Anomalie-Detektions-Engine übergibt die detektierten Prozessinstanzen PI an die Anomalie-Korrektur-Engine. Neben den Daten der detektierten Prozessinstan zen PI kann die Anomalie-Detektions-Engine der Anomalie-Korrektur-Engine noch weitere Daten (Hilfsdaten) übergeben, die die jeweilige Prozessinstanz näher beschreiben. Beispielsweise können diese Daten Information darüber umfassen, für welchen Kunden das von der Maschine bearbeitete Werkstück ist. Diese Hilfsdaten kann die Anomalie-Detektions-Engine aus weitere Datenbanken abffagen und der Anomalie-Korrektur-Engine zur Verfügung stellen.

In einer alternativen Ausgestaltung der Erfindung können diese Hilfsdaten auch von der Anomalie-Korrektur-Engine, z.B. aus weiteren Datenbanken abgefragt werden. Dies ist vorteilhaft, um die Last der Anomalie-Detektions-Engine zu verringern, insbesondere dann, wenn sehr große Prozessprotokolle (beispielsweise mit mehre- ren hundert Millionen Prozessschritten) möglichst in Echtzeit überwacht werden müssen.

Die Anomalie-Korrektur-Engine erzeugt für die von der Anomalie-Detektions-En gine übergebenen Prozessinstanzen Prozesseingriffsinstanzen, wie oben beschrie ben. Diese Prozesseingriffsinstanzen sind so ausgestaltet, dass mit Ihnen die jewei lige sich in Ausführung befindliche Prozessinstanz gesteuert werden kann. Bei dem in Fig. 8 gezeigten Bespiel erzeugt die Anomalie-Korrektur-Engine für jede Pro- zesseingriffsinstanz eine Instruktion oder mehrere Instruktionen und übergibt diese zur Ausführung an das jeweilige Quellsystem (= in dem die Prozessinstanz ausge- führt wird), das in dem in Fig. 8 gezeigten Beispiel die Maschine ist. Vorteilhaft ist es, wenn die Instruktionen so an das jeweilige Quellsystem angepasst werden, dass sie dort direkt zur Ausführung gebracht werden können. Bei dem in Fig. 8 gezeigten Beispiel kann die Maschine etwa veranlasst werden eine bestimmten Bearbeitungs- schritt durchzuführen, mit dem sich der detektierte Fehler beheben bzw. die detek- tierte Anomalie beseitigen lässt.

Die Anomalie-Detektions-Engine und die Anomalie-Korrektur-Engine können auf demselben Computersystem ausgeführt werden. Alternativ können die Anomalie- Detektions-Engine und die Anomalie-Korrektur-Engine auch auf getrennten, über ein Kommunikationsnetzwerk verbundenen Computersystemen ausgeführt werden.

In einer Ausgestaltung der Erfindung können mehrere Prozessprotokolle vorhanden sein, in denen Prozessdaten verschiedener Quellsysteme gespeichert werden. Zu dem können mehrere Anomalie-Detektions-Engines (die jeweils mehrere Sensoren steuern können) vorgesehen werden, die unterschiedliche Prozessprotokolle über- wachen oder ein Prozessprotokoll gemeinsam überwachen. Ferner können mehrere Anomalie-Korrektur-Engines vorgesehen werden, die jeweils für die Behebung be stimmter Prozessanomalien angepasst sind. In Abhängigkeit der detektierten Pro zessanomalie können die Anomalie-Detektions-Engines angepasst sein, die jewei lige detektierte Prozessinstanz an eine entsprechende Anomalie-Korrektur-Engine zu übergeben. Damit kann ein Netzwerk aus Prozessprotokollen, Anomalie-Detek tions-Engines und Anomalie-Korrektur-Engines bereitgestellt werden, in dem jeder Konten zur Lösung spezieller Aufgaben ausgebildet ist, wie beispielhaft in Fig. 9 gezeigt.