Funktionsweise

Der Ansatz von con:cern unterscheidet sich grundsätzlich von dem herkömmlichen Ansatz, der den meisten am Markt befindlichen Produkten zugrunde liegt. Statt der Ausführungsreihenfolge der Aktivitäten, werden deren Vor- und Nachbedingungen festgelegt. Eine Aktivität wird auf einem Subjekt ausgeführt, wenn es bestimmte Merkmale aufweist. Die Ausführungsreihenfolge ergibt sich zur Laufzeit.

Engine

Im Bild erzeugt "some activity" aus Subjekten mit dem Merkmal "rotes Dreieck" Subjekte mit dem Merkmal "grünes Quadrat". "another activity" verarbeitet Subjekte mit der Eigenschaft "gelber Kreis" zu solchen mit der Eigenschaft "rotes Dreieck". Die zeitliche Anordnung der Aktivitäten zur Laufzeit ist in diesem Beispiel trivial. "another Activity" wird vor "some Activity" ausgeführt. Ein Sonderfall entspräche dem Auftreten von Subjekten mit der Eigenschaft "blaues Stäbchen" (es fehlt eine Information). Da keine Aktivität vorhanden ist, die mit diesen Subjekten umgehen kann, bleiben sie hängen.

Prozess Steuerung

Process

Beispiele

Urlaubsantrag

Wenn Antrag genehmigt, wird Urlaub in Kalender eingetragen. Das Subjekt des Prozesses ist der Urlaubsantrag. Er nimmt neben dem Mitarbeiter und seinem Vorgesetzten die Flagsgenehmigt und eingetragen auf, die initial den Wert null für "unbestimmt" haben. Die Aktivitäten heißen Genehmigung und Eintragung. Genehmigung ist eine asynchrone Aktivität. Der Aktor ist der Vorgesetzte des Antragstellers. Die Arbeitsliste eines Vorgesetzten ergibt sich also aus dem Inhalt der Aktivitätsliste von Genehmigung unter Anwendung eines Filters, der nur dem Vorgesetzten unterstellte Mitarbeiter zuläßt. Die Vorbedingung der Aktivität ist (genehmigt == null). Mögliche Nachbedingungen sind genehmigt = true oder genehmigt = false. Die Eintragung in den Kalender wird als synchrone Aktivität realisiert. Sie erfolgt, wenn der Antrag genehmigt wurde, genauer: genehmigt == true && eingetragen == null.

Reklamation

Wenn Reklamation gerechtfertigt, erfolgt Ersatzlieferung. Ansonsten wird dem Kunden mitgeteilt, daß er keinen Anspruch auf Ersatz hat und der Prüfer als Ansprechpartner genannt für eventuelle Rückfragen. Das Subjekt des Prozesses ist die Reklamation. An Prozeß-relevanten Informationen muß es neben dem Kunden und dem Prüfer ein Flaggeprüft und die FelderErsatzlieferungsdatumund Ablehnungsdatum aufnehmen. Initial enthält das Subjekt nur die Information Kunde. Alle anderen Informationen sind noch unbestimmt:null.

Prozess Graph

Die Aktivitäten in diesem Prozeß heißen Prüfen, Ersatzlieferung und Ablehnung. Die Vorbedingung für Prüfen ist genehmigt == null. Mögliche Nachbedingungen von Prüfen sind genehmigt = true oder genehmigt = false. Vorbedingung für Ersatzlieferung ist genehmigt == true && Ersatzlieferungsdatum == null, Vorbedingung für Ablehnung ist genehmigt == false && Ablehnungsdatum == null. Daß die Aktivität Prüfen zeitlich vorher ausgeführt worden sein muß, bevor die Vorbedingung einer der beiden anderen Aktivitäten erfüllt sein kann, ergibt sich aus den Abhängigkeiten. In diesem Prozess ist die Aktivität Prüfen asynchron und wird von einem Benutzer durchgefürt. Die Aktivität Ersatzlieferung wird in der ersten Ausbaustufe nur als User-Aktivität umgesetzt. Später soll die Aktivität ersetzt werden durch eine asynchrone System-Aktivität, die einen anderen Prozeß mit dem Subjekt Lieferung anstößt und dessen Ergebnis abwartet. Die Ersetzung der Aktivität kann zur Laufzeit erfolgen. Subjekte, die schon im Prozeß sind, werden sofort von der neuen Aktivität bearbeitet. Wenn gewünscht, könnten übergangsweise sogar beide Aktivitäten parallel laufen.Ablehnung ist eine synchrone Aktivität, die eine Mail schickt, das Ablehnungsdatum setzt und kein Ergebnis erwartet.

Zu einem späteren Zeitpunkt möchte man die Informationen, die bei der Workflow-gestützten Bearbeitung von Reklamationen entstehen, nutzen, um Auswertungen zu machen. Der Prozess wird dazu nicht verändert. Es wird lediglich eine Aktivität hinzugefügt, die relevante Informationen extrahiert und dem Auswertungssystem im csv-Format zur Verfügung stellt. Die Release Zyklen der beiden Module Reklamations-Prozeß und Reklamations-Auswertung sind voneinander unabhängig.

Vorteile / Eigenschaften