I am a freelance
consultant, but I am acting today as a PhD student. The global context of my
thesis is Enterprise Architecture (EA), which requires to model the Enterprise.
As one aspect of EA is business process modeling, I am using BPMN from years,
but this notation is not very appropriate to represent decision criteria: a
cascade of nested gateways becomes quickly difficult to understand then to
modify. So, when OMG published the first version 1.0 Beta of DMN specification
in 2014, I found that DMN was a very
interesting notation to model decision-making. I succeeded in developing my own
DMN modeling tool, based on DMN metamodel, in using the Sirius plugin for
Eclipse . But even the next “final” version 1.0 of DMN specification was not
very accomplished.
The latest version 1.1 of
DMN, published in June 2016, is quite good. In the meantime, software editors
(at least twenty) have launched good modeling tools, as Signavio Decision
Manager (free for Academics) used for this article. This Signavio tool was
already able to generate specific DRL files for running DMN models on the BRMS
Drools current version 6. In addition to the graphics, some editors added
recently the capability to export DMN models (diagram & decision tables)
into “DMN 1.1 XML” files, which are compliant with the DMN specification. And the good news is that BRMS like Drools (future version 7, available in Beta version) are able to run theses DMN XML files for automating
decision-making (a few lines of Java code are required to invoke theses high
level DMN models).
This new approach of treating “DMN 1.1 XML”
interchange model directly is better for tool independency and model
portability. Here is a short comparison between the former classic but specific
solution and this new and generic solution, using the tool Signavio Decision
Manager (latest version 10.13.0). MDA (Model Driven Architecture) and its three
models CIM, PIM & PSM gives us the appropriate reading grid for this
comparison:
3 MDA models
|
Description
|
Classic specific DMN
solution
from Signavio Decision Manager to BRMS Drools |
CIM (Computation
Independent Model) |
Representation model
for business,
independent of computer considerations |
DRD (Decision Requirements Diagram)
+ Decision Tables |
PIM (Platform
Independent Model) |
Design model for
computing,
independent of the execution platform |
û
|
PSM (Platform
Specific Model) |
Design model for
computing,
specific to the execution platform |
DRL (Drools Rule
Language)
+ DMN Formulae Java8-1.0-SNAPSHOT.jar |
The visible aspect of DMN
is its emblematic Decision Requirements Diagram (DRD) which can be completed
with some Decision Tables for representing the business logic for decision-making.
A DRD and its Decision Tables compose a CIM model, independent of any computer
considerations.
Then, in the classic but specific DMN solution, Signavio Decision Manager is able, from a business DMN model (DRD diagram and Decision Tables), to export a DRL file directly for a Drools rules engine. So, this solution skips the intermediate PIM level, that is not very compliant with MDA concept. Note that this DRL file needs a specific Signavio’s jar library with DMN formulae.
Then, in the classic but specific DMN solution, Signavio Decision Manager is able, from a business DMN model (DRD diagram and Decision Tables), to export a DRL file directly for a Drools rules engine. So, this solution skips the intermediate PIM level, that is not very compliant with MDA concept. Note that this DRL file needs a specific Signavio’s jar library with DMN formulae.
3 MDA models
|
Description
|
New generic DMN
solution
from Signavio Decision Manager(or other tools) to BRMS Drools (or other BRMS) |
CIM (Computation
Independent Model) |
Representation model
for business,
independent of computer considerations |
DRD (Decision Requirements Diagram)
+ Decision Tables |
PIM (Platform
Independent Model) |
Design model for
computing,
independent of the execution platform |
DMN 1.1 XML
(interchange model)
containing FEEL Expressions |
PSM (Platform
Specific Model) |
Design model for
computing,
specific to the execution platform |
û
|
The invisible aspect of DMN
is its DMN XML interchange model, very useful for exchanging a model between
modeling tools. DMN XLM is also very useful for going from model to automation. DMN XML model takes into account computer considerations, but as it is defined into DMN specification, a standard published
by OMG (Object Management Group), it is independent of any execution platform, so it is a PIM
model. DMN XML complies to DMN metamodel and can be checked with an XSD schema
provided by OMG. The latest version 1.1 of DMN has refined this DMN XML format.
With the new generic DMN
solution, Signavio Decision Manager is now able, from the same business DMN
model (DRD diagram and decision tables), to export “DMN 1.1 XML” interchange
model. As the future
7.0.0 version of Drools is able to interpret “DMN 1.1 XML” format directly, the
last level PSM, specific to the execution platform, is not useful anymore.
As DMN is a declarative
language, a DMN XML file contains essentially declarations. The business logic included
can be expressed with FEEL (Friendly Enough Expression Language) expressions. All
entities required for a DMN model (input data, decision tables, rules, output decisions,
etc.) are exported into the DMN XML file, due to a mechanism called
serialization. It is why automation is now possible from DMN XML directly. Not
all DMN modeling tools allow to export (or import) to DMN XML format.
The new generic DMN
solution, without skipping PIM level, sounds definitely better than the
specific one and is a good basis for automating decision-making. Another
advantage is, as Signavio said, that this new approach using “DMN 1.1 XML”
reduces the vendor lock-in.
Thierry BIARD
Thierry BIARD

