Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc
-
Upload
hujak-hrvatska-udruga-java-korisnika-croatian-java-user-association -
Category
Technology
-
view
93 -
download
2
Transcript of Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc
Agenda
❏ What is a decision and where are the problems
❏ DMN specification and examples
❏ Decision Requirements Diagram
❏ Decision tables
❏ S-FEEL and FEEL
❏ Tools - Drools 7.0
Decision
Definition
Determination of output fact value resulting from specified input fact values.
Types
❏ Strategic
❏ Tactical
❏ Operational
Decision example
Price calculation
Telekom - plans, bundles, contracts, prepaid
Club membership - juniors and veterans
Faculty - tuition per success
Music schools - base price, discounts and surcharges
Why do we need to model decisions?
❏ Not documented
❏ Not formalized
❏ Not complete
❏ Impossible change management
Decisions with BPMN
Why can’t we fit them into a BPMN model?
❏ To complicated, unreadable
❏ Decisions are not time/flow dependent
❏ Changes in decision logic require changes of process/service model
❏ Service/process model is tied to decision logic
DMN Specification❏ Developed by Object Management Group (OMG)
❏ First release in September 2015, current version 1.1 released in June 2016
❏ Content
❏ Decisions Requirement Diagram
❏ Decision Tables
❏ Friendly Enough Expression Language (FEEL)
❏ Boxed Expressions
Conformance levelsConformance level 1
❏ Decisions requirements diagram
❏ Decisions table
Conformance level 2
❏ Decisions tables executable with S-FEEL
Conformance level 3
❏ FEEL
❏ Boxed Expressions
DMN
❏ Decisions Requirement Diagram
❏ Decision Tables
❏ Friendly Enough Expression Language (FEEL)
❏ Boxed Expressions
Decision Requirements Diagram
❏ Decisions and theirs interdependency
❏ Required input
❏ Business knowledge and Knowledge source
DMN
❏ Decisions Requirement Diagram
❏ Decision Tables
❏ Friendly Enough Expression Language (FEEL)
❏ Boxed Expressions
Decision TableHit Policy
Indicator
Single (Unique, Any,
Priority, First)
Multiple (Output and
Rule order, Collect)
Rules in
rows
Rule
numberInput entry Irrelevant Output entry
Allowed
values
Output label
Input
expressions
Inputs and
outputs in
columns
DMN
❏ Decisions Requirement Diagram
❏ Decision Tables
❏ Friendly Enough Expression Language (FEEL)
❏ Boxed Expressions
Friendly Enough Expression Language❏ S-FEEL
❏ Simplified
❏ Mostly used in decision tables
❏ Limited to simple arithmetic and comparison functions
❏ FEEL
Full featured expression language
Built-in functions (arithmetic, string, list…)
Filter expressions
Operators
Sorting
DMN
❏ Decisions Requirement Diagram
❏ Decision Tables
❏ Friendly Enough Expression Language (FEEL)
❏ Boxed Expressions
Boxed expressions
Name - Value expression pairs
❏ decision table
❏ boxed FEEL expression
❏ boxed invocation
❏ boxed context
❏ boxed list
❏ relation, or
❏ boxed function
Drools 7
❏ JBoss
❏ Business Rules Management System
❏ DMN v1.1 Level 3 conformant with version 7.0 (expected release Q1/2017)
❏ XML-based interchange format
❏ https://github.com/droolsjbpm/kie-dmn
DMN Tools
openjvm.jvmhost.net/DMNtools
www.trisotech.com
Conclusion
❏ Supported standard
❏ Business Friendly
❏ B-IT bridge (modeling + logic)
❏ Automated/Executable Operational Decisions
❖ Not yet mature
❖ Lack of few features