Einige der Lösung für die Geschäftsprozessverwaltung zugrunde liegende Entwurfsprinzipien
Dieses Thema behandelt zuerst allgemeine Richtlinien für das Aufteilen von Geschäftsprozessen in Stufen. Danach wird die Struktur einiger Orchestrierungen, Assemblys und Anwendungen der Lösung im Zusammenhang mit diesen Richtlinien und den Geschäftsanforderungen diskutiert. Weitere Informationen zu den Geschäftsanforderungen finden Sie unter "Geschäftsanforderungen" unter Grundlegendes zur Geschäftsprozessverwaltungslösung.
Aufteilen von Geschäftsprozessen
Bei der Betrachtung eines Geschäftsprozesses wird dieser häufig zuerst intuitiv als einzelner, unabänderlicher Prozess behandelt. Dies ist jedoch nicht immer der optimale Ansatz. Für Southridge Video ist ein Auftrag ein lange ausgeführter Geschäftsprozess, also ein Prozess, bei dem bis zu ein Jahr bis zu seinem Abschluss vergehen kann. In der Zwischenzeit kann sich der Geschäftsprozess selbst ändern. Damit Aktualisierungen des Geschäftsprozesses möglich sind, ohne In-Process-Aufträge zu unterbrechen, ist die Auftragsverarbeitung bei Southridge Video in Stufen unterteilt.
Die Stellen, an denen der Prozess unterteilt wird, sind dafür entscheidend, für welche Teile des Prozesses eine Versionsverwaltung erfolgen kann sowie für die Typen von Unterbrechungen, die für ausstehende Aufträge zugelassen werden. Die Southridge Video-Lösung verwendet vier allgemeine Kriterien, um die Stufen zu bestimmen:
Die logische Gruppierung der Schritte im Geschäftsprozess.
Den Gültigkeitsbereich von Vorgängen innerhalb einer Orchestrierung.
Die Elemente des Prozesses, für die eine Versionsverwaltung unter Berücksichtigung des Geschäftsprozesses sinnvoll ist.
Eine Orchestrierung sollte nach Abschluss eines langfristigen Vorgangs beendet werden.
Von diesen vier Kriterien sind das erste und vierte die kritischsten, weil es in der Regel wesentlich mehr Gültigkeitsbereiche von Vorgängen gibt als logische Gruppierungen bzw. offensichtliche Elemente für eine Versionsverwaltung. Beachten Sie jedoch, dass eine Orchestrierung nicht mitten in einem Gültigkeitsbereich beendet werden sollte.
Wenn Sie sich die Orchestrierung für die erste Stufe CableOrder1.odx ansehen, sehen Sie, dass sie effektiv mit der Anforderungs-Antwort-Sequenz für das Anlagensystem endet. Dies ist eine gute Stelle, um die Stufe zu beenden, da es sich um den Teil des Prozesses handelt, der die tatsächliche, physikalische Arbeit der Fertigstellung des Auftrags beinhaltet. Dadurch, dass die langen Verarbeitungsschritte im Bereich des Endes der Orchestrierung angesiedelt sind, wird garantiert, dass die Orchestrierung bei Aktivierung schnell beendet wird. Dies beschleunigt den Fortgang der Lösung insgesamt zu neueren Versionen der Orchestrierungen.
Hinweis
Obgleich die Lösung den Prozess in nicht kontinuierliche Stufen unterteilt, ermöglicht Ihnen die Lösungsüberwachung, mithilfe von BAM eine kontinuierliche Ansicht der Dinge.
Auftragsaktions-, Auftragsbroker- und Auftrags-Manager-Orchestrierungen
Zusätzlich zur Aufteilung der Auftragsverarbeitung in Stufen werden Sie auch feststellen, dass sich jede der Auftragsaktionen – z. B. Analyse des Auftrags, Auftragsüberprüfung, Auftragsstornierung – in einer gesonderten Orchestrierung befindet. Die Aufnahme jeder Aktion in eine gesonderte Orchestrierung entkoppelt die Aktionen von der Struktur der Stufen. Dies wiederum ermöglicht eine größere Flexibilität beim Entwerfen und der Versionsverwaltung der Stufen der Auftragsverarbeitung.
Der Auftragsbroker und der Auftrags-Manager befinden sich aus ähnlichen Gründen in gesonderten Orchestrierungen. Der Lösungsentwurf ermöglicht die Verwendung mehrere Auftrags-Manager zur Verarbeitung anderer Arten von Aufträgen. Die Entkopplung von Broker und Manager ermöglicht ferner, dass sich diese an unterschiedlichen Orten befinden können. Weitere Details zum Design des Orderbrokers finden Sie unter "Warum und Order Broker?" unter Verarbeitung in der OrderBroker-Orchestrierung. Details zum Bestell-Manager finden Sie unter Prozess-Manager-Logik.
Assemblys
Die in der Lösung vorhandenen Assemblys sind so organisiert, dass die Versionsverwaltung von Komponenten sowie das Verschieben von Komponenten auf andere Server unterstützt wird. Beispielsweise befinden sich Schemas in gesonderten Assemblys. Insbesondere befinden sich die Schemas für den Auftragsbroker in ihrer eigenen Assembly. Dies ermöglicht deren Versionsverwaltung, ohne andere Elemente der Lösung zu ändern. Darüber hinaus vereinfacht es das Verschieben des Auftragsbrokers in eine getrennte Gruppe oder einen anderen Server. Weitere Informationen zur Versionsverwaltung der Anwendungs- und Schemaassemblys finden Sie unter Versionsverwaltung der Geschäftsprozessverwaltungslösung.
Anwendungen
Wenn Sie in der BizTalk-Verwaltungskonsole nachsehen, können Sie sehen, dass die erstellte Lösung aus drei separaten Anwendungen besteht:
BTSScn.BPM.OrderBrokerApp, die Anwendung, die den Orderbroker enthält
BTSScn.BPM.CableOrderApp, die Anwendung, die die Auftragsverarbeitungskomponenten enthält
BTSScn.BPM.MessagingApp, eine Anwendung, die Artefakte sammelt, die von den beiden anderen Anwendungen gemeinsam genutzt werden
Die dreiteilige Struktur der Lösung ist möglich, weil BizTalk-Anwendungen in der Lage sind, Elemente zu verwenden, die sich in anderen Anwendungen derselben BizTalk-Gruppe befinden. Um die Elemente einer anderen Anwendung zu verwenden, fügen Sie einen Verweis von der verweisenden Anwendung auf die andere Anwendung hinzu. Informationen zum Verweisen auf andere Anwendungen finden Sie unter Hinzufügen eines Verweises auf eine andere Anwendung.
Das Sammeln allgemeiner Elemente in einer gesonderten Anwendung ermöglicht Ihnen ggf. die Aktualisierung von Komponenten an einer einzigen Stelle. Die gemeinsam genutzten Komponenten können beliebige Elemente sein, einschließlich Ports. Beispielsweise senden die Orchestrierungen in der Lösung Fehler an einen Fehlerberichterstellungs-Port. Dieser Port befindet sich in der Messaginganwendung BTSScn.BPM.MessagingApp, wo er von der gesamten Lösung verwendet werden kann.
Das Strukturieren der Lösung in drei Anwendungen erleichtert ebenfalls das Verschieben von Teilen der Lösung auf andere Server. Sie können jede Anwendung und deren referenzierte Anwendungen in eine MSI-Datei konvertieren. Diese MSI-Datei kann dann auf einem anderen Computer installiert werden. Informationen zum Konvertieren von Anwendungen in MSI-Dateien finden Sie unter Exportieren einer BizTalk-Anwendung.
Die Testlösung
Außerdem werden drei Testanwendungen in der BizTalk-Verwaltungskonsole ausgeführt: BTSScn.BPM.OrderBrokerApp.Test, BTSScn.BPM.CableOrderApp.Test und BTSScn.BPM.MessagingApp.Test. Diese drei Anwendungen enthalten nur die Ports für die Testanwendung und werden von den Hauptanwendungen referenziert. Diese Struktur ermöglicht die Verwendung der Testports durch die Hauptanwendungen, um eine Testlösung zu erstellen, während die Testports gleichzeitig von der Lösung entkoppelt werden.
Weitere Informationen
Implementierungshighlights der Lösung für die Geschäftsprozessverwaltung
Muster in der Lösung für die Geschäftsprozessverwaltung