BPMN in der Praxis
Der Roundtrip mit Open Source Tools
Aktueller Stand: BPMN 1.2; In der Entwicklung: BPMN 2.0
BPMN 2.0, Status & die Finalization Task Force (FTF)
Warum wollen alle BPMN 2.0?
BPM-Wunsch-Architektur mit BPMN 2.0
(KPI)Reporting
Rule Engine
Process Engine
ESBTaskLists /
Portal / Mobile / etc.
Legacy / Backendintern / extern
ProcessParticipants
(KPI) Monitoring
ProcessAnalyst
ProcessEngineer
<xml>
<asass>sddsd</sdsd>
<sdds>sdsds</sdsds>
<sdd>
<sddsds>sddsd</fff>
</sdd>
</ffdfsdf>
BPMN 2.0
auch BPMN 2.0
Speichern
Execution
ProcessAdministrator
ProcessManager
BPEL
etc.
Prozess-Anwendung
Was macht eine „Prozess-Anwendung“ aus?
„BPM Suite“„Zero Code!“
Ausführbares Prozessmodell
Prozess-Anwendung
Oder doch viel mehr?
BPM Suite?Zero
Code?
Ausführbares Prozessmodell
• Benutzeroberflächen• Schnittstellen• Geschäftslogik• Datenhaltung• Business Rules• Nicht funktionale Anforderungen
• …
Erster Prozess im Bereich mit unternehmensweiter SOA-PlattformVerbesserungen SOA-Plattform notwendig
Beispielprojekt mit Karte und Kompass
Der Prozess mit Pilotcharakter: DSL-Neukundenbestellung
Technische Umgebung
SOA-Plattform
Service Registry
jBPM JBoss Rules
...
JBoss ESB
Java-Enterprise-Plattform
EJB-Container JBoss Messaging
...
Web-Plattform
Servlet-Container Betriebs-Tools
Ausbaustufen für...
... Prozesse undServices in der SOA
... klassischeApplicationserver
... Web-Applikationen
Und die Teams?
Passt also die Magic BPM Suite?
Modelling Monitoring
EAI / SOAHuman Workflow
Business
IT
Magic BPM-Suite
Warum trotzdem BPMN 2.0?
ProcessForward
EngineeringProcessReverse
Engineering
ProcessMonitoring /Reporting
Process Centric
Development
Business
IT
Transparency
Ein Modell für alle?
Kunde schickt
Bestellung
Vertrieb prüft die
Bestellung
Logistik
versendet die
Ware
Buchhaltung stellt
die RechnungKunde bezahlt
Prozessmodelle: Verschiedene Zwecke und Zielgruppen!
Process Owner
Vorstand, Bereichsleiter
Process Manager
Abteilungs-, Teamleiter
Process Participant
Sachbearbeiter
Process Analyst
(Inhouse) Consultant
Process Engineer
Softwareentwickler
Prozess-landschaft
Prozess im Überblick
„Eigene“ Prozessteile
Alles
Technische Umsetzung
Die einzige Lösung: Ein Prozess – Viele Modelle
Prozess-Realität
Pro
zessm
odell
Pro
zessm
odell
Pro
zessm
odell
Pro
zessm
odell
Pro
zessm
odell
Owner Manager Participant Analyst Engineer
camunda BPMN-Framework
Ebene 2
Operatives Prozessmodell
Ebene 3a
Technisches
Prozessmodell
Ebene 1
Strategisches
Prozessmodell
Ebene 3b
IT-Spezifikation
Ebene 4b
Implementierung
Prozesslandschaft
Inhalt: Prozess im Überblick
Ziel: Schnelles Verständnis
Inhalt: Operative Abläufe
Ziel: Arbeits- und
Umsetzungsgrundlage
Inhalt: Technische Details
Ziel: Umsetzung
Fachlich
(Business)
Technisch
(IT)
Mit Process Engine
Ohne Process Engine
camunda BPMN-Framework
Ebene 2
Operatives Prozessmodell
Ebene 3a
Technisches
Prozessmodell
Ebene 1
Strategisches
Prozessmodell
Ebene 3b
IT-Spezifikation
Ebene 4b
Implementierung
Prozesslandschaft
Inhalt: Prozess im Überblick
Ziel: Schnelles Verständnis
Inhalt: Operative Abläufe
Ziel: Arbeits- und
Umsetzungsgrundlage
Inhalt: Technische Details
Ziel: Umsetzung
Fachlich
(Business)
Technisch
(IT)
Mit Process Engine
Ohne Process Engine
Ein Beispiel: Der „Recruiting-Prozess“R
ecru
itin
g-P
roze
ss
Un
se
re F
irm
a
Stellen-
ausschreibung
Bewerbungs-
einreichung
Be
we
rbe
r
Bewerbungs-
prüfung
Fa
ch
ab
teilu
ng
Stellen-
besetzung
Freie Stelle
entstanden
Freie Stelle
melden
Pe
rso
na
lab
teilu
ng
Stelle besetzt
Vertrag unterschrieben
Ebene 1
Die Stellenausschreibung aus Sicht des SB Personal
SB
Pe
rso
na
l
Angaben und
Anforderungen
erfragen
Nein
Stelle
beschreibenJa
Stellenbe-
schreibung
korrigieren
Stelle
ausgeschrieben
Alles klar?
Freie Stelle
gemeldet
Korrektur
erbeten
Stelle
ausschreiben
Führungskraft Fachbereich
Beschreibung
freigegeben
Meldung
sichten
SB PersonalProcess Participant Ebene 2
Die Stellenausschreibung aus zwei Perspektiven…
Freie Stelle
melden
Fü
hru
ng
skra
ft F
ach
be
reic
h
Personal-
bedarf
Aufgaben und
Anforderungen
mitteilen
Stellenbe-
schreibung
sichten
Korrektur
anmahnen
Stellenbe-
schreibung
freigeben
Nein
JaBeschreibung
freigegeben
OK?
SB Personal
Beschreibung
erhalten
Mehr Infos
erforderlich
SB
Pe
rso
na
l
Angaben und
Anforderungen
erfragen
Nein
Stelle
beschreibenJa
Stellenbe-
schreibung
korrigieren
Stelle
ausgeschrieben
Alles klar?
Freie Stelle
gemeldet
Korrektur
erbeten
Stelle
ausschreiben
Führungskraft Fachbereich
Beschreibung
freigegeben
Meldung
sichten
Ebene 2
Die Stellenausschreibung aus der VogelperspektiveS
B P
ers
on
al
Angaben und
Anforderungen
erfragen
Nein
Stelle
beschreibenJa
Stellenbe-
schreibung
korrigieren
Stelle
ausgeschrieben
Alles klar?
Freie Stelle
gemeldet
Korrektur
erbeten
Stelle
ausschreiben
Beschreibung
freigegeben
Freie Stelle
melden
Fü
hru
ng
skra
ft F
ach
be
reic
h
Personal-
bedarf
Aufgaben und
Anforderungen
mitteilen
Stellenbe-
schreibung
sichten
Korrektur
anmahnen
Stellenbe-
schreibung
freigeben
Nein
JaBeschreibung
freigegeben
OK?Beschreibung
erhalten
Mehr Infos
erforderlich
Meldung
sichten
Ebene 2
Die BPM-Lösung aus Sicht des SB PersonalS
B P
ers
on
al
Angaben und
Anforderungen
erfragen
Nein
Stelle
beschreibenJa
Stellenbe-
schreibung
korrigieren
Kanäle für
Ausschreibung
festlegen
Stelle
ausgeschrieben
Alles klar?
Freie Stelle
gemeldet
Korrektur
erbeten
Ausschreibung
anstoßen
Process Engine
Beschreibung
freigegeben
Ausschreibung
erfolgreich
HR
-Po
rta
lS
on
stig
es
SB PersonalProcess Participant Ebene 2-3
Aus Sicht beider Participants
Process Engine
Freie Stelle
melden
Fü
hru
ng
skra
ft F
ach
be
reic
h
Personal-
bedarf
Aufgaben und
Anforderungen
mitteilen
Stellenbe-
schreibung
sichten
Korrektur
anmahnen
Stellenbe-
schreibung
freigeben
Nein
Ja
Stelle
ausgeschrieben
OK?Beschreibung
erhalten
Mehr Infos
erforderlich
HR
-Po
rta
lS
on
stig
es
Ausschreibung
erfolgreich
SB
Pe
rso
na
l
Angaben und
Anforderungen
erfragen
Nein
Stelle
beschreibenJa
Stellenbe-
schreibung
korrigieren
Kanäle für
Ausschreibung
festlegen
Stelle
ausgeschrieben
Alles klar?
Freie Stelle
gemeldet
Korrektur
erbeten
Ausschreibung
anstoßen
Process Engine
Beschreibung
freigegeben
Ausschreibung
erfolgreich
HR
-Po
rta
lS
on
stig
es
Ebene 2-3
Ableiten des technischen Prozessmodells
SB
Pe
rso
na
l
Aufgaben und
Anforderungen
erfragen
Nein
Stelle
beschreibenJa
Stellenbe-
schreibung
korrigieren
Kanäle für
Ausschreibung
festlegen
Stelle
ausgeschrieben
Alles klar?
Freie Stelle
gemeldet
Korrektur
erbeten
Ausschreibung
anstoßen
Beschreibung
freigegeben
Ausschreibung
erfolgreich
HR
-Po
rta
lS
on
stig
es
Freie Stelle
melden
Fü
hru
ng
skra
ft F
ach
be
reic
h
Personal-
bedarf
Aufgaben und
Anforderungen
mitteilen
Stellenbe-
schreibung
sichten
Korrektur
anmahnen
Stellenbe-
schreibung
freigeben
Nein
Ja
Stelle
ausgeschrieben
OK?Beschreibung
erhalten
Mehr Infos
erforderlich
HR
-Po
rta
lS
on
stig
es
Ausschreibung
erfolgreich
Pro
ce
ss E
ng
ine
Au
tom
atisch
SB
Pe
rso
na
lF
üh
run
gskra
ft
Stelle
beschreiben
Stellenbe-
schreibung
prüfen
Stellenbe-
schreibung
korrigieren
Nein
Ausschreibung
anstoßen
Ja
Ausschreibung
durchführen
Stelle
ausgeschrieben
OK?
Erfolgsmeldung
senden
Die Ableitung des technischen Prozessmodells
Ebene 2 +3
Tooling-Beispiel: Das gesamte BPD im Signavio Process Editor
Perspektive für die Führungskraft im Fachbereich…
Der Prozess der Process EngineP
roce
ss E
ng
ine
Au
tom
atisch
SB
Pe
rso
na
lF
üh
run
gskra
ft
Stelle
beschreiben
Stellenbe-
schreibung
prüfen
Stellenbe-
schreibung
korrigieren
Nein
Ausschreibung
anstoßen
Ja
Ausschreibung
durchführen
Stelle
ausgeschrieben
OK?
Erfolgsmeldung
senden
DeveloperProcess Engineer
Ebene 3
Aber: Aktuell wird jBPM verwendet!
Das heißt es existieren verschiedene Modelle?
Repository in Process Engine
Fachliches Modell
Modell in der Entwicklung
Ablaufendes Modell
Entwicklungs-Repository (SVN)
BPMN-Repository (Signavio)
??
Logisches Modell
„Fraud-Service
aufrufen“
FraudService.checkFraud(customer)
Wie kommen die Fraktionen damit zusammen?
Verschiedene Rollen = verschiedene Arbeitsumgebungen
ProcessParticipant
ProcessAnalyst
ProcessEngineer
Der Betrieb
?
From Signavio to SVN
1. Business Analyst notifies IT
2. Developer creates development project
3. Developer starts working on the project
Signavio
Eclipse
camunda fox
SVN to Signavio
1. Developer commits changes
2. Business Analyst merges changes Signavio
Eclipse
camunda fox
Generischer Ansatz
Ja, es existieren verschiedene Modellversionen – Na und?
Repository in Process Engine
Fachliches Modell
Modell in der Entwicklung
Ablaufendes Modell
Entwicklungs-Repository (SVN)
BPMN-Repository (Signavio)
Logisches Modell
„Fraud-Service
aufrufen“
FraudService.checkFraud(customer)
camunda fox
Process Overview: Order
Type Version Resp. Repository Status
Executable 14 Bernd Activiti phase-out Activiti Explorer
Executable 15 Bernd Activiti deployed Activiti Explorer
Executable 2243 Falko SVN development Fisheye
BPMN BPD 5 Nils Signavio approved Signavio Modeler
BPMN BPD 6 Nils Signavio revision Signavio Modeler
Process Versions
Jobs & Todos
Type Resp. Description
Merging Nils Approved technical model raised conflict.
camunda fox merging tool
Dev Falko New business processmodell approved, check feasability
Signavio ModelerJIRA
Das geht…
Und ist „Mapping“ eigentlich so schlecht?
Und aus aktuellem Anlass: Welche OSS Process Engine?
• Open Source (Apache 2.0)
• POJO + iBatis
• „Library“ / „Framework“
• Flexibel und Erweiterbar
• BPMN 2.0
• Release 5.0 November 2010
Activiti: Die Java-Engine
Größerer Scope
Modeler (basierend auf OSS-Signavio)
BPMN 2.0
Aktuelle Strategie: Process Engine Abstraction Layer
ProcessEngine
Connector
API
Application Services
Services Application
ESB
ESB
Binding
Binding
Mappin
g
BPMN Modell
camunda foxis coming!
Community Edition Version 1.0
August 2010
fox.camunda.com
Alles interessant. Aber OSS. Zum Ausprobieren?
Was wir gerade versuchen… Wer macht mit??
IST
SOLL
Vielen Dank! Fragen?
Vielen Dank!camunda services GmbHZossener Str. 55-5810961 Berlin
Telefon: +49 30 664 0409-00Telefax: +49 30 664 0409-29
Email: [email protected]
www.bpm-guide.deDer Praxis-Blog zu BPM:
@camunda.com
Geschäftsführer
Bernd Rücker
bernd.ruecker
Java Forum Stuttgart
Stuttgart, 01.07.2010
Top Related