Geschaeftsprozesse mit BPMN beschreiben

Code dokumentiert wie etwas technisch funktioniert. Für das Warum und den Gesamtablauf braucht man etwas anderes. BPMN ist die Standardnotation für Geschäftsprozesse — lesbar für Entwickler und Nicht-Techniker gleichzeitig.

Was BPMN ist

Business Process Model and Notation. Eine grafische Sprache für Ablaufdiagramme die standardisiert ist — dasselbe Symbol bedeutet überall dasselbe.

Nicht zu verwechseln mit UML-Aktivitätsdiagrammen oder einfachen Flowcharts. BPMN hat spezifische Semantik für Ereignisse, Gateways und Pools.

Die wichtigsten Elemente

○    Start-Ereignis — Prozess beginnt
◎    End-Ereignis — Prozess endet
□    Task/Aufgabe — eine Aktivität
◇    Gateway — Entscheidung oder Parallelisierung
→    Sequenzfluss — Reihenfolge
---→ Message Flow — Kommunikation zwischen Pools

Gateway-Typen

◇ X XOR-Gateway (Exclusive): genau ein Pfad wird genommen (if/else).
◇ + AND-Gateway (Parallel): alle Pfade werden gleichzeitig gestartet.
◇ O OR-Gateway (Inclusive): ein oder mehrere Pfade werden genommen.

Beispiel: Bestellprozess

[Bestellung eingeht] → [Zahlung prüfen] → ◇
                                           ├─ [Zahlung OK] → [Artikel reservieren] → [Versand beauftragen] → ◎
                                           └─ [Zahlung fehlgeschlagen] → [Kundenmitteilung] → ◎

Pools und Lanes

Pools trennen verschiedene Organisationseinheiten oder Systeme. Lanes sind Swimlanes innerhalb eines Pools.

[Kunde Pool]
  Lane: Webshop  → [Bestellung aufgeben] →
[Shop-System Pool]
  Lane: Backend  → [Bestellung prüfen] → [Zahlung initiieren] →
[Zahlungsanbieter Pool]
               → [Zahlung verarbeiten] → [Bestätigung zurücksenden]

Message Flows (gestrichelte Pfeile) zeigen Kommunikation zwischen Pools.

Wann BPMN hilfreich ist

  • Wenn ein Prozess viele Beteiligte hat
  • Wenn man einem Kunden oder Chef erklären muss wie etwas funktioniert
  • Wenn man einen bestehenden Prozess analysiert bevor man ihn automatisiert
  • Als Grundlage für Workflow-Implementierungen

Tools

draw.io (kostenlos, selbst hostbar) hat native BPMN-Unterstützung.
bpmn.io ist ein Browser-basierter Editor speziell für BPMN.

Beide exportieren nach PNG/SVG für Dokumentation und als XML für Weiterverarbeitung.

Der Nutzen für Entwickler

BPMN zwingt dazu den Gesamtprozess vor der Implementierung zu verstehen. Wie oft wird Code geschrieben der einen Sonderfall nicht abdeckt weil niemand den Prozess vollständig durchgedacht hat? Ein BPMN-Diagramm macht Lücken und Unklarheiten sichtbar bevor die erste Zeile Code geschrieben wird.