Entwerfen eines Workflows auf Grundlage von Durable Functions
Mit Durable Functions können Sie einen zeitintensiven Workflow als Aktivitätensammlung orchestrieren. Sie können jeden Prozessschritt einem Funktionstyp und jeder Aufgabe einer Aktivität zuordnen. Ein automatisierter Prozess bedeutet, dass Sie sich nicht um die manuelle Überwachung oder Eskalation kümmern müssen, wenn eine Aufgabe nicht erledigt wird.
Bei der weiteren Automatisierung unseres Vorschlagsgenehmigungsprozesses müssen wir die Fälle berücksichtigen, in denen ein Prozessschritt nicht rechtzeitig abgeschlossen wird und eskaliert werden muss. Beispiel: Was geschieht, wenn wir für einen Vorschlag mit bestimmtem Umfang die Genehmigung eines Vorgesetzten benötigen, dieser aber noch nicht geantwortet hat?
Eskalationsschritte helfen hier weiter, da sie eine Aufgabe verschieben, wenn eine Frist erreicht wurde. Sie stellen sicher, dass Aufgaben abgeschlossen und nicht vergessen werden. Ein Eskalationsschritt könnte das Versenden von Erinnerungen umfassen oder sogar das Neuzuweisen einer Aufgabe an eine Person weiter oben in der Managementhierarchie.
In dieser Lerneinheit entwerfen Sie den Workflow für einen Genehmigungsprozess auf Grundlage von Durable Functions. In der nächsten Übung wenden Sie dieses Wissen an, um eine App mit Azure Durable Functions zu erstellen.
Beschreibung des Entwurfsgenehmigungsprozesses
Der Workflow beginnt, wenn ein Projektentwurf zur Genehmigung übermittelt wird. Der Vorschlag wird als Genehmigungsaufgabe einem Vorgesetzten zugewiesen. Der Vorgesetzte genehmigt den Vorschlag oder lehnt ihn ab. In der Praxis würde durch dieses Ereignis wahrscheinlich eine Benachrichtigung generiert und an den Autor des Vorschlags gesendet werden, um diesen über das Ereignis der Genehmigungs-/Ablehnungsanforderung zu informieren. In diesem Beispiel ändern Sie einfach den Status der Aufgabe in approved
oder rejected
.
Die Workflowschritte lauten wie folgt:
- Ein Projektentwurf wird übermittelt.
- Eine Genehmigungsaufgabe wird einem Vorgesetzten zugewiesen, damit dieser den Projektentwurfsvorschlag überprüfen kann.
- Der Projektentwurfsvorschlag wird abgelehnt oder genehmigt.
- Eine Eskalationsaufgabe wird zugewiesen, wenn die Genehmigungsaufgabe nicht innerhalb eines vorgegebenen Zeitraums abgeschlossen wird.
Bei der folgenden Abbildung handelt es sich um eine visuelle Darstellung des Workflows mit den drei Funktionen in der Orchestrierung: Anforderungsgenehmigung, Prozessgenehmigung und Eskalationsfunktion.
In der folgenden Tabelle wird gezeigt, wie die Workflowschritte den Funktionstypen zugeordnet werden können, die in einem Durable Functions-Workflow verwendet werden.
Workflowfunktion | Durable Function-Typ |
---|---|
Übermitteln eines Projektentwurfsvorschlags zur Genehmigung | Client-Funktion |
Zuweisen einer Genehmigungsaufgabe an den*die entsprechende*n Mitarbeiter*in | Orchestration-Funktion |
Genehmigungsaufgabe | Activity-Funktion |
Eskalationsaufgabe | Activity-Funktion |
Die Orchestrierungsfunktion verwaltet eine Regel im Workflow, die die Eskalationsaktivität startet, wenn die Genehmigungsaktivität innerhalb einer vorgegebenen Zeit nichts zurückgibt.
Wir wissen nun, was für den Workflow benötigt wird. In der nächsten Lerneinheit schreiben wir diesen als Code.