Kernkomponenten des Prozessframeworks

Das Prozessframework basiert auf einer modularen Architektur, mit der Entwickler anspruchsvolle Workflows über ihre Kernkomponenten erstellen können. Das Verständnis dieser Komponenten ist für die effektive Nutzung des Frameworks unerlässlich.

Prozess

Ein Prozess dient als übergeordneter Container, der die Ausführung von Schritten koordiniert. Es definiert den Fluss und das Routing von Daten zwischen den Schritten, um sicherzustellen, dass Prozessziele effizient erreicht werden. Prozesse verarbeiten Eingaben und Ausgaben und bieten Flexibilität und Skalierbarkeit über verschiedene Workflows hinweg.

Prozessfeatures

  • Zustandsbehaftet: Unterstützt Abfragen von Informationen wie Trackingstatus und Prozentabschluss sowie die Möglichkeit zum Anhalten und Fortsetzen.
  • Wiederverwendbar: Ein Prozess kann innerhalb anderer Prozesse aufgerufen werden, um Modularität und Wiederverwendbarkeit zu fördern.
  • Ereignisgesteuert: Verwendet ereignisbasierten Fluss mit Listenern, um Daten an Schritte und andere Prozesse weiterzuleiten.
  • Skalierbar: Nutzt bewährte Laufzeiten für globale Skalierbarkeit und Rollouts.
  • Cloud-Ereignis integriert: Integriert Branchenstandard-Ereignising zum Auslösen eines Prozesses oder Schritts.

Erstellen eines Prozesses

Um einen neuen Prozess zu erstellen, fügen Sie dem Projekt das Prozesspaket hinzu, und definieren Sie einen Namen für Ihren Prozess.

Schritt

Schritte sind die grundlegenden Bausteine innerhalb eines Prozesses. Jeder Schritt entspricht einer einzelnen Arbeitseinheit und kapselt eine oder mehrere Kernelfunktionen. Schritte können unabhängig von ihrer Verwendung in bestimmten Prozessen erstellt werden, wodurch die Wiederverwendbarkeit verbessert wird. Sie geben Ereignisse basierend auf der ausgeführten Arbeit aus, wodurch nachfolgende Schritte ausgelöst werden können.

Schrittfeatures

  • Zustandsbehaftet: Erleichtert das Nachverfolgen von Informationen wie Status und definierten Tags.
  • Wiederverwendbar: Schritte können über mehrere Prozesse hinweg verwendet werden.
  • Dynamisch: Schritte können je nach erforderlichem Muster dynamisch von einem Prozess erstellt werden.
  • Flexibel: Bietet verschiedene Arten von Schritten für Entwickler durch Nutzung von Kernelfunktionen, einschließlich Code-only, API-Aufrufe, AI-Agents und Human-in-the-Loop.
  • Auditierbar: Telemetrie ist sowohl für Schritte als auch für Prozesse aktiviert.

Definieren eines Schritts

Um einen Schritt zu erstellen, definieren Sie eine öffentliche Klasse, um den Schritt zu benennen und der KernelStepBase hinzuzufügen. Innerhalb Ihrer Klasse können Sie eine oder mehrere Kernelfunktionen integrieren.

Registrieren eines Schritts in einem Prozess

Nachdem Ihr Kurs erstellt wurde, müssen Sie ihn in Ihrem Prozess registrieren. Fügen Sie für den ersten Schritt im Prozess hinzu isEntryPoint: true , damit der Prozess weiß, wo er beginnen soll.

Schrittereignisse

Die Schritte stehen mehrere Ereignisse zur Verfügung, einschließlich:

  • OnEvent: Wird ausgelöst, wenn die Klasse die Ausführung abgeschlossen hat.
  • OnFunctionResult: Aktiviert, wenn die definierte Kernelfunktion Ergebnisse ausgibt, sodass die Ausgabe an eine oder mehrere Schritte gesendet werden kann.
  • SendOutputTo: Definiert den Schritt und die Eingabe zum Senden von Ergebnissen an einen nachfolgenden Schritt.

Muster

Muster standardisieren allgemeine Prozessflüsse und vereinfachen die Implementierung häufig verwendeter Vorgänge. Sie fördern einen konsistenten Ansatz zur Lösung von wiederkehrenden Problemen in verschiedenen Implementierungen und verbessern sowohl die Wartungsbarkeit als auch die Lesbarkeit.

Mustertypen

  • Fan In: Die Eingabe für den nächsten Schritt wird von mehreren Ausgaben aus vorherigen Schritten unterstützt.
  • Lüfterausgang: Die Ausgabe der vorherigen Schritte wird in mehrere Schritte weiter unten im Prozess geleitet.
  • Zyklus: Die Schritte werden bis zum Abschluss fortgesetzt, basierend auf Eingabe und Ausgabe.
  • Zuordnung reduzieren: Ausgaben aus einem Schritt werden in einem kleineren Betrag konsolidiert und an die Eingabe des nächsten Schritts weitergeleitet.

Einrichten eines Musters

Nachdem Ihre Klasse für Ihren Schritt erstellt und innerhalb des Prozesses registriert wurde, können Sie die Ereignisse definieren, die nachgelagert zu anderen Schritten gesendet werden sollen, oder Bedingungen für den Neustart der Schritte basierend auf der Ausgabe ihres Schritts festlegen.