Simplified CMN: A Modest Proposal
- Published: April 27, 2016
- Written by Lloyd Dugan
At the recent bpmNEXT2016 Conference, I had the opportunity to put forward a proposal for consideration by the BPM industry insiders present that a simpler, streamlined version of the Case Management Model & Notation (CMMN) v1.0 from the Object Management Group (OMG) could be used to encourage adoption of its use. Such a subset would function like the Descriptive and Analytic Conformance Classes in the OMG’s Business Process Model & Notation (BPMN) v2.0, which were crafted to better position BPMN to satisfy the different needs of different types of modeling communities.
Among the several arguments I advanced in support of this proposal, the cornerstone was the limitations of using BPMN to model case management situations. In BPMN, “Activity” is the “1st Class Citizen” in the underlying meta model, which means that much (though not all) of what is there is there to make use of Activity as the key Flow Node in representing operational behaviors. While “Event” is also present in BPMN, it is there principally to support the realization of control flow through the triggering of a “Process” to start or the altering of the direction control flow takes in the Process. In case management situations, Event should be the 1st Class Citizen of the modeling language, which is true of CMMN. In CMMN, the Event-Condition-Act (ECA) pattern is preeminent in declaratively describing behaviors, while in BPMN it is supportive in procedurally describing behaviors. Furthermore, BPMN generally has to resort to “exotic” elements and semantics to capture such behaviors (see Table 1) that are little used or understood, and constrain the modeler in how these behaviors can be represented.
Table 1 – Examples of “Exotic” BPMN Elements and Semantics for Case Management
Living within the limitations of BPMN to model case management behaviors can make for some serious modeling challenges as the behaviors become more case management-like (i.e., more unstructured, ad hoc, and event-driven). This point is illustrated with an example taken from my training material that also served as a successful rebuttal to an attempt at the OMG Technical Meeting in Berlin last year (2015) to assert modeling equivalences between BPMN and CMMN. At best, rough equivalences are possible, with CMMN being lossy in its uses when applied to more structured processes and BPMN being lossy in its uses when applied to more unstructured processes. In the following example, the baseline narrative is presented, with a portion of the text emphasized to show where a revision will be made, along with representations in BPMN and CMMN that are roughly equivalent (see Table 2). Continuing with the example, the baseline narrative is revised, with the revised portion also emphasized, along with attempted representations in BPMN and CMMN, though only the CMMN is actually shown (see Table 3).
Table 2 – Comparison of Models for Baseline Case Management Process
Table 3 – Comparison of Models for Revised Case Management Process
I must confess that the BPMN version of the revised narrative was not actually attempted because I remain unsure how to show it in a way that can be seen as a tweak to the single process model rendering in the baseline treatment (as is the case with the CMMN versions). This revised version would be a challenge to draw, in my opinion, particularly if one tries to stay within the single process view.
Anatoly Belaychuk, BPM Evangelist at Comindware, Inc. was an attendee at the bpmNEXT2016 Conference. He chatted with me after my presentation, and indicated he thought a BPMN representation could be done that wasn’t so challenging, and wanted to take a crack at it using the material from my presentation. Several email exchanges ensued, leading to the publication of our bookend articles on BPM.com and the start of thread in which to continue the discussion in a way that opened it up to the rest of the BPM.com community. You will find these nearby on the BPM.com site, thanks to moderator Peter Schoof.
The gist of Anatoly’s argument is that a Collaboration model in BPMN overcomes the limitations I called out, and he has attempted to model the revised narrative as a Collaboration among 4 distinct processes. I must acknowledge Anatoly for his insight, since I’ve since conceded to him that a Collaboration might exist that does the trick – something I should have anticipated in my presentation. However, it will still be lossy relative to CMMN’s expressiveness due to divided data scope…(to be continued on the thread).