Business Decision Modeling with DMN and OpenRules

Similar documents
How Business Analysts Build Executable Decision Models with DMN Standard without Programming

OPENRULES. User Manual. Open Source Business Decision Management System. Release 6.2.5

OPENRULES. User Manual. Open Source Business Decision Management System. Release 6.2.1

OPENRULES. User Manual. Open Source Business Rules and Decision Management System. Release 6.4.3

Decision Model and Notation 101

OPENRULES. User Manual. Open Source Business Decision Management System. Release 6.3.1

CLINICAL DECISION SUPPORT WITH DECISION MODEL AND NOTATION (DMN)

Decision Management Community June 2017 Challenge

ActiveVOS Technologies

Rule Compressor. Using Machine Learning for Compression of Large Classification Rulesets. Jacob Feldman, PhD Chief Technology Officer

Reiterating the SOA Vision

1 Executive Overview The Benefits and Objectives of BPDM

A Mashup-Based Strategy for Migration to Web 2.0

DEMYSTIFYING THE DECISION MODEL AND NOTATION SPECIFICATION. Edson Tirelli Sr Principal Software Engineer Drools Project Lead

JBPM Course Content. Module-1 JBPM overview, Drools overview

Next-Generation Architecture for Virtual Prototyping

BPEL Research. Tuomas Piispanen Comarch

Oracle Application Development Framework Overview

Chapter 8 Web Services Objectives

Identify and cluster touchpoints in several ways Identify risks and initiatives associated to touchpoints

Whole Platform Foundation. The Long Way Toward Language Oriented Programming

RULE SOLVER USER MANUAL. Constraint Programming with OpenRules OpenRules, Inc.

Xyleme Studio Data Sheet

SOA Distilled. Udi Dahan The Software Simplist..NET Development Expert & SOA Specialist Microsoft Solutions Architect MVP

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE

Loan Origination Rule Modeling Challenge (June 2017) Corticon Solution

DMN Modeling and Simulation

DMN Modeling and Simulation

Web Services. Lecture I. Valdas Rapševičius. Vilnius University Faculty of Mathematics and Informatics

Advanced Solutions of Microsoft SharePoint Server 2013 Course Contact Hours

DMN DECISIONS EXECUTION SCENARIOS

Papyrus: Advent of an Open Source IME at Eclipse (Redux)

Service Oriented Architectures Visions Concepts Reality

A Model-Driven Framework for Domain Specific Process Design and Governance

Model Driven Architecture and Rhapsody

Java Constraint Programming with JSR-331

Reconciling UML and BPMN Models in UPDM

DITA for Enterprise Business Documents Sub-committee Proposal Background Why an Enterprise Business Documents Sub committee

Introducing SAS Model Manager 15.1 for SAS Viya

End to End BPM: From process modeling to execution with Signavio and Red Hat. Red Hat Summit Wednesday May 3.

Advanced Solutions of Microsoft SharePoint Server 2013

What s a BA to do with Data? Discover and define standard data elements in business terms

Decision Management Community

<Insert Picture Here> The Oracle Fusion Development Platform: Oracle JDeveloper and Oracle ADF Overview

APIs Economy for Mainframe Customers: A new approach for modernizing and reusing mainframe assets

C ibm.

RethinkDB. Niharika Vithala, Deepan Sekar, Aidan Pace, and Chang Xu

IOWA STATE UNIVERSITY OF SCIENCE AND TECHNOLOGY

challenges in domain-specific modeling raphaël mannadiar august 27, 2009

Evaluation Guide for ASP.NET Web CMS and Experience Platforms

Migrating traditional Java EE applications to mobile

Leveraging OGC Services in ArcGIS Server. Satish Sankaran, Esri Yingqi Tang, Esri

idiscover RELATIONSHIPS Next find any documented relationships (database level). Ex., foreign keys

C exam IBM C IBM Business Process Management Express or Standard Edition, V 8.5.5, BPM Application Development

Raising the Level of Development: Models, Architectures, Programs

Domain Specific Development

Advanced Solutions of Microsoft SharePoint 2013

Beginning To Define ebxml Initial Draft

archiving with the IBM CommonStore solution

FP Sizing of SOA applications made easy!

UCSD Extension. Fundamentals of Web Services. Instructor: John Pantone. 2007, Objectech Corporation. All rights reserved

Distribution and web services

The support of Decision Modeling features and concepts in tooling

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?

A Unified Business Interface for Modeling and Solving Constraint Satisfaction Problems

NoMagic Product Comparison Brief

1Z0-560 Oracle Unified Business Process Management Suite 11g Essentials

Enterprise Architect. User Guide Series. Domain Models

Legacy Modernization to SOA using Compass/VB

Eclipse SOA Tools Platform Project

MDA. SOA = Model Driven SOA

DATA STRUCTURES USING C

Technology for Cadastral Applications. John R. Hacker, Jr. Marketing Manager Geospatial Applications

