The in-depth Oracle docs are available here
In JDeveloper - create a new Application/Project of type BPM Application.
Then add a Composite With Case Management
This is what the generated composite looks like -
Let's look at the web service interface and the operations offered -
These operations are also available via the Case Management Java API.
To the right we have an Oracle Business Rules component. This will be used for defining out Policy Rules e.g. which activities are available in which phase etc.So essentially it is state driven - the rules engine deciding what should happen (or be available) when as our case progresses.
Here is the Case Component itself -
The following information can be entered here -
-Milestones or Phases
I have added 6 XSDs to the project -
- TaxBill - Bill sent to the taxpayer if she has paid too little tax.
- TaxInvestigation - Investigation of tax return for possible fraud etc.
- TaxPayer - Base data describing the tax payer
- TaxRebate - Rebate sent to the taxpayer if she has overpaid
- TaxReturn - end of year return made by the taxpayer
- DocumentsRequest- request for docs sent to taxpayer. Maybe requiring original receipts etc.
I add these to the Business Catalog -
Now to the Data -
The types defined above can now be added via the Case Management Data Tab -
Now to the User Events -
I have only added one event - Docs Provided Event i.e. raised when the tax payer provides missing documentation such as receipts.
Note the checkbox - Publish Case Events - when checked, this will cause case and user events to be published via EDN. For example, the case closed event could trigger a message that is picked up by some other process.
Case events encompass -
- Lifecycle Events
- Activity Events
- Document Events
- Data Events
- Milestone (Phase) Events
and, of course, User Events.
Now to the Stakeholders -
You can define multiple stakeholders for each case you define. Only stakeholders can perform actions on case objects that are part of a case. Ergo Stakeholders = Case Workers.
For this demo, I assign jcooper as Tax Form Checker and jstein as Tax Investigator
Permissions can also be defined on this tab -
The Oracle docs state "The administrator decides which actions each stakeholder can perform. By default, during deployment Oracle BPM grants stakeholders all the available permissions. After deployment the administrator can remove non-relevant permissions."
Now to Translation -
This allows me to specify German values for the Name strings - here I have added a couple of entries.
Now to the Activities -
As you see, there is no tab for activities in the Case component.
Activities can currently be -
- BPM processes
- Human Tasks
2 custom activities are included OOTB -
- Simple Human Task
Activities can be conditional, repeatable, manual or automatic.
Here again is the mind map for Activities -
Conduct Initial Assessment will be implemented as a BPM process.
Input/Output is TaxReturn
I create the process and then promote it as a Case Activity.
I make it Required.
Also, note how we can set permissions here.