SlideShare a Scribd company logo
1 of 33
Download to read offline
Decision Model and Notation (DMN)
and Drools DMN support
Matteo Mortari
Software Engineer
Drools team
Decision Model and Notation (DMN)
and Drools DMN support
Agenda:
●
What is DMN
●
Components of a DMN solution
●
Conformance levels and the big picture
●
DEMO: a complete end-to-end DMN solution
WHAT IS DMN ?
DMN, which stands for Decision Model and Notation, is a relatively new standard
managed by OMG, the organization behind BPMN. It is trying to do for Business
Decision Management what BPMN did for Business Process Management
a decade ago: empower the business to take charge of the logic that drives its
operations, through a vendor-independent diagramming language.
Bruce Silver, http://methodandstyle.com/what-is-dmn
A GRAPHICAL LANGUAGE
FOR DECISION MODELING
including
a standard notation for
Decision Tables
FEEL
EXPRESSION LANGUAGE
Friendly
Enough
Expression
Language
METAMODEL
AND INTERCHANGE
3 levels of conformity
and
XML interchange format
WHAT IS DMN ?
every price in [ 80, 11, 90 ]
satisfies price > 10
BRIEF HISTORY
Versions released:
●
1.0 – September 2015
●
Introduced DMN
●
Had several problems (bugs) on both the XML schema definition and the FEEL language that
prevented its full implementation.
●
1.1 – June 2016
●
RTF group worked to fix most of the problems from the version 1.0
●
It is the first version of the spec that is fully implementable (with a few minor issues)
Specification documents at: http://www.omg.org/spec/DMN/
COMPONENTS
OF A DMN SOLUTION
DMN GRAPHICAL LANGUAGE - EXAMPLE
DMN GRAPHICAL LANGUAGE - EXAMPLE
Input Node
DMN GRAPHICAL LANGUAGE - EXAMPLE
Input NodeDecision
Node
DMN GRAPHICAL LANGUAGE - EXAMPLE
Input NodeDecision
Node
DMN GRAPHICAL LANGUAGE - EXAMPLE
Input NodeDecision
Node
Business Knowledge Model
DMN GRAPHICAL LANGUAGE - EXAMPLE
Input NodeDecision
Node
Business Knowledge Model
DMN GRAPHICAL LANGUAGE - EXAMPLE
Decision Table name
Hit policy
Rule number
Conditions
Result column
WHAT IS FEEL?
FEEL, which stands for Friendly Enough Expression Language, is a new expression language
defined by the DMN specification. It aims to bridge the gap between decision modelling and
execution, by assigning semantics to the decision model constructs.
●
Aims to be usable by any user “capable of using Excel formulas”
●
Is used both in DRD (Decision Requirement Diagrams) as well as Decision Tables
●
Two levels of compliance:
●
Level 2: requires only the features of S-FEEL (a simplified FEEL defined in chapter 9 of the
spec)
●
Level 3: require full implementation of FEEL (as defined in chapter 10 of the spec)
FEEL EXAMPLE – BOXED EXPRESSION
BKM name
Parameters
BKM result
Expressions
Context entries
(“Local variables”)
CONFORMANCE LEVELS
and THE BIG PICTURE
CONFORMANCE LEVELs
The spec defines 3 incremental conformance levels for implementations:
CONFORMANCE LEVEL 1
Requires support for authoring of Decision Requirements Diagram, Decision Logic and Decision Tables
This conformance level is basically “documentation only”, no execution required
CONFORMANCE LEVEL 2
Everything from conformance level 1, plus support for the S-FEEL (simplified FEEL) expression language
Requires execution, and requires the logic modeled in CL1 to be expressed in S-FEEL
CONFORMANCE LEVEL 3
Everything from conformance level 2, plus support for the full FEEL language
This includes additional modeling elements like “boxed expressions”
DMN TCK: a community effort
https://dmn-tck.github.io/tck
DMN: big picture
DMN: big picture
DMN: big picture
DMN: big picture
BPMN
DMN
A COMPLETE END-TO-END
DMN SOLUTION
MODELING
AUTHORING
DEMO: A COMPLETE END-TO-END SOLUTION
METHODOLOGY
TRAINING
RUNTIME
VALIDATION
DECISION MODEL AND NOTATION (DMN)
DEMO !
DEMO HIGHLIGHTS
DEMO HIGHLIGHTS
DEMO HIGHLIGHTS
DEMO HIGHLIGHTS
DEMO HIGHLIGHTS
WHAT’s NEXT
SOME POINTERS
Where to get more information:
●
DMN specification: http://www.omg.org/spec/DMN
●
Drools Website: http://drools.org
●
Specific Chapter for Drools DMN support in the documentation
●
DMN quickstart: https://www.trisotech.com/dmnquickstart
●
Bruce Silver’s book: DMN Method & Style : http://methodandstyle.com/books
THANK YOU
plus.google.com/+RedHat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNewslinkedin.com/company/red-hat

