Decision Model and Notation in Enterprise Architect 14

Webinar February 2018
In this webinar:
  • Learn how to model a DMN diagram and read a Decision Table
  • Build, edit and execute a Decision Table using the Model Wizard
  • Validate rule models to find and eliminate logical errors

Enterprise Architect 14 introduces support for the Decision Model and Notation, published by the Object Management Group. DMN is used for modeling and executing decisions that are determined by business rules. Enterprise Architect displays rules in easy to read tables and helps you model any rule dependencies. This webinar will show how Enterprise Architect 14 can improve decision making and create business rules based on open standards.

Scott Hebbard
Scott Hebbard

Explore the Example Model

We have provided the presentation model used in the webinar
Presentation model: my-first-DMN-Project.eapx Explore the Example Model

Questions from the Audience

Click on a question to see the answer.

General

When will Enterprise Architect 14 be released?

Enterprise Architect is scheduled for official release in Q1 2018.

What version of Enterprise Architect will support DMN?

DMN is only supported in Enterprise Architect 14.

Does Enterprise Architect 13.5 have DMN functionality?

No.

Will Enterprise Architect 14 still be backward compatible with the older [model repository] schemas used for any databases (SQL, etc)?

Yes. Enterprise Architect's database schema has remained unchanged since Enterprise Architect 4.5.

What is the major change from Enterprise Architect 13 to 14 if we are porting the existing models to upgrade?

The is no porting process required. The repository structure has not been changed between versions.

Will Decision Model and Notation be included in the Enterprise Architect Corporate edition?

Yes, DMN modeling will be available in the Corporate edition. DMN Simulation and Execution will be available in a higher edition. More information about Enterprise Architect editions and features will be announced after the official release.

What will it cost to upgrade from Enterprise Architect 12.1?

It will only cost if you are outside your subscription period. When you purchase Enterprise Architect, you get 12 month's of subscription benefits, including the ability to download the latest version of Enterprise Architect.

For more information on subscription benefits and renewal pricing, please refer to the page License Information for Enterprise Architect.

Decision Model and Notation

Can you import DMN XML files?

Yes, you can import DMN 1.1 XML Files.
Use the Publish Ribbon | Technologies | Import | DMN 1.1

Can you import DMN syntax file into Enterprise Architect?

Yes. Use the Publish Ribbon | Import XMI | Import Model XMI... | Other XML Formats | DMN 1.1.

Once the file is selected, click the Import button to complete the process. You can experiment with DMN modeling by importing a DMN Syntax file from OMG's DMN webpage.

Does the language allow for logical conditions like XOR, AND, NOT and Mutually Exclusive?

Yes. There are many ways to implement logical conditions. For example, imagine we want to evaluate C = A XOR B.

  1. You can model C as a Decision Table: A and B are 2 input clauses, whereas C is an output clause.
  2. Create a function in the DMN Library via the Code Ribbon | Configure | Options | Edit Code Template | DMN_JavaScript | DMNSim Library:

    function XOR(a,b) {
    return ( a || b ) && !( a && b );
    }

  3. Then Decision C can be implemented as a Literal Expression: XOR(A, B)

Does Enterprise Architect support all of the FEEL expressions and data types?

DMN Expressions Supported:

  • boxed literal expression
  • boxed invocation
  • boxed context
  • Decision Table
  • Function Definition
  • List
DMN Expressions NOT Supported:
  • Relation (Like relational database table)
Data types Supported:
  • number
  • string
  • boolean
Data type NOT currently supported:
  • time
  • date
  • date-time
  • days and time duration
  • years and month duration

Note: If the expressions using these time, date, duration and related date types conform to JavaScript syntax, Enterprise Architect will still be able to simulate it. More examples will be provided in future.

How would DMN be used in conjunction with BPMN? For example, a decision model related to a conditional gateway.

For modeling:

  1. A BPMN 2.0 Task connecting to BPMN 2.0 DataObject will read the data, which will be used to feed the DMN Server as InputData.
  2. A DMN decision variable can be bound to a BPMN's Property. When running to BPMN 2.0 BusinessRule task, the DMN Server will be invoked, and a result will be returned.
  3. The property can then be used as a condition of Sequence flows, outgoing from a gateway.

In order to make BPMN and DMN simulate together, Enterprise Architect provided the features to automate this process. A webinar will be scheduled to demonstrate this feature shortly.
Are forward and back chain rules supported in a Decision Table?
Yes. For BusinessKnowledgeModel, you can verify/unit test your BKM by providing a set of values for the parameters, and see which rule(s) are hit. This is known as forward reasoning.

You can also sort the output, so the user can easily answer questions like this: "If I want this specific output be hit, what kind of inputs do I need?" This is known as backward reasoning.

Can you connect the DMN to the process in BPMN?

Yes.

Decision Tables

Can we export the contents of a Decision Table to Excel?

No. Applicant data can be exported and imported using the "Edit Data Set for DMN Input data" dialog.

Can you explain the U and C+ in the Decision table? Where do you write the formula for the result set in the decision table? What kind of operations are available?

The U and C+ adhere to the Hit Policy for that particular Decision Table. The DMN 1.1 specification states: "A decision table normally has several rules. As a default, rules do not overlap. If rules overlap, meaning that more than one rule may match a given set of input values, the hit policy indicator is required in order to recognize the table type and unambiguously understand the decision logic. The hit policy can be used to check correctness at design-time."

Below is the hit policy description for the two examples demonstrated in the webinar.

  • U: Unique is a single hit policy: no overlap is possible and all rules are disjoint. Only a single rule can be matched. In the webinar this was used to provide a unique risk factor with respect to a credit application.
  • C+, a multiple hit policy: the result of the decision table is the sum of all the distinct outputs. In the webinar this was used to add the values to calculate the credit score.

Can you generate some kind of code out of the decision tables?

You can generate code from Decision Tables and this will be explored in more detail in a future webinar on DMN.