BPMN in Action: An RPA Bot Starts a Process

I created this example of a connection between an executable BPMN process and RPA (Robotic Process Automation) some time ago. As described in this blog post, I had connected the BPM system „Bonita“ with the RPA system „UIPath“. Over time, new versions have been released and my examples no longer work with the current UIPath version. Since the handling of UIPath is a bit cumbersome if you only want to implement one or two mini-examples, I have now used the free version of Microsoft Power Automate instead. This makes it quite easy to create simple automations that should only run on your own desktop. There are some restrictions in the free version, but these are not problematic for the example presented here.

In the scenario under consideration, orders that are provided in the form of Excel files are to be handled by an executable process. To do this, it is necessary to transfer the data from the Excel file into the process. Without RPA, the data would have to be entered manually. This task is now performed by the bot. It reads the Excel file, converts the data into a suitable structure, logs into the BPMS, starts the order handling process and hands over the order data.

Weiterlesen

BPMN in Action: Ein RPA-Bot startet einen Prozess

Dieses Beispiel einer Verbindung eines ausführbaren BPMN-Prozesses mit RPA (Robotic-Process-Automation) hatte ich vor längerer Zeit schon einmal erstellt. Wie in diesem Blogbeitrag beschrieben, hatte ich das BPM-System „Bonita“ mit dem RPA-System „UIPath“ verbunden. Im Laufe der Zeit sind neue Versionen erschienen und mittlerweile funktionieren meine Beispiele nicht mehr mit der aktuellen UIPath-Version. Da das Handling von UIPath etwas umständlich ist, wenn man nur ein oder zwei Mini-Beispiele umsetzen möchte, habe ich stattdessen nun die kostenlose Version von Microsoft Power Automate verwendet. Damit ist es recht leicht möglich, einfache Automatisierungen zu erstellen, die nur auf dem eigenen Desktop laufen sollen. In der kostenlosen Version gibt es einige Einschränkungen, die für das hier vorgestellte Beispiel aber nicht problematisch sind.

In dem betrachteten Szenario sollen Aufträge, die in Form von Exceldateien vorliegen, in einem ausführbaren Prozess verarbeitet werden. Hierfür ist es erforderlich die Daten aus der Excel-Datei in den Prozess zu übernehmen. Ohne RPA müssten sie manuell erfasst werden. Diese Aufgabe wird nun von dem Bot übernommen. Er liest die Excel-Datei ein, wandelt die Daten in eine geeignete Struktur um, loggt sich in das BPMS ein, startet dort den Auftragsverarbeitungsprozess und übergibt ihm die Auftragsdaten.

Weiterlesen

Einordnung und Abgrenzung von Prozesstechnologien

In meinem Buch über Technologien für Geschäftsprozesse habe ich nicht nur verschiedene Technologien, Tools und Notations-Standards beschrieben, sondern auch dargestellt, für welche Aufgaben sie eingesetzt werden können und wie gut sie die betreffende Aufgabe jeweils erfüllen. Als Grundlage hierfür dient die folgende Einteilung der wichtigsten Aufgaben, die im Zusammenhang mit der Automatisierung von Prozessen durchgeführt werden:

  • Prozessdokumentation
  • Prozessanalyse
  • Prozessentwurf
  • Prozessimplementierung
  • Prozessplanung
  • Prozesssteuerung
  • Ausführung der Arbeitsschritte
  • Prozesscontrolling
  • Process-Governance

Dabei gebe ich für die jeweilige Technologie an, ob es sich bei der betreffenden Aufgabe um ein zentrales Einsatzgebiet handelt (++), ob ein gewisser Beitrag dazu geleistet wird (+), oder ob kein wesentlicher Beitrag erfolgt (-).

Weiterlesen

Neues Einsteigerbuch zu Prozesstechnologien

