The idea of the standard

Decision Model and Notation separates decision logic from process-flow logic. Many BPMN models historically contained XOR gateways with many branches and complex logic — which made the diagrams unreadable and hard to maintain.

DMN proposes moving that logic into a separate decision model, which a BPMN Business Rule Task references through a DMN reference.

Two levels of DMN

Decision Requirements Diagram (DRD)

A dependency graph showing which decisions depend on which input data and sub-decisions. This is the structural level.

Decision tables

Tables that implement the concrete logic. Each row is a rule: for a given combination of inputs, a given output results.

FEEL — Friendly Enough Expression Language

DMN includes a dedicated expression language, FEEL, designed to write business rules in a form that is both clear to analysts and strictly formalized. FEEL supports arithmetic, logic, and working with strings, dates, lists and contexts.

Where it is used

  • Scoring credit applications
  • Calculating insurance premiums
  • Routing requests
  • Product configuration
  • Calculating discounts and bonuses
  • Making medical decisions

Strengths

  • Direct executability in DMN engines (Camunda DMN, Drools, IBM ODM)
  • Highly readable decision tables
  • Easy to maintain business rules without developers
  • Full integration with BPMN via the Business Rule Task

Limitations

  • Less well known than BPMN
  • FEEL takes learning, especially for complex expressions
  • Does not cover machine learning or fuzzy logic