Enterprise Geographic Information Servers. Dr David Maguire Director of Products Kevin Daugherty ESRI

Professional (CBAP) version 3

Java in the world of Software AG JCP EC May 2018

DMN Section 11 Loan Origination Example. By Maarten P.D. Schadd Senior Product Consultant at Blueriq B.V.

Software Architectures. Lecture 6 (part 1)

Techno Expert Solutions An institute for specialized studies! Introduction to Advance QTP course Content

Component-based Architecture Buy, don t build Fred Broks

Enterprise Data Architect

SOFTWARE ENGINEERING. To discuss several different ways to implement software reuse. To describe the development of software product lines.

Experiences with. data for use in apps

Ride the wave of automation to survive the digital transformation storm. December, 2017

Web Client Architecture Guide

Big data privacy in Australia

OG0-091 Q&As TOGAF 9 Part 1

Hyperion Interactive Reporting Reports & Dashboards Essentials

SERES: ASEMANTICREGISTRY FOR ENTERPRISE SERVICES. Geir Jevne 9.juni 2011

C Exam Questions Demo IBM. Exam Questions C IBM FileNet Business Process Manager v5.

Abstraction in Business Architecture

Accessibility of Web

LOG8430: Architecture logicielle et conception avancée

-CONTINUE ON NEXT PAGE-

Introducing RecoverX 2.5

DEV427 MODEL-DRIVEN DEVELOPMENT USING PowerDesigner. Xiao-Yun WANG PowerDesigner Chief Architect

Advance Mobile& Web Application development using Angular and Native Script

Augmenting BPMN with DMN:

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

Three Key Challenges Facing ISPs and Their Enterprise Clients

Transcription:

RulesML+RR+DecisionCAMP London, July 12-15, 2017 Business Decision Modeling with DMN and OpenRules Jacob Feldman, PhD Chief Technology Officer www.openrules.com 1

Outline DMN Hands-on creation and execution DMNbased decision models DecisionHello (by business analysts) DecisionHelloJava (integration with IT) DecisionLoanOrigination Domain-Specific Decision Tables 2

Business Rules and Decision Management Systems (BRDMS) BRDMS is at the center of modern enterprise architectures Examples: loan approval, insurance underwriting, customer service tactics, clinical guidelines, risk management, compliance, and many others Still: decision logic has to be defined by humans semantic technology can make a difference 3

2011 OpenRules, Inc. 2011 Decision Management Solutions 4

DMN Decision Model and Notation OMG standard since 2014 Specifies key concepts and constructs for business decision modeling Current release 1.1 supports DMN XML interchange format Next Release 1.2 Q1 2018 Many vendors announced DMN support 5

6

Integration with Business Processes (BPMN) DMN Modeling Aspects Decision Requirements Diagrams (DRD) Decision Logic (Standardized Decision Tables) 7

DMN Notation DRD Output of the Decision-2 is used as an input for the Decision-1 This Decision Table represents Business Knowledge-2 (decision logic) 8

Decision Modeling Constructs Core Constructs Diagrams with Logical Connections (information requirements) Decision Tables Basic Expression Language (S-FEEL) Conformance Level 2 Advanced Constructs Boxed Expressions (FEEL functions with parameters, contexts, if-then-else, for..return loops, filters, sorting, recursion, ) Conformance Level 3 9

Hands-On Decision Modeling The best way to understand DMN is to build and test real Decision Models We will create and execute several examples: DecisionHello (by business analysts) DecisionHelloJava (integration with IT) DecisionLoanOrigination 10

Sample Decision Model Determine Customer Greeting Decide how to greet a particular customer during different times of the day (think IVR) Test: Customer: Robinson is a married woman Time of the day: 14:25 pm Expected decision: "Good Afternoon, Mrs. Robinson!" 11

Starting with a Decision "Good Afternoon, Mrs. Robinson!" Greeting Salutation Name 12

Decision Requirements Diagram 13

DRD as a Tabular Decision It is a well-known fact that any diagram can be presented in a tabular format (see e.g. Shlaer-Mellor method) Our DRD may be presented in OpenRules as 14

Decision Table DefineGreeting 15

Decision Table DefineSalutation 16

Decision Table DefineSalutation (alternative representation) 17

Decision Table DefineResult This is an examples of a simple FEEL expression 18

Defining Business Glossary 19

Defining Test Data (in Excel) 20

Executing Decision Model 21

Implementation Path 22

Integration with IT Let s assume that now our decision model is tested by business analysts How to integrate it with an actual IT application? Business Objects should be mapped to an actual Business Object Model (e.g. Java classes or XML) A decision may be executed directly from an application (using a Java API or a web service) 23

Accepting Data From Java 24

Executing Decision From Java Create a Decision Create a Customer Execute the Decision 25

Mapping Decision Objects Simply define business concept Customer as Java object IT doesn t even have to look at Decision Logic! Glossary is the only integration map between Business and IT 26

