The document discusses Business Process Management (BPM) and the Activiti open-source BPM platform. It provides an overview of Activiti and how it can be used to model business processes, execute processes, and integrate with other applications and databases. Key features highlighted include its use of the BPMN 2.0 standard, Apache license, intuitive Java-based APIs, and support for process modeling, execution, administration and monitoring.
2. • Founder of Activiti & jBPM
• Passionate about Java and BPM
• Ex-core developer JBossjBPM
• Core developer Activiti
3
3. • What is Activiti?
• What is BPMN 2.0?
• BPM for business people
• BPM for developers
• Example / demo
4
4. • Apache licensed BPMN 2.0 engine
• BPM for business and IT people
• Process definitions as input
• Boxes and arrows
• Execution flow
• Manages executions
• Execute automatic steps
• While waiting,
persist execution state
5
5. Activiti Java Applications
Modeler
Activiti
Designer
Activiti
Activiti
Probe
Engine
Activiti
Explorer
Activiti REST interface
Cycle
iPhone Android
Explorer Explorer
6
6. • OMG standard
• Shapes
• Execution semantics
• File format
• First pure play BPM standard
• General endorsement
7
7. • BPM as a management discipline
• BPM as software engineering
8
9. • Abstract business process
• Drawing
• No technical details
• Executable business process
• Drawing
• Technical details
• Executable on a BPM System
10
10. Process
Business Collaboration
Intelligence Analyst
Developer
Developer
Sys admin Deploy Developer
11
11. Shared network drive
Doc mgmt system
Abstract process models
Doc mgmt system
Analyst Abstract process models
JIRA
SVN
Sys admin Maven repo
Developer
Developer
Doc mgmt system Developer
Maven repo
DB instances
Tomcat instances
12 Activiti instances
12. • Unified concept of repositories and artifacts
• Repository
• Tree structure
• Containing artifacts
• Artifacts
• Different types
• Links to other artifacts
• Links to people
13
13. • Network drive
• Word docs, PDFs, Screenshots
• Signavio model repository
Analyst
• BPMN process models
• Jira
• Issues
• SVN (code, projects)
• Java code
Devel • Executable process models
oper • Rules
Developer
• Forms
• Maven repo (deployable artifacts)
• Jar, War, Ear files
• Tomcat instances
• DB instances
Develo • Activiti instances
per
Sys admin
14
15. • Embeds in
• Your database Software Project
• Your transaction
• Your domain model
• Your Spring configuration
Tomcat Activiti Your
JDK 5 App
JBoss
…
Oracle, MySQL, PostgreSQL
16
16. • Activiti Engine is “just” a jar file
• Power to the developer
• Intuitive API
• Activiti tables next to your app’s tables
• Transaction integration
• Spring integration
• Great docs and examples
• Spec 500 pages vs simple user guide
17
30. • Use case: banks shouldn’t lend money to just anybody
• Thorough analysis is needed
• All steps needs to be recorded in official documents
• Decisions are done based on Excel decision tables
31