Einheitliche Prozesse über verschiedene Geschäftseinheiten mit WEBCON BPS
Warum ist uns dieses Thema überhaupt einen Artikel wert? Sollte das nicht selbstverständlich sein und keine größeren Schwierigkeiten bedeuten? Absolut! Die Erfahrungen aus der Praxis zeigen aber, dass WEBCON BPS mit dem Feature „Business Entities“ über eine so starke Funktion verfügt, dass wir diese gerne kurz vorstellen möchten.
Aufgabenstellung
Wir möchten einen Prozess für eine Bestellanforderung (Bedarfsanforderung) implementieren, der von der Struktur her unternehmensweit identisch sein soll, aber in den einzelnen Geschäftseinheiten, z.B. Lokationen, auf unterschiedliche Datenquellen für das Auslesen von Kostenstellen zugreifen soll, da unterschiedliche ERP-Systeme eingesetzt werden, bzw. die Lokationen über eigene Datenbankserver verfügen.
So sieht unser Prozess für die Bestellanforderung aus:

Der Prozessverlauf selbst ist jetzt nicht so wichtig, sondern die Forderung, dass dieser Prozess für alle Niederlassungen gelten soll, obwohl in den Lokationen eigene Datenbankserver betrieben werden, aus denen wir zusätzliche Informationen integrieren müssen, z.B. Kostenstellen.
Üblicherweise müsste man diesen Prozess jetzt für jede Lokation kopieren und die entscheidenden Schritte mit Zugriff auf externe Datenbanken auf die jeweils korrekten Parameter für die Lokation abändern. Etwas eleganter wäre es, an den betreffenden Schritten mit alternativen Pfaden je Lokation zu arbeiten. Die erste Variante führt zu mehreren Kopien desselben Prozesses und erhöht damit den Wartungsaufwand dramatisch. Die zweite Variante bläht den eigentlich einfachen Prozess deutlich auf und erhöht damit ebenfalls den Wartungsaufwand.
Clevere Lösung mit Business Entitäten
WEBCON BPS hat für eine solche Anforderung eine sehr elegante und effiziente Lösung. Man kann sog. Business Entitäten (Geschäftseinheiten) definieren, für die unterschiedliche Verbindungsparameter für die gleiche Datenquelle festgelegt werden können. Die Business Entitäten werden in den Systemeinstellungen definiert:

Hier wird festgelegt, für welche Benutzer oder Gruppen die jeweilige Geschäftseinheit die Standardeinheit beim Starten eines Prozesses sein soll. Außerdem wird definiert, welche Anwender diese Geschäftseinheit zusätzlich über eine Auswahl beim Prozessstart verwenden dürfen.
In der Prozessdefinition selbst tauchen nun die Business Entitäten auf und wir können die Prozessberechtigungen für jede Geschäftseinheit separat festlegen, falls notwendig.

In den Konfigurationen der Datenquellen können wir nun zu einer Datenquelle je Geschäftseinheit eine eigene Variante mit einer eigenen Verbindungskonfiguration anlegen. In der Verbindungskonfiguration wird der physische Zugriff hinterlegt, z.B. der Name des Datenbankservers, Datenbankname und Login.

Im Arbeitsschritt in der Workflowdefinition wird nur die übergeordnete Datenquelle angegeben, z.B. „DataWarehouse Kostenstellen“. Nehmen wir also an, dass wir in dem Arbeitsschritt „Beschaffung“ auf die Kostenstellen zugreifen müssen, die sich je Lokation in einer anderen Datenbanktabelle befinden. Wir geben daher im Arbeitsschritt „Beschaffung“ an, dass wir die Datenquelle „DataWarehouse Kostenstellen“ verwenden möchten.
Je nach Kontext der Lokation, in der der Workflow gerade abläuft, wird die passende Ausprägung der Datenquelle verwendet. Ein Anwender in der Lokation Chemnitz führt den Prozess durch die Festlegung bei der Geschäftseinheit immer im Kontext Chemnitz aus und würde immer die korrekte Datenquelle zu seinem Datenbankserver in Chemnitz verwenden. Analog verhält es sich mit Anwendern aus München etc.
Im Prozess selbst wird das alles über eine einzige, homogene Workflowdefinition abgebildet und wir müssen den Schritt „Beschaffung“ nicht mehrfach je Lokation pflegen oder gar eigene Versionen des Prozesses je Lokation erstellen.
Die Business Entitäten in WEBCON BPS helfen uns, Prozesse flexibel, effizient und wartungsarm implementieren zu können.