In my previous blog, we looked at Oracle ACM's Title, Priority, and Category artifacts and their configurations in an Oracle ACM project. In this blog, we will dig a bit deeper into ACM, specifically ACM Activities. Within an ACM Case, when you create an ACM Activity, you are presented with a few properties that need be set for the activity. The values you select in these properties will define that activity. In this blog post, we will take a look at these properties and, more interestingly, at how a combination of these properties define a case activity, and hence the case.
Before we dive into the properties, here is a quick look into how to create an ACM activity and the three levels an activity progresses through within a case.
Creating a Case Activity
While creating your BPM project, make sure you selected the 'Composite with Case Management' option. If you do that, when you right-click any BPM process or Human Task it gives you an option to 'Promote as Case Activity'. When clicked, this creates a case activity under the case. That specific BPM process or that specific human task gets associated to the case activity, such that when that case activity is set to Running (see below for definition of Running), it kicks-off the BPM process or human task that you associated to that case activity.
Case Activity's 3 levels
A case activity progresses through 3 levels within a case.
- Available: An activity that is under the Available list, is available to the end-user to work on. I like to think of it as the 'To Do' list.
- Running: An activity that is under the Running list, has been kicked-off and the end-user/system is working/processing it. I like to think of it as the 'Doing' list.
- Completed: An activity that is under the Completed list, was under the Running list and has been finished by the end-user/system. I like to think of it as the 'Done' list.
The 4 properties for an Activity are:
- Conditionally Available
For the activation property, the options are 'Manually Activated' or 'Automatically Activated'.
Assuming no other property is selected and only 'Manually Activated' is selected, the end-user has the ability to manually make the Activity Available (see above for definition of Available).
Assuming no other property is selected and only 'Automatically Activated' is selected, the activity skips being available and goes directly into Running (see above for definition of Running), when a case instance is created.
For the 'Conditionally Available' property, the behavior is different depending on the Activation property selected.
If 'Manually Activated' is selected and 'Conditionally Available' is selected, the activity becomes automatically Available, once the condition(s) are satisfied. The end-user still has the option to manually make it Available, even if the condition(s) are not satisfied.
If 'Automatically Activated' is selected and 'Conditionally Available' is selected, the Activity skips being Available and goes directly into Running, once the condition(s) are satisfied.
The condition(s) mentioned above are managed via Business Rules, which deserves its own blog.
If the 'Required' property is selected, the Activity is set as being required Activity of that Case.
By default, no Case Activity is set as being required to be done, but if the 'Required' property is selected, that Activity has to be Completed (see above for definition of Completed), before the Case can be closed. Also, Activities marked as 'Required' are displayed in red color font in the BPM Workspace Case UI.
If the 'Repeatable' property is selected, the activity can be repeated.
By default, a case activity can only be done once, but if the 'Repeatable' property is selected, an activity can be made Available and/or set to Running n number of times, including having multiple instances of that activity made Available and/or Running in parallel.
For more reading on Oracle ACM, please have a look at the articles published by the Oracle A-team. Also, have a look at these other AVIO blogs -
- 5 Scenarios for Using Adaptive Case Management published by Kris Nelson.
- Adaptive Case Management Modeling with CMMN published by Jessica Ray.
Please feel free to leave me any comments or questions.