What is DMN?
DMN – NEW OMG Standard
DMN, which stands for Decision Model and Notation, is a relatively new standard managed by OMG, the organization behind BPMN. It is trying to do for Business Decision Management what BPMN did for Business Process Management a decade ago: empower the business to take charge of the logic that drives its operations, through a vendor-independent diagramming language. To be effective, that language must be both usable by business analysts and stakeholders in the business and verifiable for completeness and consistency. DMN is both.
Describing the decision logic
Where BPMN models have become the norm for describing the sequences of activities that comprise everyday business processes in the organization, before DMN there was no comparable standard for describing the decision logic used for everything from pricing to regulatory compliance to approval of loan applications. Often that logic was frozen, embedded in some enterprise system. To create decision logic customized to your own business, typically you needed a Business Rule Management System (BRMS). BRMSs have proven to be powerful, effective tools, but each one has its own tool-specific programmer-oriented rule language. So to specify the decision logic, BAs and business stakeholders must create business requirements documents, which are interpreted by the programmers and translated – often imperfectly – into the rule language, after which a long cycle of testing and revision ensues.
Business requirements for decision management take two forms: unstructured text, easy to create but impossible to verify for completeness and consistency; and decision models, based on a business-friendly interface and structure, verifiable and more easily translated into the rule language for execution. Decision models are clearly the better choice, but the problem is that these models are BRMS-specific. Every tool has its own modeling language! At the enterprise level, many financial institutions, government agencies, and other decision-intensive organizations have multiple BRMSs installed, creating additional problems of training, support, and maintenance.
Instead, DMN provides a tool-independent decision modeling notation, designed by expert practitioners from FICO, Oracle, IBM, KPI/Sapiens, and others. New DMN-based decision modeling tools are becoming available, separate from the BRMS, with the ability to translate their business-friendly and verifiable models into the rule languages of popular business rule engines. The advantage of an industry-standard decision modeling notation also includes lower-cost tools and wider availability of training and support.
DMN is an open standard. Like BPMN, its concepts and formats are not the protected intellectual property of a tool vendor or consulting firm. DMN 1.0 was published officially in September 2015, but implementers should focus on DMN 1.1, finalized in December 2015 and on track for publication in 2016, which fixes some problems with the metamodel and schema.
Two key features of DMN are the Decision Requirements Diagram (DRD) and decision tables. The DRD describes the dependencies of a decision (rectangle shape) on other supporting decisions and information sources called input data (oval shape). Those supporting decisions may include human decisions and external decisions – for example, provided by a business system or an external service bureau – for which the decision logic is not defined in the DMN model. Unlike other decision modeling notations, such as The Decision Model (TDM) of Sapiens, execution of a decision at the top of a DRD may require multiple steps separated in time, so it is capable of describing, in a simple picture, the end-to-end logic of complex business decisions.
To be verifiable, the elements inside each cell of a decision table – as well as the text used in a literal expression – must be based on a formal expression language. This is the hard part, because you want that expression language to be usable by BAs and business stakeholders but at the same time rich enough to handle real-world decision logic. Otherwise, we’re back to the bad old days of text-based requirements that must be interpreted and translated by programmers. DMN actually had to invent its own expression language for this, called FEEL. Decision tables, like the one above, use a simple subset of FEEL called S-FEEL, but FEEL actually provides a wider range of functionality than the rule languages of commercial BRMSs. We’re still waiting for DMN tools to fully exploit FEEL, but that day is not long off.
These are still early days for DMN. Its key advantages are that it is tool-independent and business-friendly, has a public specification based on an open process, and creates models that are precise, verifiable, and – once DMN’s full power is implemented in tools – richer in functionality than proprietary rule languages. DMN is the future of Business Decision Management!
DMN BASIC Training
DMN ADVANCED Training
Read Bruce Silver’s Blog
DMN as a Decision Modeling Language
This post is a transcript of my keynote at RuleML/DecisionCamp on July 8, 2016.