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

Example Process Model

Assessment of Elements and Semantics Used

Event Sub-process

Event Sub-process

  • Interaction with the main thread is either to hijack and end it, or to add to the effective data scope of the main thread
  • Arrival or generation of data may have an indirect but event-like impact on the main thread (e.g., via a Signal payload)
Event-driven process flow

Event-driven process flow

  • Events trigger Sequence Flow rather than by completion of Activities, effectively bypassing Sequence Flow semantics
  • Makes Activities function like stateless nodes in the Process that may trap tokens unless Process is terminated (along with the Activity instances)
  • Holds Activities at interim state of “Completing” (not Completed) via non-interrupting Boundary Events until listener is disabled or triggered
Ad Hoc Sub-process

Ad Hoc Sub-process

  • Order of execution and completeness condition partially specifiable, but Performer may trump all such aspects
  • Data Associations can create an event-like dependency between Activities that mimic (but are not the same as) control flow

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

Narrative of Baseline Case Management Process Modeled With BPMN and CMMN

A claim package is received, which starts a claim case. Efforts are made to gather claim information, beginning with a case worker that will record the claim, and a set of procedural activities to request any documents that may be missing. Once all relevant information is recorded and received (if initially missing), then the claim is said to be established. At this point, the next phase is to perform the set of collaborative activities that evaluate the claim, the outcome of which under normal circumstances will be that the case worker determines the claim is closed. At any time of the case, a case worker may create a letter to communicate anything about the case as needed. Also at any time of the case, it may be terminated based on certain circumstances determined by the case worker.

Table 1 Image 1
Table 2 Image 2

Table 3 – Comparison of Models for Revised Case Management Process

Narrative of Revised Case Management Process Modeled With BPMN and CMMN

A claim package is received, which starts a claim case. Efforts are made to gather claim information, beginning with a case worker that will record the claim, and a set of procedural activities to request any documents that may be missing. Once basic information is recorded, then the claim is said to be established, allowing additional or missing information to be received later. At this point, the next phase is to perform the set of collaborative activities that evaluate the claim, the outcome of which under normal circumstances will be that the case worker determines the claim is closed. At any time of the case, a case worker may create a letter to communicate anything about the case as needed. Also at any time of the case, it may be terminated based on certain circumstances determined by the case worker.

Table 3 Image 1
Table 3 Image 2

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).

Lloyd Dugan
Author: Lloyd Dugan
Chief Architect, BPM
Lloyd Dugan is the Chief Architect for Business Process Management, Inc. (BPMI), providing BPM, BPMN, EA, and SOA modeling, system design, and architectural advisory services. He is a widely recognized thought leader in the development and use of leading modeling languages, methodologies, platforms, and tools in these areas. He is also an Independent Consultant that designs executable BPMN processes that leverage Service Component Architecture (SCA) patterns (aka BPMN4SCA), principally on the Oracle BPMN/SOA platform. He has provided IT advisory services to major public sector clients, most recently for the Deputy Chief Management Office (DCMO) of the U.S. Department of Defense (DoD) and the Department of Veterans Affairs (VA) Office of Information Technology (OIT) / Architecture & Strategies Division (ASD), and to private and hybrid sector clients for over 28 years, including work in housing, mortgage insurance/banking. His experience ranges from Business Process Reengineering (BPR) to System Development Life Cycle (SDLC) phases, including sizing, modeling, simulation, design, development, testing, implementation, and operation of effective integrated business systems. He developed and delivered BPMN training to the Department of Defense (DoD), presented on it at national and international conferences, and co-authored the seminal BPMN 2.0 Handbook (http://store.futstrat.com/servlet/detail?no=85, chapter on “Making a BPMN 2.0 Model Executable) sponsored by the Workflow Management Coalition (WfMC, www.wfmc.org).

blog comments powered by Disqus