More Related Content

What's hot

Introduction to redis
Introduction to redisIntroduction to redis
Introduction to redisTanu Siwag
 
Présentation DEVOPS.pptx
Présentation DEVOPS.pptxPrésentation DEVOPS.pptx
Présentation DEVOPS.pptxboulonvert
 
SDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileSDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileAbdel Moneim Emad
 
Introduction à la démarche Devops
Introduction à la démarche DevopsIntroduction à la démarche Devops
Introduction à la démarche DevopsRomain Chalumeau
 
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2Jaime Martin Losa
 
Introduction à DevOps
Introduction à DevOpsIntroduction à DevOps
Introduction à DevOpsMicrosoft
 
GitLab for CI/CD process
GitLab for CI/CD processGitLab for CI/CD process
GitLab for CI/CD processHYS Enterprise
 
Présentation Git & GitHub
Présentation Git & GitHubPrésentation Git & GitHub
Présentation Git & GitHubThibault Vlacich
 
Présentation du DevOps
Présentation du DevOpsPrésentation du DevOps
Présentation du DevOpsCyrielle Orban
 
JBL - ENSIM - Approche Architecture d'Entreprise
JBL - ENSIM - Approche Architecture d'EntrepriseJBL - ENSIM - Approche Architecture d'Entreprise
JBL - ENSIM - Approche Architecture d'EntrepriseJean Blanchard
 
What Is DevOps?
What Is DevOps?What Is DevOps?
What Is DevOps?Soumya De
 
Introduction à la big data v3
Introduction à la big data v3 Introduction à la big data v3
Introduction à la big data v3 Mehdi TAZI
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)Tom Kocjan
 

What's hot (20)

Introduction to redis
Introduction to redisIntroduction to redis
Introduction to redis
 
Présentation DEVOPS.pptx
Présentation DEVOPS.pptxPrésentation DEVOPS.pptx
Présentation DEVOPS.pptx
 
SDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileSDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with Agile
 
Introduction à la démarche Devops
Introduction à la démarche DevopsIntroduction à la démarche Devops
Introduction à la démarche Devops
 
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
Fast RTPS: Programming with the Default Middleware for Robotics Adopted in ROS2
 
Introduction à DevOps
Introduction à DevOpsIntroduction à DevOps
Introduction à DevOps
 
DevOps
DevOps DevOps
DevOps
 
Introduction to DDD
Introduction to DDDIntroduction to DDD
Introduction to DDD
 
GitLab for CI/CD process
GitLab for CI/CD processGitLab for CI/CD process
GitLab for CI/CD process
 
Présentation Git & GitHub
Présentation Git & GitHubPrésentation Git & GitHub
Présentation Git & GitHub
 
Présentation du DevOps
Présentation du DevOpsPrésentation du DevOps
Présentation du DevOps
 
