Top Banner
DMN - supplement your BPMN Željko Šmaguc - S.O.E. ICT
30

Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Feb 21, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

DMN - supplement your

BPMN

Željko Šmaguc - S.O.E. ICT

Page 2: 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

Page 3: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Decision

Definition

Determination of output fact value resulting from specified input fact values.

Types

❏ Strategic

❏ Tactical

❏ Operational

Page 4: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

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

Page 5: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

How much?

Page 6: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

How much?

Page 7: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

How much?

Page 8: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

How much?

Page 9: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Why do we need to model decisions?

❏ Not documented

❏ Not formalized

❏ Not complete

❏ Impossible change management

Page 10: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Decisions with BPMN

Page 11: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

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

Page 12: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Decisions with DMN + BPMN

Page 13: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

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

Page 14: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Conformance levelsConformance level 1

❏ Decisions requirements diagram

❏ Decisions table

Conformance level 2

❏ Decisions tables executable with S-FEEL

Conformance level 3

❏ FEEL

❏ Boxed Expressions

Page 15: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

DMN

❏ Decisions Requirement Diagram

❏ Decision Tables

❏ Friendly Enough Expression Language (FEEL)

❏ Boxed Expressions

Page 16: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Decision Requirements Diagram

❏ Decisions and theirs interdependency

❏ Required input

❏ Business knowledge and Knowledge source

Page 17: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Decision Requirements Diagram

Page 18: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

DMN

❏ Decisions Requirement Diagram

❏ Decision Tables

❏ Friendly Enough Expression Language (FEEL)

❏ Boxed Expressions

Page 19: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Decision Table

Page 20: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

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

Page 21: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Decision Table

Page 22: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

DMN

❏ Decisions Requirement Diagram

❏ Decision Tables

❏ Friendly Enough Expression Language (FEEL)

❏ Boxed Expressions

Page 23: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

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

Page 24: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

DMN

❏ Decisions Requirement Diagram

❏ Decision Tables

❏ Friendly Enough Expression Language (FEEL)

❏ Boxed Expressions

Page 25: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Boxed expressions

Name - Value expression pairs

❏ decision table

❏ boxed FEEL expression

❏ boxed invocation

❏ boxed context

❏ boxed list

❏ relation, or

❏ boxed function

Page 26: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

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

Page 27: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Drools 7

Example

Page 28: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

DMN Tools

openjvm.jvmhost.net/DMNtools

www.trisotech.com

Page 29: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Conclusion

❏ Supported standard

❏ Business Friendly

❏ B-IT bridge (modeling + logic)

❏ Automated/Executable Operational Decisions

❖ Not yet mature

❖ Lack of few features

Page 30: Javantura v4 - DMN – supplement your BPMN - Željko Šmaguc

Thank you!

zeljko.smaguc @ soe.hr