Decision Model and Notation – an introduction to the Beta Specification

As I announced earlier in the week, the Decision Model and Notation specification is now (barring a few technicalities) a Beta specification at the OMG. While members can get access to the submission, non-members would normally have to wait a few more weeks. With the permission of the other submitters, however, I have posted it here (turn bookmarks on for some structure as it’s a long document).
The submission is a big document aimed primarily at those who might implement the specification. As a result it can be a bit intimidating to read so here’s a quick guide:
  1. If you already know you want to use a decision modeling standard, go to section 4 and read p19-26 to get a sense for the key elements of DMN and their usage. If you are not sure why you might care, read p27-29 in the same section first for the use cases. You might also find Annex A p155-159 which covers how DMN and BPMN relate helpful.
  2. The core decision requirements diagram elements are described in more detail in Section 5. Read p30-36 for an overview.
    As an aside this is where we have focused our efforts with DecisionsFirst Modeler at present and it has broad support for collaborative development of these diagrams if you would like to try it for yourself.
  3. A detailed metamodel for this follows in pages 37-53 but if you just want to know what properties the core objects have, here’s a summary (leaving aside the details of specifying decision logic for a minute):
    • Decision
      • Name
      • Description
      • Question
      • Allowed Answers
      • Links to Objectives and Performance Indicators impacted by the Decision
      • Links to the Organizations that make and own the decision
      • Links to Processes and Tasks that need the decision.
    • Input Data or Information Source as it used to be known
      • Name
      • Description
      • Information Item to show the structure of the data in question
      • I also like to track URI for additional details, Type like structured or unstructured and a link to the Organization that owns it
    • Knowledge Source
      • Name
      • Description
      • URI for more details
      • Type like policy, expertise, analytic insight or regulation
      • Link to the Organization that owns it
  4. Next I would read the section on Decision Tables, section 7, p68-76. Decision Tables are  the most common format for recording decision logic and is the most readable and usable of the formats in the standard.
  5. I would then skip to the examples on p83-85.
  6. If you need to understand the meta model (and you probably don’t),it’s on p77-82.
  7. At this point you can jump to the great worked example in section 10 and read p138-152.

Frankly that’s probably enough but you might also be interested in section 2 (p16-18) which lays out the conformance levels. As products support DMN  you will see conformance with DMN described in these terms.

For those who really want to know more about the way decision logic is specified, go back and read the general section on decision logic – section 6. P53-56 introduces the basics and p56-58 introduces Boxed Expressions with the meta model (which you can probably skip) coming on p58-68. The expression language itself is the subject of sections 8 and 9. Section 8 p85-90 outlines Simple FEEL, the subset needed for precise decision tables. Section 9 p90-138 lays out the details of the language. Because this document is written for implementers, this section is particularly dense so be warned. Unless you really care about the details I would skip this section and wait for someone to write a user-oriented description of FEEL rather than a technical one.

So there you have it – the beta specification for DMN.
If you want to understand how to use DMN to specify business rules or analytic projects, check out my white papers on Decision Modeling for Business Rules Projects and Decision Modeling for Predictive Analytics Projects . You might also enjoy this webinar where one of our customers discusses how they used decision modeling in their rules project.
The finalization process will start soon and when it does I will post details on how to submit comments and feedback to the OMG finalization task force. Meanwhile if you want to evaluate DecisionsFirst Modeler, signup for an evaluation copy here (it’s cloud based, nothing to install) and if you have questions email me.