JBL - ENSIM - Approche Architecture d'Entreprise
JBL - ENSIM - Approche Architecture d'EntrepriseJBL - ENSIM - Approche Architecture d'Entreprise
JBL - ENSIM - Approche Architecture d'Entreprise
 
Data Lake
Data LakeData Lake
Data Lake
 
GIT Básico
GIT BásicoGIT Básico
GIT Básico
 
Gitlab, GitOps & ArgoCD
Gitlab, GitOps & ArgoCDGitlab, GitOps & ArgoCD
Gitlab, GitOps & ArgoCD
 
What Is DevOps?
What Is DevOps?What Is DevOps?
What Is DevOps?
 
Introduction à la big data v3
Introduction à la big data v3 Introduction à la big data v3
Introduction à la big data v3
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)
 
Git e GitHub - Conceitos Básicos
Git e GitHub - Conceitos BásicosGit e GitHub - Conceitos Básicos
Git e GitHub - Conceitos Básicos
 
RDBMS vs NoSQL
RDBMS vs NoSQLRDBMS vs NoSQL
RDBMS vs NoSQL
 

Similar to Decision Model and Notation (DMN) and Drools DMN support

Thinking inside the box Introducing new boxed expressions to DMN Denis Gagne
Thinking inside the box  Introducing new boxed expressions to DMN  Denis GagneThinking inside the box  Introducing new boxed expressions to DMN  Denis Gagne
Thinking inside the box Introducing new boxed expressions to DMN Denis GagneDenis Gagné
 
Integrating DMN FEEL to BPMN and CMMN Denis Gagne
Integrating DMN FEEL to BPMN and CMMN   Denis GagneIntegrating DMN FEEL to BPMN and CMMN   Denis Gagne
Integrating DMN FEEL to BPMN and CMMN Denis GagneDenis Gagné
 
Proposal
ProposalProposal
Proposaliampree
 
Domain specific modelling (DSM)
Domain specific modelling (DSM)Domain specific modelling (DSM)
Domain specific modelling (DSM)PG Scholar
 
Feature driven development
Feature driven developmentFeature driven development
Feature driven developmentRuhaim Izmeth
 
C Course material
C Course materialC Course material
C Course materialFareed Khan
 
Ivana Trickovic @ BPMN 2010
Ivana Trickovic @ BPMN 2010Ivana Trickovic @ BPMN 2010
Ivana Trickovic @ BPMN 2010bpmn2010
 
One Dsl4negotiations Presented
One Dsl4negotiations PresentedOne Dsl4negotiations Presented
One Dsl4negotiations Presentedpierino23
 
DMN 1-4 and Beyond
DMN 1-4 and BeyondDMN 1-4 and Beyond
DMN 1-4 and BeyondDenis Gagné
 
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformationMajong DevJfu
 
Std 10 computer chapter 10 introduction to c language (part1)
Std 10 computer chapter 10 introduction to c language (part1)Std 10 computer chapter 10 introduction to c language (part1)
Std 10 computer chapter 10 introduction to c language (part1)Nuzhat Memon
 
Modeling Service Orchestrations with a Rule-enhanced Business Process Language
Modeling Service Orchestrations with a Rule-enhanced Business Process LanguageModeling Service Orchestrations with a Rule-enhanced Business Process Language
Modeling Service Orchestrations with a Rule-enhanced Business Process LanguageDragan Gasevic
 
Web based tool for domain specific modeling
Web based tool for domain specific modeling Web based tool for domain specific modeling
Web based tool for domain specific modeling PG Scholar
 
Good old u serv product derby in the brave new world of decision management
Good old u serv product derby in the brave new world of decision managementGood old u serv product derby in the brave new world of decision management
Good old u serv product derby in the brave new world of decision managementJacob Feldman
 
Good Old UServ Product Derby in the Brave New World of Decision Management
Good Old UServ Product Derby in the Brave New World of Decision Management Good Old UServ Product Derby in the Brave New World of Decision Management
Good Old UServ Product Derby in the Brave New World of Decision Management Decision Management Solutions
 

