[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
20091014 J Bpm4 Hamburg
1. Next generation open source BPM
JBoss jBPM 4
bernd.ruecker@camunda.com
Bernd Rücker / bernd.ruecker@camunda.com / 1
2. Berater, Trainer, Coach
Softwareentwickler
Bernd Rücker
Committer bei jBPM bernd.ruecker@camunda.com
bernd ruecker@camunda com
Blog: www.bpm-guide.de
Bl b id d
Bernd Rücker / bernd.ruecker@camunda.com / 2
3. ca u da se ces G b
camunda services GmbH
Ganzheitliches BPM
Beratung
Training
Process Hosting
Standort: Berlin
Mitarbeiter: 7
Bernd Rücker / bernd.ruecker@camunda.com / 3
5. • W
Was ist ein G
i t i Geschäftsprozess?
Begriffsdefinition häft ?
Rechnung-
stellung
Bestel- Bestell-
Kunde annahme
Versand
Lieferung Kunde
lung
Waren-
entnahme
Bernd Rücker / bernd.ruecker@camunda.com / 5
6. Wie setze ich
das bloß
technisch
t h i h um? ?
Bernd Rücker / bernd.ruecker@camunda.com / 6
7. Möglichkeit 1:
Mö li hk it 1
Java-Entwicklungg
Probleme Geschäftsprozesse
• Lang laufend
• Wartezustände
• Timeouts & Eskalation
Nachteile
• Zu viel Arbeit!
• Prozess unsichtbar
Bernd Rücker / bernd.ruecker@camunda.com / 7
8. Business
Process
Engine!
E i !
Open Source (LGPL)
POJO + Hibernate
„Library“
Version 4.0 (10.07.09)
V i 4 0 (10 07 09)
Bernd Rücker / bernd.ruecker@camunda.com / 8
9. Das Prinzip der Prozessautomatisierung
Einleitung
Modeling
Monitoring und
Technisches
Reporting
Prozessmodell
Human Workflow
Management
Service
Orchestration
O h t ti
Bernd Rücker / bernd.ruecker@camunda.com / 9
10. Der Prozess
e o ess
(Workflow)
Bernd Rücker / bernd.ruecker@camunda.com / 10
11. Der Prozess
e o ess user task
(Workflow)
Business Process Modeling Notation
(BPMN 2.0)
2 0)
Bernd Rücker / bernd.ruecker@camunda.com / 11
12. Der Prozess
e o ess java
(Workflow)
Bernd Rücker / bernd.ruecker@camunda.com / 12
13. Der Prozess
e o ess
(Workflow)
gateway = decision
Bernd Rücker / bernd.ruecker@camunda.com / 13
14. Der Prozess
e o ess wait state !=
(Workflow) task
Bernd Rücker / bernd.ruecker@camunda.com / 14
21. Lokal oder Remote
Sync oder Async APIs &
JTA oder nicht
Architektur
Process
P
Service Command
ngine
Execution Service
Commands
ocess En
Client
Service
Management
Interceptor
Service
Task Pro Interceptor
Service
PVM Interface jPDL Implementierung
ervices
Event Listener
API
Se
Bernd Rücker / bernd.ruecker@camunda.com / 21
22. Und ActionHandler?
<state name="wait" >
<on event="start">
<event-listener
event listener
class="org.jbpm.examples.eventlistener.LogListener"/>
</on>
<transition to="end">
<event-listener
t li t
class="org.jbpm.examples.eventlistener.LogListener"/>
</transition>
</state>
/
public class LogListener implements EventListener {
public void notify(EventListenerExecution execution) {
bli id tif (E tLi t E ti ti )
execution.getVariable("logs");
...
execution.setVariable("logs", logs);
( g , g );
}
}
Bernd Rücker / bernd.ruecker@camunda.com / 22
23. Möglichkeiten
Mö li hk it
& Features
Bernd Rücker / bernd.ruecker@camunda.com / 23
24. Möglichkeiten
& Features
Bernd Rücker / bernd.ruecker@camunda.com / 24
25. j p
jbpm 3
vs. jbpm 4
Process Virtual Machine
Saubere Architektur BPMN
Bernd Rücker / bernd.ruecker@camunda.com / 25