acm patterns and oracle bpm suite best practises
TRANSCRIPT
2
Case Management Patterns
Gertjan Reinders (domain architect), Rechtspraak (Judiciary)Emiel Paasschens (software architect), AMIS
Structured Unstructured
Unstructureddata
Structured data
Process
Process
Knowledge workIndustry work
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
ACM Implementation
ACM Implementation best practices:
• Implementation Steps
• Case Activities
• Associating SOA Composite
• Specialize/Extend SOAP Interface
18
ACM ImplementationSteps
• 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
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
20
Case Activity: Custom Case
Java Implementation
• More difficult to maintain
• Continues build (unit tests)
• Deployment
• GovernanceWhich version of custom java in which version of composite
Only for (very) special/specific functionalityExceptional: if you can’t do otherwise
21
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
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
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
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 betweenLet the BPMN Process call the Human Task and return the outcome
25
Case Activities
Three types of Case Activities
1. Custom Activity (Custom Java)
2. BPMN Process
3. Human Task
26
Missing Case Activity!
Direct Webservice CallIn 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
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
Specialize SOAP interface
Specialize the default SOAP Interface
• Example: startCase operationpayload: anyXML
• Too generic for consumers
• Solution: place a Mediator in front In the associate SOA composite
30
Extend SOAP interface
The default SOAP Interface is too limited
• Example: There is no method to start a activityor to retrieve case history
• Solution: Java Case API provides much more functionalityUse a SOA Spring component (=Java) to expose this as SOAP In the associate SOA composite