Aufgaben - Hilferufe des Systems

Im Kontext von Schleupen.CS ist es unser Ziel, Geschäftsprozesse zu automatisieren. Dabei soll der Geschäftsprozess mit möglichst wenig Benutzerinteraktion auskommen. Leider kann es immer wieder zu Situationen kommen in denen ein automatisierter Prozessen nicht weiterlaufen kann und menschliche Hilfe nötig wird. Dies kann bedeuten, dass eine Entscheidung getroffen oder Daten ergänzt werden müssen, um den Arbeitsablauf fortzusetzen. Um menschliche Interaktion in einem im Hintergrund laufenden Workflow anzufordern, verwendet Schleupen.CS Aufgaben.

Siehe auch: CS in a Nutshell - Anomalieerkennung

Aufgabenarten

Jede in Schleupen.CS auslösbare Aufgabe gehört zu einer Aufgabenart. Aufgabenarten legen die Grundlegenden Eigenschaften für alle Aufgaben dieser Art fest. Hierzu gehören:

  • Berechtigungen für Delegation
  • Eskalation -an wen wird die Aufgabe nach Ablauf des eingestellten Zeitlimits eskaliert
  • Dialogabläufe für Ansicht und Bearbeiten
  • Einstellungen für die blockweise Verarbeitung
  • Regeln für das Anlegen und den Abschluss der Aufgaben
  • Konfiguration von E-Mail-Benachrichtigungen
  • Einstellungen zur Gruppierung in der Anzeige.
  • Komplexe Datenstrukturen, die von der Aufgabe verwendet werden

Auslösen einer Aufgabe in einem Workflow

Aufgaben können mittels BPMN in Workflows ausgelöst werden, indem eine Aktivität vom Type User-Task verwendet wird:

User-Task im WebModeler

In obigem Beispiel erstellt die Aktivität Buchverlust abwickeln (User Task) ein Aufgabe. Der Workflow wird anschließend "dehydriert", d.h. sein Zustand wird persistiert und er geht in den Status "Warte auf Aufgabe".

Die BPMN Modellierung für Workflows und Dialogabläufe erfolgt mittels des zur Plattform gehörenden Modellierungswerkzeugs WebModeler.

Benachrichtigung der Anwender

Wird eine Aufgabe erzeugt, erhalten alle Anwender, die dieser Aufgabenart zugeordnet sind eine Benachrichtigung im Aufgabenwidget des Portals. Je nach Berechtigung kann die Aufgabe bearbeitet, delegiert, eskaliert etc. werden.

Aufgaben im Portal

Löst der Anwender im Portal die Bearbeitung der Aufgabe aus, wird ein über die Aufgabenart verbundener Dialogablauf gestartet. Schließt der Anwender die Aufgabe ab, läuft der Workflow weiter.

Auslösen von Aufgaben an anderen Stellen

Aufgaben können nicht nur in Workflows, sondern an beliebigen Stellen wie UI, Services etc. durch Aufruf eines Service-Endpunkts erstellt werden.

Textaufgaben

Einfache Aufgaben, sogenannte Textaufgaben, können erstellt werden, indem über folgenden Endpunkt eine WSDL erstellt wird:

Diese kann er bearbeiten und der jeweilige Geschäftsprozess wird nach Bearbeitung fortgeführt.

http://<host>/Schleupen/Service%20Bus/Broker/MetadataActivityService.svc/TaskData/Schleupen.CS.PI.BPE.Tasks.CreateTaskActivityService_3.2?Parameter=[ArtifactIdentifier]

Der Aufruf zur Laufzeit erfolgt dann über den Broker

http://<host>/Schleupen/Service Bus/Broker/BrokerService.svc/TaskData/

Aufgaben mit komplexen Datentypen

Für Aufgaben mit komplexen Datentypen wird im kanonischen Modell der komplexe Datentyp im sogenannte Custom Data Model (CDM) modelliert.

Das CDM als Teil des kanonischen Modells von CS 3.0

Als Beispiel wird die Aufgabenart BuchVerlustAbwickelnTask der Bibliotheksverwaltung modelliert. Hierzu ist zunächst der fachliche Namespace CDM -> MT -> Buecher -> BuchVerlustAbwickelnTask anzulegen.

Dieses Vorgehen ist analog zu den Services im KSM.

Nun wird ein UML-Klassendiagramm mit dem Namen der Aufgabe angelegt. In diesem Diagramm werden die Klassen des komplexen Datentyps modelliert. Da ein Datenmodell modelliert wird, dürfen keine Operationen modelliert werden.

Über ein von Schleupen.CS zur Verfügung gestelltes Tool wird ein XML-Schema analog zu einer WSDL aus diesem UML-Modell exportiert. Dieses kann entweder direkt über das CS-Portal im Dialogablauf Prozessentwicklung dem System bekannt gemacht werden oder alternativ über den Service mit der ServiceId:

Schleupen.CS.PI.SR.IAccessSourceRepositoryActivityService_3.7

Eine Aufgabenart wird dann mithilfe des Powershell-Cmdlets New-TaskType angelegt, der diesen Datentyp referenziert. Alternativ über den Service mit der ServiceId:

Schleupen.CS.PI.BPE.Tasks.ITaskTypeEntityService_3.8

Auch für das programmatische Erstellen von Aufgaben mit komplexen Datentypen kann der oben genannte Broker-Endpunkt verwendet werden. Dieser erstellt eine WSDL, die Typinformationen dieses Schemas beinhaltet und somit zur Laufzeit einen typsicheren Service-Aufruf ermöglicht.

Cookie Consent mit Real Cookie Banner