Wer macht es? Rollen und Organisation in automatisierten Prozessen.

Während es für die Modellierung von Prozessabläufen mit BPMN einen verbreiteten Standard gibt, existiert nichts Vergleichbares um Rollen zu definieren und die Personen auszuwählen, die die Arbeitsschritte in einem Prozess durchführen. Daher können diese Fragestellungen in verschiedenen Systemen zur Prozessautomatisierung unterschiedlich gelöst sein.

Zumindest ein Grundprinzip findet sich aber in den meisten Systemen: Die Benutzer-Tasks werden in verschiedenen Lanes (Bahnen) platziert und dadurch jeweils einer bestimmten Rolle zugeordnet. So werden etwa die Benutzer-Tasks, die in einer Lane „Einkauf“ angeordnet sind, den Mitarbeitern der Einkaufsabteilung zugeordnet.

Einfacher Beschaffungsanforderungsprozess als Beispiel für verschiedene Fragestellungen der Bearbeiter-Zuordnung

Weiterlesen

Mein neues Buch „Prozessautomatisierung mit BPMN“

Wie modelliert man Prozesse so, dass sie anschließend auf einer Process-Engine zur Ausführung gebracht werden können? Welche Rolle spielen dabei die etwas spezielleren Konstrukte der BPMN, wie z. B. die zahlreichen Ereignis-Typen? Wie wird das Zusammenspiel unterschiedlicher Systeme und menschlicher Aufgaben orchestriert? Und was wird neben dem grafischen Prozessmodell noch alles benötigt, um einen Prozess zu automatisieren?

Diese und weitere Fragen beantwortet mein neues Buch „Prozessautomatisierung mit BPMN“ anhand zahlreicher Beispiele. Alle vorgestellten Prozesse stehen zum Download zur Verfügung. Sie können mit der Open-Source-Version des Business-Process-Management-Systems „Bonita“ ausgeführt werden.

Wer die in den letzten Monaten in diesem Blog veröffentlichten Videos und Beispiele ansieht, wird viele davon in dem Buch wiederfinden. Das Buch, die Blogposts und die Videobeiträge ergänzen sich gegenseitig. Im Buch sind die Grundlagen und Gesamtzusammenhänge beschrieben, während die Blogposts detailliertere Anleitungen zu bestimmten Prozessen enthalten und die Videos die Prozessausführung zeigen.

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

BPMN in Action: Welches Ereignis gewinnt?

In den meisten BPMN-Prozessmodellen gibt es Verzweigungen. Wohl am häufigsten werden exklusive Gateways verwendet. Dort wird anhand von Daten – z. B. die Höhe einer Auftragssumme – entschieden, welcher Weg gewählt wird. Im Gegensatz dazu erfolgt die Entscheidung bei einem ereignisbasierten Gateway anhand von Ereignissen. Dabei wird auf das Eintreten mehrerer Ereignisse gewartet. Das Ereignis, das zuerst eintrifft, „gewinnt“ – und sein Pfad wird ausgewählt.

Unten wird ein typisches Beispiel für den Einsatz eines ereignisbasierten Gateways gezeigt. Dabei wird auf das Eintreffen einer Nachricht gewartet. Trifft sie nicht innerhalb einer bestimmten Frist ein, wird im Prozess reagiert, z. B. indem bei dem betreffenden Partner nachgefragt wird.

Leider verfügt das BPM-System Bonita, mit dem die Beispiele dieser Serie erstellt wurden, nicht über den ereignisbasierten Gateway. Im Video wird gezeigt, wie man dasselbe Verhalten auch auf andere Weise erreichen kann.

Weiterlesen

BPMN in Action: Which event wins?

Most BPMN models contain splits in the control flow. Most frequently used is probably the exclusive gateway. Such a gateway decides which way to go – based on data, such as the value of an order. An event-based gateway, on the other hand, decides on the basis of events. This gateway waits for several events to occur. The event that occurs first, „wins“ – and the path of this event is selected.

The process presented in the video contains a typical example of how to use an event-based gateway. At the gateway, the process waits for a message to arrive. If it isn’t received within a certain time span, a reaction is triggered, such as reminding the partner of the overdue message.

Unfortunately, the BPM-system Bonita – which is used for creating the examples in this series – doesn’t support event-based gateways. The video shows how to achieve the same behavior in a different way.

Link to the video

Weiterlesen

BPMN in Action: Wozu sind Mehrfachaktivitäten da?

Bei einer mit drei kleinen Strichen markierten BPMN-Aktivität handelt es sich um eine Mehrfachaktivität, englisch Multi-Instance-Aktivität. Wie der Name schon sagt, kann eine solche Aktivität mehrfach ausgeführt werden. Anders als bei einer Schleife muss dies jedoch nicht streng nacheinander erfolgen, bis eine bestimmte Bedingung erfüllt ist. Stattdessen wird eine Mehrfachaktivität für jedes Element einer Liste ausgeführt. Dies kann auch parallel, d. h. in beliebiger Reihenfolge, oder sogar zeitgleich (z. B. durch verschiedene Benutzer) erfolgen.

In Video wird dies am Beispiel eines Auftrags mit beliebig vielen Auftragspositionen gezeigt, die einzeln geprüft werden sollen. Das in der kostenlosen Community-Edition von Bonita ausführbare Modell steht wieder zum Download zur Verfügung.

Weiterlesen

BPMN in Action: When to Use Multi-Instance Activities?

A BPMN activity marked with three small lines, is a multi-instance activity. As the name already indicates, such an activity can be performed several times. Other than with a loop, you don’t need to carry out the activity instances one after the other, until a certain condition is fulfilled. Instead, a multi-instance activity is performed for each element of a list. This can be done in parallel, i. e. in any arbitrary order, or even simultaneously (e. g. by different users).

The video shows an example with an order that contains several line items. Each line item is inspected separately. You can download the model and execute it in the free community edition of Bonita.

Weiterlesen

BPMN in Action: Process Communication via a Message Queue

In the last post I have shown how a process running on a process engine can communicate with a second process that is installed on a different process engine. For the communication, the REST interface of the second process engine was used. Since there isn’t any standard for process engines‘ REST interfaces, the calls must be adapted to the specifics of the second engine’s interface.

A more flexible approach is the use of a message queue (MQ). Such a message queue ist provided by a message broker. The involved processes communicate by inserting and removing messages from a queue. With this approach it is easier to exchange one of the process engines with a different engine. It is even possible that a process communicates with an entirely different system, such as an ERP system. For this example, a small Java class has been written that is used as a replacement for the second process.

Weiterlesen

BPMN in Action: Collaboration of Two Process Engines

In the previous post I have shown how to model separate BPMN processes that communicate using message flow. In order to execute such a process collaboration, all processes need to run in the same process engine. However, if you have processes from different business partners with their own BPM systems, the processes are executed in different process engines.

The video shows how to implement the communication between processes in different systems, using a REST interface. One of the processes is executed in Bonita, the other one in Camunda. The Bonita process exchanges messages with a support process that handles the communication with the Camunda process via Camunda’s REST interface.

Download

The following zip file contains the Bonita project file as well as the BPMN process for camunda.

Weiterlesen