Im Zuge der Vorbereitung einer Vorlesung fiel mir auf, dass es keine kompakte Übersicht über die vielen Arten von Tools und Technologien im Umfeld der Geschäftsprozesse gab. Die vielen speziellen Veröffentlichungen zu einzelnen Themen wie Prozessorchestrierung oder Process-Mining sind für Einsteiger weniger geeignet.

Zudem mache ich immer wieder die Erfahrung, dass es nach wie vor kein einheitliches Verständnis der verschiedenen Begriffe gibt. Spricht jemand von einem BPM-Tool oder einem BPM-System, dann kann Verschiedenes gemeint sein, wie zum Beispiel: Ein reines Modellierungstool, eine integrierte Plattform zum kollaborativen Erstellen und Publizieren von Modellen, oder ein komplettes Workflow-System zur Ausführung von Prozessen.

Die Softwarehersteller machen es einem auch nicht leichter. Was letztes Jahr noch als System zur „Prozessautomatisierung“ vermarktet wurde, ist jetzt eine Plattform zur „Orchestrierung“. Und auch die allgemein akzeptierte Bezeichnung „Robotic-Process-Automation“ ist eher unglücklich gewählt, da diese Technologie eher einzelne Arbeitsschritte als komplette Prozesse automatisiert.

Fazit: Man muss immer recht genau hinterfragen, was sich hinter den jeweiligen Begriffen verbirgt. Die meisten technologischen Konzepte hinter den Schlagwörtern lassen sich hingegen recht klar charakterisieren. Beispielsweise findet sich in vielen Systemen eine Process-Engine, mit der man Prozessmodelle zur Ausführung bringen kann. Auch die Funktionsweise von Process-Mining-Systeme basiert auf demselben Grundkonzept. Und kaum ein System zur Robotic-Process-Automation dürfte ohne eine Funktionalität zur automatischen Bedienung grafischer Benutzungsoberflächen auskommen.

Weiterlesen

BPMS mit RPA verbinden – am Beispiel Bonita und UIPath

Update 21.2.2024: Aufgrund einiger Änderungen in UIPath, lässt sich dieses Beispiel in der aktuellen Version nicht mehr ausführen. Daher habe ich es mit einem anderen RPA-System, Microsoft Power Automate, neu erstellt. Dies ist in diesem Post beschrieben.


Robotic-Process-Automation (RPA) ist sehr beliebt um Routineaufgaben zu automatisieren. Andererseits eignet sich RPA nicht dazu, gesamte Ende-zu-Ende-Prozesse zu steuern. Dies ist die Stärke von Workflow- oder Business-Process-Management-Systemen (BPMS). Es liegt daher nahe, BPMS und RPA miteinander zu verbinden. Das BPMS kümmert sich um den Gesamtablauf. Bei den einzelnen Aufgaben innerhalb des Prozesses kann es sich entweder um Benutzer-Tasks oder um Systemaufrufe über Schnittstellen handeln – oder aber um Tasks, die von RPA-Bots ausgeführt werden.

In der Community Edition des BPMS Bonita stehen hierfür seit Kurzem Konnektoren zum RPA-System UIPath zur Verfügung. In UIPath kann man ebenfalls Konnektoren zu Bonita nutzen. Zum Testen habe ich einmal zwei kleine Beispiele erstellt:

  1. Im ersten Beispiel liegen Auftragsdaten in Form eines Excel-Sheets vor. Sie werden von einem RPA-Bot eingelesen, der anschließend einen Bonita-Prozess startet und diesem die Daten übergibt.
  2. Im zweiten Beispiel ruft ein Bonita-Prozess einen RPA-Bot auf, damit dieser einen aktuellen Wechselkurs aus einer Webseite ausliest.

Weiterlesen

Connecting BPMS with RPA – using Bonita and UIPath

Update 21.02.2004: Due to some changes in UIPath, this example doesn’t run anymore on the current version. I have re-created the example using another RPA system (Microsoft Power Automate Desktop). See this post.


