In this post, we present how Sparkling Logic continues its involvement in the DMN standard. SMARTS™ Pencil is a graphical tool which business analysts use to model business decisions by drawing a DMN diagram.
DMN, A Bit of History
Decision Model and Notation (DMN) was formally introduced by the Object Management Group (OMG) in September 2015 (v1.0). DMN provided a common notation for modeling an organization’s decisions. DMN is based on a simple set of shapes which are organized into a diagram, model, or graph. The top-level decision is decomposed into simpler lower-level ones which can be further decomposed. The lower-level decisions must be made before the top-level decision can be made. In addition, the implementation of any sub-decision can be provided such as a decision table. DMN diagrams and decision implementation (e.g., decision tables) allows teams to easily comprehend and discuss their decisions.
Sparkling Logic was one of the early vendors to provide a tool to edit (and execute) these DMN models. Pencil Decision Modeler was released in January 2015 before the standard was officially approved!
Since then, the DMN standard evolved significantly with version 1.3. OMG added new DMN diagram elements, new constructs, and new language features while clarifying some of the existing notions. Not only have we added full compliance to DMN 1.3, but we also merged Pencil Decision Modeler into SMARTS™. Learn more in our SMARTS™ Ushuaia release.
DMN Diagram Basics
DMN 1.3 still defines the building blocks which were in the original standard. Learn more in my previous post, Talking about decisions.
As a recap:
- A decision determines its output based on one or more inputs. These inputs may be provided by an input data element or by another decision.
- Input data is information used by one or more decisions or by one or more knowledge sources.
- A business knowledge model represents knowledge which is encapsulated. They may be used by one or more decisions or by another business knowledge model. This knowledge may be anything which DMN does not understand (such as a machine learning algorithm, a neural network, etc.) or a DMN construct (called a “boxed expression”, see below).
- A knowledge source represents the authority for a decision, a business knowledge model, or another knowledge source. This is where the knowledge can be obtained (be it from a written transcription or from someone).
These blocks are organized in a DMN diagram and the links between them are called requirements.

What’s New in SMARTS™ DMN 1.3 Support
More Building Blocks
In DMN 1.3, the following elements may also be added to a DMN diagram:
- A decision service exposes one or more decisions from a decision model as a reusable element (a service) which might be consumed internally or externally.
- A group combines several DMN elements visually (with whatever semantics may be associated with the grouping).
- A text annotation is a shape which contains a label and can be attached to any DMN element.
Custom Types and Variables
Input data, decision and business knowledge model elements all have an associated variable, which is of a given type (string, number etc., or custom). A variable is a handle to access the value directly passed by an input data element, or calculated by the implementation of a decision or a business knowledge model, from within the decision implementation.
Custom types may be defined to group multiple properties under a single type name (with structure) or to allow variables which will hold multiple values (arrays).

Boxed Expressions
A few constructs are available to provide an implementation for a decision or a business knowledge models; they are termed boxed expressions since such expressions are shown in boxes which have a normalized representation. The following types of boxed expressions are available in DMN 1.3:
- Literal expression: This is a simple expression which can use the available variables to calculate a result.
- Context: This is a set of entries, each combining a variable and a boxed expression. Each entry in the context can use the variables of the entries defined before it, which is like using “local variables” in some languages.
- Decision table: This is a tabular representation where rows (called rules) provide the value of outputs (supplied in action columns), depending on the value of inputs (supplied in condition columns).
- Function: A function can be called using an invocation, by passing arguments to its parameters. The result of a function is the result of the execution of its body (which is an expression that can use the values of the passed parameters). A Business knowledge model can only be implemented by a function.
- Invocation: This is used to call a function by name, by passing values to the function’s parameters.
- List: This is a collection of values calculated from each of the boxed expressions in the list.
- Relation: This is a vertical list of horizontal contexts, each with the same entries.
In addition to these, SMARTS™ defines an additional boxed expression, called the rule set. This is a set of named rules, where each rule is composed of a condition (an expression evaluating inputs) and action (an expression providing some values to outputs).

Helping Industry Adoption
With SMARTS™ Ushuaia, decision models are first-class citizens. The full compliance with DMN 1.3 means that all the DMN elements and boxed expressions, as well as the ability to interchange diagrams with other tools, are part of the package.
As is usual, any model can be tested and executed in the same context as your SMARTS™ decision – a decision is never made in isolation, and a model is never used in isolation either. And of course, you will benefit from the great tooling we provide.
Finally, we at Sparkling Logic strongly believe that decision management technologies should be put in the hands of all business analysts. This is why we are part of the DMN On-Ramp Group, whose mission is to provide a checklist to help customers find the DMN tool to suit your needs, educate and raise awareness about DMN, and help with DMN compliance. Here’s a great presentation from the group.
If you envision modernizing or building a credit origination system, an insurance underwriting application, a rating engine, or a product configurator, Sparkling Logic can help. Our SMARTS™ digital decisioning platform automate decisions by reducing manual processing, accelerating processing time, increasing consistency, and liberating expert resources to focus on new initiatives. SMARTS™ also improve decisions by reducing risk and increasing profitability.
Learn more about Decision Management and Sparkling Logic’s SMARTS™ Data-Powered Decision Manager

