In the last video, I gave a short introduction to Decision Model and Notation or DMN. It contains sufficient info to understand this demo.
This demo includes:
Enabling the Decision Central DMN Editor
Using the Decision Central DMN Editor
Writing a Test Scenario
Deploying a DMN Project on the Execution Server
Interacting with the deployed DMN Model using REST API
I am going to show you how to create a DMN Decision model from start to finish.
The Decision Requirement Diagram is shown at the top of the page (above).
Notice that I put the decision table in the Business Knowledge Model (BKM). And the use of FEEL (Friendly Enough Expression Language) in the “age” column.
One can also put the decision table directly in the Decision Node itself. The difference is that by putting the decision table in the BKM, it can be reused in another Decision node. There is no advantage in doing it this way in such a simple demo but imagine the reuse value in a large decision model.
The diagram below shows how the decision node invokes the decision table in the BKM. It maps the data to the variable (Age) used in the decision table. This is like a subroutine call in a programming language.
In this video, I am going to give a short introduction to DMN. I shall describe what its capabilities are and why is it important. To fully describe how DMN works will require a much longer video than this one. You can find more details on DMN using the links provided in the description of this video.
Here is a brief description of DMN, by no means comprehensive but sufficient for you to know why it exists and help you understand the demo in the next video.
DMN is an OMD standard. OMG or the Object Management Group is the same organisation that brought you BPMN2, the Business Process Model Notation V2 standard. DMN is to decision modelling what BPMN2 is to business process modelling.
When you create a DMN model, you are creating a DRD or Decision Requirement Diagram. It is a visual representation of your DMN model. FEEL or Friendly Enough Expression Language is used to evaluate expressions eg, in a decision table. It has been said that: If you can use Microsoft Excel formulas, you will have no problem learning and using FEEL. There is a meta model interchange meaning that you can export your model as XML and import your model to another DMN tool.
To make model interchange possible, the DMN specs defines 3 conformance levels ranging from level 1 to 3 where level 3 is the highest.
With the release of BPMS/BRMS 6.3 back in May, I think it is time for me to embark on a journey to explore its new features. What better to do than migrate an existing business rules application which I deployed on the Realtime Decision Server in BPMS 6.1 to 6.3’s new Intelligent Process Server. A piece of cake, so I thought… Continue reading BPMS/BRMS 6.3: An Intelligent Process Server Odyssey
This article assumes some basic knowledge of the JBoss BPM Suite including using Business Central.
JBoss BPM Suite (BPMS) and JBoss Business Rule Management System (BRMS) 6.1 introduced a new component called the Real-time Decision Server (RTDS). Rule projects built using BPMS can be deployed directly onto the Real-time Decision Server via Business Central. Applications can instantiate and execute rules on the RTDS using either a REST or JMS interface.
In this article, I am going to show you how you can build a rule-based application without writing even a single line of Java code. The application aims to rate locations for placement of mobile speed cameras. It is an example application I made up and is not being used by any Police Departments. My simplified speed camera placement rating criteria are based on: Continue reading Building a JBoss BPMS Rules Application without Writing Code