• No results found

Modelling an Unstructured Process with CMMN

OMG proposed a new modelling notation named CMMN for modelling the unstructured business processes [23]. According to CMMN specification, CMMN is for modelling

the case/process where the activities are not so defined and repeated, but dependant on evolving circumstance and decision of knowledge workers [23]. Insurance claims, customer complaints, and mortgage handling are examples of such processes.

Figure 4.3shows the insurance claim process model using CMMN.

Figure 4.3: Case Model of Insurance Claim Process Using CMMN

The folder is a container that consists of all CMMN elements to model the process. The folder is called a case folder and it represent the name of the process which is an insurance claim process. The rectangle shape with angled corners shows the episodes of a process which is called stages. Claim registration, claim assessment, attach claim information and claim settlement are stages of the insurance claim process. The rectangle shapes with half rounded corners are called milestones which represent the goals to be achieved in a process. Claim registered, information collected and claim decision are milestones that are required to be achieved in processing of the claim request. The diamond shapes in the Figure 4.3 are named as sentry which define the entry and exit criteria for any task and stages.

The review claim request will be performed only when a claim request is received. The tasks with dotted boundary represent the concept of discretionary, which means the process can be executed or skipped considering the nature of received claim request. In this process, the task to authenticate policy holder can be skipped considering the

claim handler already knew the person as the existing policy holder. The claim registered milestone will be achieved once the tasks inside the claim registration stage are executed.

Claim registered milestones have connector to two stages. If the claim is registered, then the tasks inside claim assessment and attach base information can be performed. The parallel execution of these stages implies that during the collection of data, the claim assessment tasks can be performed concurrently. The claim assessment stage will be exited only if the claim decision is made. Moreover, it is worth noticing that the claim request can be rejected or cancel at any point during the claim processing which is depicted with user events attached to exit sentry on folder boundary.

Following are problems that were encountered while modelling an unstructured business process with BPMN (see Section 4.2.1. Here, we will again analyse these problems to assess the capabilities of CMMN to deal with them.

• Task Ordering: An unstructured business process also has some structured part which require the task ordering. CMMN doesn’t define the ordering in tasks execution. It doesn’t have the concept of sequential flow like BPMN, connector is used to show the dependency among tasks, stages, events and milestones. The tasks and stages without connectors can be executed in any order and any number of times.

• Available Optional Tasks: In CMMN, the execution of tasks or part of the process can be skipped considering the particular process/case instance. Such tasks and stages are represented by dotted boundary. For example, in Figure4.3, the task ‘request missing information’ can be skipped if information is not missing or in other words if no information is required from other stakeholders.

• Limited Alternatives: Since, the CMMN is declarative in nature, it doesn’t model all the steps that need to be taken during process execution. The tasks that are presented are usually abstract in nature, e.g. in a Figure 4.3, ‘collect claim information’ doesn’t specify on how to collect information or to whom to ask for information. Such declarative nature provides flexibility in process execution on run-time. However, a similar argument can be stated for a BPMN model that is very abstract in nature.

• Predefine Users: CMMN doesn’t have any notation to represent the users. The user roles are defined semantically when the case folder is initiated.

• Limited View on Data: The CMMN is meant to model those processes that evolve with time and the execution of process is mainly based on data and knowl- edge workers’ decisions. CMMN has concept of case file along with file versioning. However, the versioning of case file is defined semantically and there is no notation for it. From a visualization perspective, CMMN provide a very limited view over data.

• Tasks Dependency: Connectors and sentries represent the concept of task de- pendency in CMMN. The tasks will be executed only if the entry/exit condition associated with it is fulfilled. For example, in Figure4.3, the tasks of claim assess- ment and attach base information will only be executed if the claim is registered.

As compared to procedural languages like BPMN, CMMN is declarative, which specifies on what should be done in the process instead of how it should be done. The purpose of CMMN model is to provide guidance map which instructs the process engineers on what can be done for successful process execution. Instead of design-time defined conditional flows, the evolving data and knowledge of knowledge workers drive the process execution.

However, it is worth noticing that BPMN is more expressive in its process flow as compared to CMMN process model. On the other hand, discretionary task and stages of CMMN provide a better understanding on which tasks can be skipped during process execution as compare to ad-hoc sub-processes of BPMN. In the following section, BPMN and CMMN are compared based on their modelling concepts and constructs.