Entscheidet man sich für den Einsatz einer Process Engine zur Automatisierung der Prozessabläufe, gibt es vor der Auswahl eines Herstellers noch eine elementare Architektur-Frage zu beantworten: Soll eine eigenständige Process Engine (dann auch oft „Business Process Management Suite“ bzw. BPMS genannt) verwendet werden oder soll die Engine integraler Bestandteil einer Geschäftsanwendung sein.
Eine eigenständige Process Engine zeichnet sich dadurch aus, dass die Prozesse zentral gespeichert werden und mehrere Anwendungen per API (z. B. Web Services, RMI) darauf zugreifen. Diese Anwendungen sind in der Regel Web-Anwendungen oder Portale. Natürlich bringt jede BPMS eine eigene UI mit, diese wird aber aufgrund eingeschränkter Funktionen häufig nur für Admin- und Supportzwecke verwendet. Der Vorteil ist natürlich, dass unterschiedliche Anwendungen auf die zentralen Daten zugreifen können. Dies ist gerade bei bei Geschäftsprozessen wichtig, die von verschiedenen Organisationseinheiten bearbeitet werden, da jede Organisationseinheit spezialisierte Anwendungen verwendet (um nur einige zu nennen: CRM, SCM, Procurement-Systeme, Risk-Management) und so eine Integration der Prozesse in die „natürliche“ Arbeitsumgebung der Anwender möglich wird. Ein weiterer Vorteil an der Standalone-Variante ist die ganzheitliche Abbildung der Prozesse im Monitoring und Reporting. So wird eine organisations- und anwendungsübergreifende Sicht auf die Geschäftsprozesse möglich und Engstellen können analysiert und identifiziert werden.
Im Gegensatz dazu können Process Engines auch direkt in eine spezielle Anwendung integriert sein, man spricht dann von Embedded Process Engines. Diese Variante ist dann sinnvoll, wenn es sich um spezielle Prozesse handelt, die nur von einer Anwendung (beispielsweise einem Portal) aus Benutzerinteraktion vorsehen. Die Process Engine kann so auf die jeweiligen Anforderungen hin optimiert werden, sodass eine höhere Leistung für die jeweiligen Anwendungsfälle zu erwarten ist. Zudem entfällt der Integrationsaufwand zwischen UI und Process-Engine, da in der Regel die gleiche Technologie verwendet wird (z. B. Java-Methodenaufrufe). Weiterhin ist es im Unternehmensumfeld politisch gegenenfalls einfacher, eine Process-Engine einzuführen, wenn nur eine (die eigene) Anwendung davon betroffen ist. Aus Gesamt-Unternehmenssicht ergibt sich jedoch ein höherer Aufwand, da jede Anwendung die selben Komponenten wie Datenbank, Monitoring und Integration separat entwickeln muss. Ein weiterer Nachteil ergibt sich darin, dass die Prozessinformationen in verschiedenen Systemen verteilt sind und ggf. in ein gemeinsames Data Warehouse jeweils extrahiert werden müssen.
Die Architektur der Process Engine in der IT-Architektur sollte also zu Beginn sorgfältig geplant und bei der Auswahl eines Produkts bedacht werden. Nicht immer ist offensichlich, welche Architektur hinter einer „BPM Software“ steckt.











