Entwerfen eines Workflows auf Grundlage von Durable Functions

Abgeschlossen

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:

  1. Ein Projektentwurf wird übermittelt.
  2. Eine Genehmigungsaufgabe wird einem Vorgesetzten zugewiesen, damit dieser den Projektentwurfsvorschlag überprüfen kann.
  3. Der Projektentwurfsvorschlag wird abgelehnt oder genehmigt.
  4. 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.

Visual representation of workflow showing the three functions in our orchestration.

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.