Similar to Decision Model and Notation (DMN) and Drools DMN support (20)

Thinking inside the box Introducing new boxed expressions to DMN Denis Gagne
Thinking inside the box  Introducing new boxed expressions to DMN  Denis GagneThinking inside the box  Introducing new boxed expressions to DMN  Denis Gagne
Thinking inside the box Introducing new boxed expressions to DMN Denis Gagne
 
Integrating DMN FEEL to BPMN and CMMN Denis Gagne
Integrating DMN FEEL to BPMN and CMMN   Denis GagneIntegrating DMN FEEL to BPMN and CMMN   Denis Gagne
Integrating DMN FEEL to BPMN and CMMN Denis Gagne
 
Proposal
ProposalProposal
Proposal
 
Domain specific modelling (DSM)
Domain specific modelling (DSM)Domain specific modelling (DSM)
Domain specific modelling (DSM)
 
Feature driven development
Feature driven developmentFeature driven development
Feature driven development
 
C Course material
C Course materialC Course material
C Course material
 
ERP_Up_Down.ppt
ERP_Up_Down.pptERP_Up_Down.ppt
ERP_Up_Down.ppt
 
Ivana Trickovic @ BPMN 2010
Ivana Trickovic @ BPMN 2010Ivana Trickovic @ BPMN 2010
Ivana Trickovic @ BPMN 2010
 
How to reduce DTP and translation costs with FrameMaker
How to reduce DTP and translation costs with FrameMakerHow to reduce DTP and translation costs with FrameMaker
How to reduce DTP and translation costs with FrameMaker
 
One Dsl4negotiations Presented
One Dsl4negotiations PresentedOne Dsl4negotiations Presented
One Dsl4negotiations Presented
 
6
66
6
 
Ptc Uml2 Workshop
Ptc Uml2 WorkshopPtc Uml2 Workshop
Ptc Uml2 Workshop
 
DMN 1-4 and Beyond
DMN 1-4 and BeyondDMN 1-4 and Beyond
DMN 1-4 and Beyond
 
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation
 
Std 10 computer chapter 10 introduction to c language (part1)
Std 10 computer chapter 10 introduction to c language (part1)Std 10 computer chapter 10 introduction to c language (part1)
Std 10 computer chapter 10 introduction to c language (part1)
 
Me2011 presentation by Manfred Jeusfeld
Me2011 presentation by Manfred JeusfeldMe2011 presentation by Manfred Jeusfeld
Me2011 presentation by Manfred Jeusfeld
 
Modeling Service Orchestrations with a Rule-enhanced Business Process Language
Modeling Service Orchestrations with a Rule-enhanced Business Process LanguageModeling Service Orchestrations with a Rule-enhanced Business Process Language
Modeling Service Orchestrations with a Rule-enhanced Business Process Language
 
Web based tool for domain specific modeling
Web based tool for domain specific modeling Web based tool for domain specific modeling
Web based tool for domain specific modeling
 
Good old u serv product derby in the brave new world of decision management
Good old u serv product derby in the brave new world of decision managementGood old u serv product derby in the brave new world of decision management
Good old u serv product derby in the brave new world of decision management
 
