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

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

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

DMN - supplement your

BPMN

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

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

How much?

How much?

How much?

How much?

Why do we need to model decisions?

❏ Not documented

❏ Not formalized

❏ Not complete

❏ Impossible change management

Decisions with BPMN

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

Decisions with DMN + BPMN

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

Decision Requirements Diagram

DMN

❏ Decisions Requirement Diagram

❏ Decision Tables

❏ Friendly Enough Expression Language (FEEL)

❏ Boxed Expressions

Decision Table

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

Decision Table

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

Drools 7

Example

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

Thank you!

zeljko.smaguc @ soe.hr