6. ACM vs. BPM
• Knowledge work
• Unstructured data
• Isolated tasks
• Adhoc
• Case overall
coordination
• Routine Work
• Structured data
• Tasks in a flow
• Structured
• Process overall
coordination
17. 17
ACM Implementation
ACM Implementation best practices:
• Implementation Steps
• Case Activities
• Associating SOA Composite
• Specialize/Extend SOAP Interface
18. 18
ACM Implementation
Steps
• Configure the case in BPM Studio
– milestones, case data, stakeholders
• Configure Activities
– Human Task, BPMN Process which are used as ACM Activity
• Refine the case in BPM Studio
– activities, data mapping, rules, stakeholder-permissions, events …
• Implement UI for Human Tasks (maybe only for Development/Test purposes)
• Implement BPMN Processes
– Including the services calls to SOA layer
• Develop Custom User Interface(s) to present Case
• Deploy/Run/Test
19. 19
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
20. 20
Case Activity:
Custom Case
Java Implementation
• More difficult to maintain
• Continues build (unit tests)
• Deployment
• Governance
Which version of custom java in which version of composite
Only for (very) special/specific functionality
Exceptional: if you can’t do otherwise
21. 21
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
22. 22
Case Activity:
BPMN Process
BPM Implementation
• Existing BPM (‘old school’)
• Visual GUI
• Completely Integrated
• Complete control of process and data
The way the go!
23. 23
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
24. 24
Case Activity:
Human Task
Direct Human Task call
• Existing in BPM/SOA
(‘old school’)
• Visual GUI
• Completely Integrated
• NO complete control of data!
You can not use Task Outcome in the Case…
Solution: Use a BPMN Process in between
Let the BPMN Process call the Human Task and return the outcome
25. 25
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
26. 26
Missing Case Activity!
Direct Webservice Call
In a SOA landscape, often ‘just’ a webservice call is needed.
• Mediator!
• You can NOT use a mediator as Case Activity
Solution: Use a BPMN Process to call a webservice
Hopefully in a future release…
28. 28
Associating SOA
Composite
• ACM composite grows very fast!
quickly growing too large
• Add a SOA composite as associate composite, a ‘buddy’
All ‘extra’ case functionality (not really necessary in ACM composite)
29. 29
Specialize SOAP
interface
Specialize the default SOAP Interface
• Example: startCase operation
payload: anyXML
• Too generic for consumers
• Solution: place a Mediator in front
In the associate SOA composite
30. 30
Extend SOAP
interface
The default SOAP Interface is too limited
• Example: There is no method to start a activity
or to retrieve case history
• Solution: Java Case API provides much more functionality
Use a SOA Spring component (=Java) to expose this as SOAP
In the associate SOA composite
34. 34
Conclusion
• Step by step
• Only use BPM Process as Case Activity
• Use a second ‘buddy’ SOA composite for everything which needn’t be in
the BPM composite
Notas do Editor
Hier nog ACMN plaatje bij.
Niet moet de data zijn maar ongesturctureerde data
1 proces manager bijv GPS
You dont want to know how many services got a time out from a business prospective. Never do error handling in a case
Waarom niet:
Single point of failure
Performance reduction
Operational management can not measure
Dit incombinatie met samengestelde services en verantwoordelijkheid. Met name verschil met BPEL. Thomas Url. Granuariteit moet het zelfde zijn.
Granularity producttype or case types.
Dit incombinatie met samengestelde services en verantwoordelijkheid. Met name verschil met BPEL. Thomas Url. Granuariteit moet het zelfde zijn.
Emiel Paasschens
Graduated Aeronautical Engineering in 1996
Java and Oracle specialist since 1999
Oracle Certified Implementation Specialist for SOA
Got married in a tricycle and have a son & daughter
Amis Services, www.amis.nl
Founded in 1991
90 employees, 2 Aces, 1 Ace Directors
Located in Nieuwegein, The Netherlands
Oracle EMEA Middleware partner of the year (2014)
Blog: technology.amis.nl