Good Old UServ Product Derby in the Brave New World of Decision Management
Good Old UServ Product Derby in the Brave New World of Decision Management Good Old UServ Product Derby in the Brave New World of Decision Management
Good Old UServ Product Derby in the Brave New World of Decision Management
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Recently uploaded (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Decision Model and Notation (DMN) and Drools DMN support

  • 1. Decision Model and Notation (DMN) and Drools DMN support Matteo Mortari Software Engineer Drools team
  • 2. Decision Model and Notation (DMN) and Drools DMN support Agenda: ● What is DMN ● Components of a DMN solution ● Conformance levels and the big picture ● DEMO: a complete end-to-end DMN solution
  • 3. WHAT IS DMN ? DMN, which stands for Decision Model and Notation, is a relatively new standard managed by OMG, the organization behind BPMN. It is trying to do for Business Decision Management what BPMN did for Business Process Management a decade ago: empower the business to take charge of the logic that drives its operations, through a vendor-independent diagramming language. Bruce Silver, http://methodandstyle.com/what-is-dmn
  • 4. A GRAPHICAL LANGUAGE FOR DECISION MODELING including a standard notation for Decision Tables FEEL EXPRESSION LANGUAGE Friendly Enough Expression Language METAMODEL AND INTERCHANGE 3 levels of conformity and XML interchange format WHAT IS DMN ? every price in [ 80, 11, 90 ] satisfies price > 10
  • 5. BRIEF HISTORY Versions released: ● 1.0 – September 2015 ● Introduced DMN ● Had several problems (bugs) on both the XML schema definition and the FEEL language that prevented its full implementation. ● 1.1 – June 2016 ● RTF group worked to fix most of the problems from the version 1.0 ● It is the first version of the spec that is fully implementable (with a few minor issues) Specification documents at: http://www.omg.org/spec/DMN/
  • 8. DMN GRAPHICAL LANGUAGE - EXAMPLE Input Node
  • 9. DMN GRAPHICAL LANGUAGE - EXAMPLE Input NodeDecision Node
  • 10. DMN GRAPHICAL LANGUAGE - EXAMPLE Input NodeDecision Node
  • 11. DMN GRAPHICAL LANGUAGE - EXAMPLE Input NodeDecision Node Business Knowledge Model
  • 12. DMN GRAPHICAL LANGUAGE - EXAMPLE Input NodeDecision Node Business Knowledge Model
  • 13. DMN GRAPHICAL LANGUAGE - EXAMPLE Decision Table name Hit policy Rule number Conditions Result column
  • 14. WHAT IS FEEL? FEEL, which stands for Friendly Enough Expression Language, is a new expression language defined by the DMN specification. It aims to bridge the gap between decision modelling and execution, by assigning semantics to the decision model constructs. ● Aims to be usable by any user “capable of using Excel formulas” ● Is used both in DRD (Decision Requirement Diagrams) as well as Decision Tables ● Two levels of compliance: ● Level 2: requires only the features of S-FEEL (a simplified FEEL defined in chapter 9 of the spec) ● Level 3: require full implementation of FEEL (as defined in chapter 10 of the spec)
  • 15. FEEL EXAMPLE – BOXED EXPRESSION BKM name Parameters BKM result Expressions Context entries (“Local variables”)
  • 17. CONFORMANCE LEVELs The spec defines 3 incremental conformance levels for implementations: CONFORMANCE LEVEL 1 Requires support for authoring of Decision Requirements Diagram, Decision Logic and Decision Tables This conformance level is basically “documentation only”, no execution required CONFORMANCE LEVEL 2 Everything from conformance level 1, plus support for the S-FEEL (simplified FEEL) expression language Requires execution, and requires the logic modeled in CL1 to be expressed in S-FEEL CONFORMANCE LEVEL 3 Everything from conformance level 2, plus support for the full FEEL language This includes additional modeling elements like “boxed expressions”
  • 18. DMN TCK: a community effort https://dmn-tck.github.io/tck
  • 24. MODELING AUTHORING DEMO: A COMPLETE END-TO-END SOLUTION METHODOLOGY TRAINING RUNTIME VALIDATION DECISION MODEL AND NOTATION (DMN)
  • 32. SOME POINTERS Where to get more information: ● DMN specification: http://www.omg.org/spec/DMN ● Drools Website: http://drools.org ● Specific Chapter for Drools DMN support in the documentation ● DMN quickstart: https://www.trisotech.com/dmnquickstart ● Bruce Silver’s book: DMN Method & Style : http://methodandstyle.com/books