+ All Categories
Home > Technology > ACM Patterns and Oracle BPM Suite Best Practises

ACM Patterns and Oracle BPM Suite Best Practises

Date post: 14-Jul-2015
Category:
Upload: emiel-paasschens
View: 566 times
Download: 1 times
Share this document with a friend
Popular Tags:
34
2 Case Management Patterns Gertjan Reinders (domain architect), Rechtspraak (Judiciary) Emiel Paasschens (software architect), AMIS
Transcript

2

Case Management Patterns

Gertjan Reinders (domain architect), Rechtspraak (Judiciary)Emiel Paasschens (software architect), AMIS

Agenda

• Business ACM patterns

• Information ACM patterns

• Application ACM patterns

Proven technology

The ACM Business Pattern

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

Case Leading

Process Data

Parallel Processes

Gradularity Business Process

Information Pattern

Unstructed data(CMS)

Structureddata

Application pattern SOA

InvoiceCustomer Car types

CustomerOverview

Car

Invo

ice

Business Logic Separation

Case

CriminicalCriminallawAdministrative Family Commercial

Application Pattern Business Events

Error Handling and ACM

QuotationCustomer Car types

Customer overview

Car

qu

atat

ion Error

Emiel Paasschens

1996August 13,1973

Aran, 3 yearsJune 7, 2013

Amarin, 3 months

AMIS

Aircraft Maintenance Information System

technology.amis.nl

1991

90

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…

27

Simple ACM Composite

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

31

Extend SOAP interface

32

Extend SOAP interface

Spring Dependency Injection to wire all together !

33

Extend SOAP interface

Tip: Reuse existing Oracle EBJ’s !

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


Recommended