2. Speaker’s qualifications
Founded jBPM in 2003
Project Lead of jBPM
Passionate about BPM and Java
Articles/international conferences
JBoss jBPM core developer (06/09)
Before: jBPM/BPM consultant
2
11. Conclusion
Any company
They all have
Any product
business processes
Any service
Which means
– 'Doing business'
== executing some business process
11
12. Newsflash
Every app you write
– Is (part of) a business process
So your job ...
– implementing business processes!
Wouldn't you rather have a powerful,
flexible framework where you can apply
all your Java-powers?
12
13. Introducing jBPM
Transactional state-machine
Generic graph execution engine
But most of all...
– A kick-ass JAVA BPM engine
13
14. jBPM Evolution
jBPM 4
Product • Activity Pluggability API
• Command Based Services
•Multiple Languages
• Many Execution modes
• DB Partitioning
• DB Evolution
• Full Embeddability
Project jBPM 3
• First Activity Pluggability
• First Multiple Languages
• First Enterprise Embeddability
jBPM 2
• Std Java Embeddable
• Hibernate state machine
jBPM 1
• EJB state machine
19. Processes As Part Of
Software Development
Software Project
Abstract Process Executable Process
Non-tech
Business
Analyst <details /> Developer
Analyst
Java, XML, Buildscripts,
Tests, … Developer
EAP jBPM Your
SOA-P
App
JBoss
Tomcat
JDK 5
Oracle, MySQL, PostgreSQL
20. jBPM API jbpm.cfg.xml
Configuration cfg = new Configuration();
ProcessEngine processEngine =
cfg.buildProcessEngine();
processEngine.getRepositoryService();
processEngine.getExecutionService();
processEngine.getHistoryService();
processEngine.getTaskService();
processEngine.getIdentityService();
36. Taking the train 2.0
• The Problem
– Using coins, ticket machines, conductors, ...
sooooo 2008
• The solution
JBPM on Rails
36
37. Use case
1. Ticket request
3.Accept
2.Price quote
Other Train
System (EJB)
37
38. Architecture
SMS Gateway
HTTP Interface (Servlet)
Ext.
jBPM on Rails Sys.
(EJB3)
User Registration
38
39. Where can I find it?
Blog http://www.jorambarrez.be
/blog/2009/09/18/train-ticket-demo-overview-final-part-getting-started-with-jbpm-in-less-than-a-minute/
39
41. JBPM v4: performance
jBPM 4.2 basic benchmark - Postgresql 8.3
(10 000 executio ns)
12
10
Seq. exec.
2 fixedT P
8 3 fixedT P
4 fixedT P
avg duration (ms)
5 fixedT P
6 fixedT P
6
7 fixedT P
8 fixedT P
9 fixedT P
4 10 fixedTP
2
0
process 01 proces s 02 proces s 03 proces s 04 proces s 05 random
Config: Ubuntu 9.04, AMD Phenom II X4 3.0Ghz, 8Gb Ram, 7200rpm HD
DB and benchmark on same machine
41
42. JBPM v4: performance
Avg process exec. time
– 0.75ms – 2ms
– 1.8 mil./hour
– Yeah, that's fast
jBPM overhead == (extremely) minimal
– So what are you waiting for?
42
43. Getting started
I just know you're excited to give it a try
You can do it tonight
Just before you go to sleep
Or even in your bed
Last demo movie
44. Q&A
makes your work flow
http://jbpm.org
http://proces s developments .blog s pot.com
http://jorambarrez.be/blog