Robotic Process Automation (RPA) is very popular for automating routine tasks. However, RPA is not very good at controlling entire end-to-end-processes. This is the realm of Workflow or Business Process Management Systems. Therefore, it can be a good idea to connect BPMS with RPA. The BPMS manages the overall process flow. The different tasks in the process can either be user tasks or system calls via interfaces – or tasks that are performed by RPA bots.

The latest version of the BPMS Bonita (community edition) contains connectors to the RPA system UIPath. Vice versa, UIPath also provides connectors to Bonita. I have tested this integration using the following two examples:

  1. In the first example, order data are provided as Excel sheets. They are read by an RPA bot. Then the bot starts a Bonita process and hands over the order data.
  2. In the second example, a Bonita process calls an RPA bot in order to retrieve a currency exchange rate from a website.

Weiterlesen

PragmaDev Process verifiziert BPMN-Modelle

Mit diesem von der Pariser Firma Pragmadev entwickelten Tool kann man BPMN-Modelle überprüfen, Modellierungsfehler finden und sicherstellen, dass bei der Ausführung des Modells festgelegte Bedingungen eingehalten werden. Beispielsweise ermittelt das Tool die Zahl sämtlicher möglichen Ausführungspfade. Ist diese Zahl sehr hoch, deutet dies auf ein zu komplexes Modell hin. Auch nicht erreichbare Pfade können gefunden werden.

Weiterlesen

BPMN-Modelle per Text erstellen

Beispielprozess in Sketch Miner

Die meisten BPMN-Tools verfügen über einen graphischen Editor, in dem man die gewünschten Symbole mit der Maus platziert und geeignet miteinander verbindet. Das funktioniert zwar recht intuitiv, doch dauert es vergleichsweise lange, ein etwas größeres Modell zusammenzuklicken. Eine rein textbasierte Erfassung kann wesentlich schneller gehen. Daher verfügen manche Tools zusätzlich über eine Möglichkeit zur tabellarischen Erfassung. Für rein sequenzielle Abläufe funktioniert dies sehr gut: Man muss einfach nur die Namen der aufeinanderfolgenden Aktivitäten eingeben. Wenn man aber auch Verzweigungen, Schleifen usw. per Text definieren möchte, dann braucht man spezielle Markierungen und Sprunganweisungen, was die Sache schnell kompliziert macht. Da ist es oftmals einfacher, in die grafische Darstellung zu wechseln, um Gateways und ähnliches hinzuzufügen.

Die Plattform BPMN Sketch Miner setzt zur Modellerstellung hingegen komplett auf Text.

Weiterlesen

iGrafx Platform: Die Zusammenhänge im Fokus

Bei vielen Modellierungswerkzeugen und -plattformen steht vor allem die grafische Modellierung im Vordergrund. iGrafx legt den Fokus stärker auf das Zusammenspiel von Prozessen, Aufbauorganisation, Strategien, Anforderungen, IT-Systemen und vielen weiteren Elementen. Selbstverständlich bietet auch die web-basierte iGrafx-Plattform eine leistungsfähige Modellierungsoberfläche an, mit der man BPMN-Prozessmodelle erstellen kann. Die eigentliche Stärke des Systems liegt jedoch vor allem in seinem umfangreichen Repository mit zahlreichen Auswertungsmöglichkeiten, u. a. in Form von Reports oder Charts, die in individuell zusammenstellbare Dashboards integriert werden können.

Weiterlesen

Prozessmanagement-Plattform Symbio bietet vielfältige Prozessdarstellungen

Vom Prinzip her ähneln sich viele Web-basierte Plattformen für das Geschäftsprozessmanagement. Zu den typischen Funktionalitäten gehören unter anderem die grafische Modellierung von Prozessen, die Verknüpfung mit anderen Inhalten wie Organisationseinheiten oder IT-Systemen, ein integriertes Repository mit verschiedenen Analyse- und Auswertungsmöglichkeiten, benutzerfreundliche Darstellungen in Prozessportalen sowie Diskussions- und Kollaborationsmöglichkeiten. Auch Symbio bietet all diese und weitere Features, wie

Weiterlesen