Process Management: Case (CMMN) and BPM (BPMN) Together?
Blog: Gary Samuelson Information Systems Anatomy
Do I pursue a more holistic approach by purchasing a process-management system that includes both case (CMMN) and BPM (BPMN) capabilities?
Argument for the inclusive (case+BPM) system approach:
1) Assuming we’re heading towards an integrated Case+BPM system (typically the situation when looking at artifact-centric applications). A stand-alone case system tends to increase integration complexity. A combined solution, for example a BPMS that does case-management, presents an almost seamless coupling between BPM and CMMN models. From an artifact-centric view, such as document management (insurance, finance, health), a combined system approach offers significant savings and reduced operations/maintenance overhead.
2) Reduction in analysis and development costs via reuse of task/activity services between BPMN and CMMN models – this includes application (process-aware) run-times. In terms of the UI (UX), rules, and general SOA services, we’re looking at a considerable savings. HOWEVER… it’s best to avoid any sort of reusability goals during early adoption! Focus on process 1st and reuse later. In-other-words, let the SOA team worry about reuse while the process-management people focus on core business-value.
3) Shorter distance to market with case solutions versus BPMN models. This approach cuts BPMN analysis-paralysis from the project by focusing on “tasks/activities” early. By allowing for ad hoc execution within a case model (though acknowledging rules-based entry/exit constraints) we avoid potential delays induced by early attempts at a fully-wired BPMN model. Noting that a BPMN model with a big ad hoc set of tasks IS NOT “process management”. An inclusive process-management platform (does both CMMN and BPMN), then provides the evolutionary path for migrating matured tasks/activities into formalized BPMN workflows. Noting that we undertake this last step, from CMMN to BPMN, as an on-demand evolution of process requirements (e.g. “case” is BPMN-agile).
Arguments for a stand-alone case management solution:
1) BPM and case are very, very different in their support of object-centric requirements (e.g. ECM). Case is document oriented (object-centric). Attempting a BPM-practice against a case-oriented set of requirements demands additional focus on the risks associated with long-running business transactions implied with BPMN models.
2) BPM practitioners tend to build context-tunneling as a matter of course during the construction of BPMN workflows. This is a given feature provided by the relationship between BPMN “lane” and “participant” within workflow models. The problem here is that case-management avoids this rut completely via its inclusive approach (with a focus on user and object centric requirements). In-other-words, case and BPM methodologies just don’t mix very well… from a general practice/methodology perspective.