DMN

DMN 1.3 describes decisions: decision tables with hit policies, input data, and the requirement diagram showing what feeds what.

The important part is that it is executable in spirit. A DMN table with a Unique hit policy will tell you when two rules overlap, which a spreadsheet never will.


#What it is good at

  • Business rules with several inputs, maintained by non-engineers.

  • Decisions that will later run in a rules engine.

  • Anywhere overlapping rules have caused a production surprise.


#What it draws

Diagram

Syntax starts with

Decision table

Inputs, outputs, rules, and a hit policy

Hit policies

Unique, First, Priority, Any, Collect

FEEL expressions

Ranges like [18..65], negations like not("UK"), comparisons

Requirement diagram

Decisions, input data, knowledge sources and their links


#A few things that catch people out

  • The hit policy changes behaviour when two rows match. It is not documentation.

  • FEEL is a real expression language; a cell can express a range, not just a value.

  • Keep the decision requirement diagram beside the tables; it is what explains the order.



Learn one properly. Borrow the rest when you need them.