BPM+ Virtual Coffee
Overview of BPMN, CMMN and DMN

Denis Gagne, CEO & CTO at Trisotech

Our topic today is an overview of BPMN, CMMN and DMN. I want to quickly go over the three standards in terms of what their main differentiations are.

BPMN is all about processes. In processes, the first-class citizens are the activities. We are focusing on the flow of activities and the data that is consumed by that flow. The semantic is procedural, in the sense that it is prescriptive, telling you what to do next. The execution semantic is defined using a token that is basically moving through the flow of activities.

For Cases, the first-class citizens are events. We are focussing on events, and we are looking at events within a context, which is the case file. When you have data in context, you have information. So, with Cases, we are dealing with information. CMMN is a declarative language. Rather than prescribing how things should happen, CMMN just declare what can happen. The semantic for CMMN is based on Event/Condition/Action (ECA), which is basically to say that when a particular event happens, if a condition is met, then do this action. Which is different from BPMN where the activities are sequenced, and the next activity is prescribed by the model itself.

We then move to DMN for our business decisions. In DMN the first-class citizens are the rules, and these rules are expressed in many different ways: the rules within the decision table, the rules within literal or within box expressions… And within DMN, these rules are applied. When we have information that is applied, we are dealing with Knowledge. So DMN is more about knowledge, and its main semantic structure, or architectural pattern, is functional, so DMN is a functional language. The execution semantic of DMN is based on first order logic.

So, there you go! A very quick introduction of BPMN, CMMN and DMN and the differences into their focus. BPMN: first class citizens = activities. CMMN: first class citizens = events, and DMN: first-class citizens = rules. Dealing with data, information, and knowledge. From a more prescriptive or procedural, to a declarative and to a functional description. So that gives you a very quick look at some differentiation between BPMN, CMMN and DMN.

Watch the Webinar



View all

Learn how it works

Request Demo

Confirm your budget

Request Pricing

Discuss your project

Request Meeting