Innovative thinking of you in this blog makes me very useful to learn.
ReplyDeletei need more info to learn so kindly update it.
Selenium Training in Chennai
Selenium Training
JAVA Training in Chennai
Python Training in Chennai
Hadoop Training in Chennai
Digital Marketing Course in Chennai
Selenium Training in Chennai
Selenium Training in Anna Nagar
The effectiveness of IEEE Project Domains depends very much on the situation in which they are applied. In order to further improve IEEE Final Year Project Domains practices we need to explicitly describe and utilise our knowledge about software domains of software engineering Final Year Project Domains for CSE technologies. This paper suggests a modelling formalism for supporting systematic reuse of software engineering technologies during planning of software projects and improvement programmes in Final Year Projects for CSE.
DeleteSoftware management seeks for decision support to identify technologies like JavaScript that meet best the goals and characteristics of a software project or improvement programme. JavaScript Training in Chennai Accessible experiences and repositories that effectively guide that technology selection are still lacking.
Aim of technology domain analysis is to describe the class of context situations (e.g., kinds of JavaScript software projects) in which a software engineering technology JavaScript Training in Chennai can be applied successfully
The Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing, and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training
Thanks for sharing this article. That is very interesting and I am always searching for informative articles like this.
ReplyDeleteDOT NET Training in Chennai
DOT NET Course Chennai
dot net institute in chennai
best dotnet training in chennai
DOT NET Training Chennai
Html5 Training in Chennai
QTP Training in Chennai
LoadRunner Training in Chennai
Excellent post, it will be definitely helpful for many people. Keep posting more like this.
ReplyDeleteAutomation Anywhere Training in Chennai
Automation courses in Chennai
Automation Training in Chennai
Blue Prism Training in Chennai
Blue Prism Training in Anna Nagar
RPA course in Chennai
RPA Training Institute in Chennai
RPA Training in Chennai
I appreciate the admin of this blog and this concept is very comprehensive. Thank you!!!
ReplyDeleteCorporate Training in Chennai
Corporate Training institute in Chennai
Spark Training in Chennai
Oracle Training in Chennai
Unix Training in Chennai
Power BI Training in Chennai
Oracle DBA Training in Chennai
Corporate Training in Chennai
Corporate Training institute in Chennai
This was an awesome blog. Thanks for sharing this information with us. Learnt a new information from your blog.
ReplyDeleteEnglish Speaking Classes in Mumbai
English Speaking Course in Mumbai
Best English Speaking Classes in Mumbai
Spoken English Classes in Mumbai
English Classes in Mumbai
Spoken English Classes in Chennai
Best Spoken English Classes in Chennai
Spoken English Class in Chennai
Spoken English in Chennai
English Classes in Chennai
Great Blog!!! Was an interesting blog with a clear concept. And will surely help many to update them.
ReplyDeleteweb designing training in chennai
web development courses
ccna course in Chennai
Best PHP training in chennai
ui ux design course in chennai
ux design course in chennai
ReactJS Training in Chennai
Web Designing Course in chennai
Web designing training in chennai
Got to know something new reading your blog and thanks for sharing this with us. Great reading your blog.
ReplyDeleteComputer Education Franchise
Education Franchise India
Computer Center Franchise
Education Franchise Opportunities in India
Education Franchise India
Spoken English Franchise
Franchise For Spoken English Classes
Top Education Franchise in India
Best Education Franchise in India
Nice Article!!!!!
ReplyDeleteweb design and programming courses
php training institute with placement
magento training institute in chennai
I enjoyed over read your blog post. Your blog have nice information, I got good ideas from this amazing blog.
ReplyDeleteDigital Marketing Training Course in Chennai | Digital Marketing Training Course in Anna Nagar | Digital Marketing Training Course in OMR | Digital Marketing Training Course in Porur | Digital Marketing Training Course in Tambaram | Digital Marketing Training Course in Velachery
Love how wonderfully every word is written with proper balance.
ReplyDeletevisual automation testing
The blog has a to a great degree limit center that amplifies, shockingly into extensive variety of concerns.
ReplyDeletebiltwell helmets
awesome article,the content has very informative ideas, waiting for the next update...
ReplyDeleteStudy Abroad Consultants in Kerala
study abroad consultants in thrissur
Study Abroad Consultants in Calicut
abroad job consultancy in coimbatore
foreign job consultancy in coimbatore
overseas job consultancy in coimbatore
study abroad
study in poland
study in europe
free abroad study
The most important thing on motorcycle is to take care of rider's safety. The right outfit will protect rider against accident. But what is protect rider from strong gusts of wind or gusts while overtaking trucks ? Motorcycle windshield is what in these situations are protecting rider.
ReplyDeleteThank you very much for this useful article. I like it. Employee Feedback
ReplyDeleteI got too much interesting stuff on your blog 홀덤사이트
ReplyDelete. I guess I am not the only one having all the enjoyment here! Keep up the good work 온라인홀덤
Thanks for the blog filled with so many information. Stopping by your blog helped me to get what I was looking for 인싸홀덤
ReplyDelete. Now my task has become as easy as ABC 인싸포커 .
Mua vé tại Aivivu, tham khảo
ReplyDeletevé máy bay đi Mỹ giá bao nhiêu
vé máy bay đà nẵng tp hồ chí minh
vé máy bay đà lạt hà nội hôm nay
vé máy bay vào nha trang
ve may bay gia re di Hue
taxi sân bay giá rẻ
combo đà nẵng hội an