Kündigung minijobber Muster
Das Muster „Task abbrechen” bietet die Möglichkeit, eine Aufgabe zurückzuziehen, die aktiviert wurde oder bereits ausgeführt wird. Dadurch wird sichergestellt, dass die Ausführung nicht beginnt oder abgeschlossen wird. Es ist auch ein gutes API-Muster, um Ihr CancellationToken als letzten Parameter zu behalten, den Ihre Methode akzeptiert. Dies passt sowieso gut zu optionalen Parametern, da sie nach allen erforderlichen Parametern angezeigt werden müssen. Dem Muster sind keine spezifischen Kontextbedingungen zugeordnet. Die meisten der untersuchten Angebote unterstützen dieses Muster in ihren Prozessmodellen. Die meisten unterstützen die erste Variante, wie in Abbildung 25 dargestellt: Staffware tut dies mit dem Rückzugskonstrukt, COSA erlaubt Token, von den Stellen vor Aufgaben zu entfernen, iPlanet stellt die AbortActivity-Methode bereit, FileNet stellt das Konstrukt „Terminate Branch” bereit und SAP Workflow stellt den Prozesssteuerungsschritt für diesen Zweck bereit, obwohl er nur begrenzt genutzt wird. BPEL unterstützt die zweite Variante über Fehlerkompensationshandler, die an Aufgaben angefügt sind, ebenso wie BPMN und XPDL mithilfe von Fehlertyptriggern, die an die Grenze der zu löschenden Aufgabe angefügt sind. UML 2.0-ADs bieten eine ähnliche Funktion, indem sie die Aufgabe, die abgebrochen werden soll, in einem unterbrechbaren Bereich platzieren, der durch ein Signal oder eine andere Aufgabe ausgelöst wird.
FLOWer unterstützt das Muster nicht direkt, obwohl Aufgaben übersprungen und neu ausgeführt werden können. Es gibt auch eine zweite Variante des Musters, bei der die Ausführung der Aufgabe bereits begonnen, aber noch nicht abgeschlossen ist. Dieses Szenario wird in Abbildung 26 dargestellt, in dem eine Aufgabe, die aktiviert wurde oder gerade ausgeführt wird, abgebrochen werden kann. Es ist wichtig, für beide Varianten zu beachten, dass der Abbruch nicht garantiert ist und es möglich ist, dass die Ausführung der Aufgabe bis zum Abschluss fortgesetzt wird. Tatsächlich funktioniert die Kündigungs- vs.-Fortsetzungsentscheidung als verzögerte Auswahl, wobei eine Racebedingung zwischen dem Abbruchereignis und der viel langsameren Aufgabe von Ressourcen, die auf Arbeitszuweisungen reagieren, eingerichtet wird. Für alle praktischen Zwecke ist es viel wahrscheinlicher, dass die Kündigung erfolgt, anstatt die Aufgabe weiterzuführen. Dieses Muster bietet eine Möglichkeit, eine angegebene Prozessinstanz anzuhalten und alle damit verbundenen Aufgaben zurückzuziehen.
Comments are closed.