MGP-010: CMMN Guidelines

Tags: #<Tag:0x00007f4eb95c1e08>


MGP-010 | 2017-04-14 | v1.1

CMMN Guidelines

This document describes a number of guidelines you should follow when working with CMMN in edoras one.

Usage of Exit Criteria

Sentries with exit criteria allow you to set the state of a Case Plan Item to “TERMINATED”. This state behaves mostly like “COMPLETED” since both are terminal states and thus allow us to complete a case.

However, they have a different semantic meaning: While a task or stage in state “COMPLETED” was successfully completed, the state “TERMINATED” indicates that a Case Plan Item was for some reason interrupted.
Valid use cases for Exit Criteria are, for instance, when the execution of one task makes another one obsolete or when completing a stage triggers the interruption of a case.

If you use an exit criterion during the “happy path” of a case because some Case Plan Items prevent the case from completing, you may have to check your model again. Often, such problems are caused by Manual Activation/Repeatable Tasks which are set to “Blocking”.

Conditions on Entry Criteria

In CMMN, it is possible to assign a condition to Exit and Entry Criteria. While conditions are explicitly modeled through gateways in BPMN, CMMN Entry and Exit Criteria do not offer a visible clue to whether or not there is a condition. For that reason, it is advisable, to use a different background color for sentries which contain a condition.
The color “#ffff00” (pure yellow) serves this purpose quite well because it reminds modelers of gateways in BPMN which are often depicted with a yellow background color as well. Regular entry criteria should remain white.
Unfortunately, the background color of exit criteria are black by default and it is therefore problematic to change their color without causing confusion. One possibility would be to assign a very dark yellow to exit criteria with a condition, for instance “#858500”.