Decision Modeling: Who Does What What Business Users (SMEs) do: Create decision models Validate decision models Create Test cases Execute decision models SMEs use familiar tools such as Excel or Google Docs (no coding required) What Developers do: Help to integrate already tested decision models into existing IT infrastructures 27

Specialized DMN Modelers Trisotech 28

DMN XML Interchange Format 29

DML XML Interchange 30

SOA Architecture with Loosely Coupled Decision Services 2006 OpenRules, Inc. 31

Collaraborative Rules Management with Google Docs 32

More Decision Tables (Banking Example) 33

More Complex Decision Tables 34

1040EZ Decision Table Decision Table with Calculations 35

DecisionTable (single-hit) vs. DecisionTable1(multi-hit) 36

DMN Section 11 Example Loan Origination Business Process 37

DRD 38

Top-Down DRD Decomposition We will decompose our decision model into 7 loosely coupled decision models 39

DRD 40

Decision Model Loan Origination Result Decision Logic 41

Decision Model Loan Origination Result Test Data 42

Decision Model Loan Origination Result Organization Structure Execution Results 43

DRD 44

Decision Model Bureau Strategy DRD 45

Decision Model Bureau Strategy Decision Logic 46

DRD 47

Decision Model Routing DRD 48

Decision Model Routing Decision Logic 49

DRD 50

Decision Model Affordability A fragment of the big DRD Combined in one Variable variable Affordability Combined in one Variable variable Risk Affordability Category 51

Decision Model Affordability - DRD 52

Decision Model Affordability Decision Logic 53

Decision Model Affordability Calculation Logic with a FEEL formula 54

Decision Model Affordability Combining sub-decisions External decision name 55

DRD 56

Decision Model Pre-Bureau Risk Category Defines the variable Risk Category 57

DRD 58

Decision Model Post-Bureau Risk Category Defines the variable Risk Category 59

DRD 60

Decision Model Application Risk Score A typical scorecard 61

Linking Loosely Coupled Decision Models Together Our repository now contains 7 tested loosely coupled decision models and their test-cases 62

Keeping them together A big glossary serves as a spine that keeps all surrounding decision models together: 63

Combined Glossary 64

Importing Decision Models 65

Defining Integrated Decision Models 66

Defining Test Data Applicant 67

Defining Test Data RequestedProduct 68

Defining Test Data BureauData 69

Defining Test Data Application 70

Defining Test Data Test Cases with Expected Results 71

Execution Results for Test 3 Note that Routing never was executed 72

Developing Domain-Specific Decision Tables 73

Examples of Domain-Specific Decision Tables Security Domain (specifies document access) Geo-Spacial Domain 74

Beyond DMN: Business DSL DMN is a general purpose Decision Modeling Language Defines standard formats for generic decision tables and other decision modeling constructs Domain-Specific Decision Modeling is similar to Domain-Specific Languages (DSLs): Business DSL provides specialized business concepts, relationships, and formats for a particular problem domain Converting DSL APIs to a business DSL using domainspecific decision tables OpenRules, Inc. 2017 75

Domain-Specific Decision Modeling Objective Given: a domain-specific language with an API Goal: create a domain-specific decision modeling language oriented to business users DSL (API) Decision Modeling Constructs (Diagrams & Decision Tables) Software Developers Business Analysts OpenRules, Inc. 2017 76

How to create a Domain- Specific Decision Table? 1. Start with a domain-specific language (Java API) 2. Design Decision Tables oriented to a subject matter expert in this particular domain 3. Implement new decision templates with conditions and actions that support new domain-specific decision tables OpenRules, Inc. 2017 77

OpenRules Decision Tables Look Inside of OpenRules Implementation Business View Decision Tables Instances Technical View Decision Table Templates Both defined in Excel 78

Business-oriented Decision Table and its Technical Template 79

Example: Geospatial Domain Deals with objects and algorithms for processing linear geometries (points, lines, areas, etc.) on the 2-dimensional Cartesian plane JTS (Java Topology Suite) JTS is a de-facto standard open source Java library with a complete, consistent, and robust Java API However, it is too complex for business users OpenRules, Inc. 2017 80

Geospatial Expressions used to define Spatial Significance Score HRR Hospital Referral Region HSA Hospital Service Area How to present such rules in a human way that still can be executed by a computer? 81

Business Users Like This Format: New Custom Type of Decision Tables JTS Operators 82

More Complex Conditions Natural Language Expressions 83 83

Implementation Template 84 84

Custom Decision Logic: From Java Apps to Decision Models Programmers General Purpose Language (e.g. Java) Domain-specific APIs Business Analysts BRDMS (DMN) Custom Decision Tables Java Applications Domain-specific Decision Models 85

Conclusion OMG DMN is a serious step forward to standardized and interchangeable representations of business decision logic Core DMN concepts allow business people to represent, test, and manage their decision models without programming Custom Decision Models is a natural replacement of DSL APIs 86

QnA Jacob Feldman, PhD OpenRules, Inc. www.openrules.com jacobfeldman@openrules.com Available at Amazon.com 87