building business capability 2012 3nd world congress on decision tables verifying and maintaining...
TRANSCRIPT
![Page 1: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/1.jpg)
Building Business Capability 20123nd World Congress on Decision Tables
Verifying and Maintaining Complex Policies with Unbalanced Decision Tables
![Page 2: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/2.jpg)
The Speakers
Paul SnowRules Management Chief Architect, SourcePulse Bhushan Naniwadekar
Director of Application Development , SourcePulse
![Page 3: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/3.jpg)
![Page 4: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/4.jpg)
Context of the Talk
• Niyum provides a set of tools and services to build Decision Table based Rules
• Cloud based • Workstation support• Niyum is built on DTRules, an Open Source,
Pure Java Decision Table based Rules Engine
http://SourcePulse.comhttp://DTRules.com
![Page 5: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/5.jpg)
Set the page_limit = 0; Set the period = the days from the begin date to the current_date; remove the persons from ages viewed + 1 is greater than the publisher.page_limit The page num is within the chapters_viewed The page Add 1 to the page count; add expected Children to The Client's dependents; Move the client from the
y y y y y n n n n n n - - - - - y n n n n n y n n n n - y n n n n - y n n n - - y n n n - - y n n - - - y n n - - - y n - - - - y n y y y y y n n n n n n - - - - - y n n n n n y n n n n - y n n n n - y n n n - - y n n n
A Decision Table
Conditions
x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
Conditions
The page_limit == 0 The weeks from the begin_date to the current_date > the day_limit the number of pages_viewed + 1 is greater than the publisher. page_limit The page_number is with chapters_viewedThe page_number is within the excluded_chapters Thelimit > 20 The days from the begin_date to the current_date > the day_limit the number of pages_viewed + 1 is greater than the publisher. page_limit The page_number is within the chapters_viewed The page_number is within the
ConditionsCondition
Table
ActionTable
Actions
![Page 6: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/6.jpg)
In a Decision Table…
The Customer is over 18
The Customer is over 25
Accident Count > 4
Valuation > 30,000 dollars
Driving is Urban
Customer is a home owner
Otherwise
N N Y Y
N Y
Y Y Y
Y
Y Y
N N
*
X X X X
X
Do not Issue Policy
Issue Policy
![Page 7: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/7.jpg)
These are the rules!In a Decision Table…
The Customer is over 18
The Customer is over 25
Accident Count > 4
Valuation > 30,000 dollars
Driving is Urban
Customer is a home owner
Otherwise
N N Y Y
N Y
Y Y Y
Y
Y Y
N N
*
X X X X
X
Do not Issue Policy
Issue Policy
![Page 8: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/8.jpg)
Documenting the Rules in a Decision Table
The Customer is over 18
The Customer is over 25
Accident Count > 4
Valuation > 30,000 dollars
Driving is Urban
Customer is a home owner
Otherwise
N N Y
N Y
Y Y Y
Y
Y Y
N N
*
X X X X
X
Do not Issue Policy
Issue Policy
Reject Customers under 19 with four accidentsReject Customers under 19 who primarily drive in Urban AreasReject under 26, 4 accidents, no home ownershipReject over 25, 4 accidents, high valuation, urban driving, no home ownership
Otherwise, Accept the Customer
![Page 9: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/9.jpg)
Balancing the Table
![Page 10: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/10.jpg)
Simplifying the Complexity of Rules
Just using the four quadrants and balanced Decision Tables is not a simple way of representing Rules and Policy
• Make the Rules obvious in a Table• Provide Easy ways of Tracking and
Documenting what rules are being applied
![Page 11: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/11.jpg)
Niyum Supports Two Types of Unbalanced Decision Tables
• FIRST – Resolve by priority. Only execute the first column whose conditions are met.
• ALL – Resolve by generosity. Every column whose conditions are met is evaluated.
![Page 12: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/12.jpg)
First: Execute Until a Rule Matches
The Customer is over 18
The Customer is over 25
Accident Count > 4
Valuation > 30,000 dollars
Driving is Urban
Customer is a home owner
Otherwise
N N Y
N Y
Y Y Y
Y
Y Y
N N
*
X X X X
X
Do not Issue Policy
Issue Policy
Reject Customers under 19 with four accidents Reject Customers under 19 who primarily drive in Urban Areas Reject under 26, > 4 accidents, no home ownership Reject over 25, > 4 accidents, high value , urban, no home ownership
Otherwise, Accept the Customer
OR
![Page 13: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/13.jpg)
All: Execute All Rules that Match
The Customer is over 18
The Customer is over 25
Accident Count > 4
Valuation > 30,000 dollars
Driving is Urban
Customer is a home owner
Otherwise
N N Y
N Y
Y Y Y
Y
Y Y
N N
*
X X X X
X
Do not Issue Policy
Issue Policy
OR
Reject Customers under 19 with four accidents Reject Customers under 19 who primarily drive in Urban Areas
Otherwise, Accept the Customer
Reject under 26, > 4 accidents, no home ownership Reject over 25, > 4 accidents, high value , urban, no home ownership
![Page 14: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/14.jpg)
Four Patterns of Decision Tables
• Control • Exclusion/Inclusion • Independent• Interdependent
![Page 15: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/15.jpg)
Four Patterns of Decision Tables
• Control • Exclusion/Inclusion • Independent• Interdependent
This is not always so clear with Balanced Decision Tables
![Page 16: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/16.jpg)
Control Tables:Order Decision Table Execution
![Page 17: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/17.jpg)
Control Tables (Selection) : Order Decision Table Execution
Chooses a path through the Decision Tables based on a switch or a Test
![Page 18: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/18.jpg)
Control Tables (Event Handling): Order Decision Table Execution
![Page 19: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/19.jpg)
Exclusion Tables:Define a Set of Exceptions to Disqualify (or Qualify) an Action
Could Not Find a Reason to Say “No!”
Just Look for a Reason to say “No!”
![Page 20: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/20.jpg)
How to Verify an Exclusion Table
• Each column is a rule that excludes a case from the conclusion of the table
• But It is critical to look at what is left over• The right tools will balance your table for you• Look to the Balanced Table for what is being
accepted
![Page 21: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/21.jpg)
Tools like Niyum Provide a Balanced Table View
The BlueIs Where We Issue the Policy
The White Where we Reject the Policy. These are Straight from our Table!
Review with your Expert!
![Page 22: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/22.jpg)
How about Tracking?
• That we are going to exclude an action is not always enough
• How do we track all the reasons for not taking an action?
• The last thing we want a client to do is expend a great deal of effort to resolve an issue, only to find there is another (and maybe another!) lurking behind!
![Page 23: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/23.jpg)
Exclusion Tables can collect all the Rules that Excluded an Action
• The goal is to report every rule excluding or qualifying some action
• With Unbalanced Tables, it is straight forward to flip the type to ALL, and add tracking
![Page 24: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/24.jpg)
Tracking all Exclusion Rules
![Page 25: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/25.jpg)
One Column Covered by Two Rules
![Page 26: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/26.jpg)
Independent Decision Tables
• A collection of independent rules in a Decision Table
• Scorecards • Complex Event handling
![Page 27: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/27.jpg)
Independent Rules are ALL tables of Rules
![Page 28: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/28.jpg)
With Independent Tables, the Rules are the Rules. Looking at the Balanced Table does little if any good
![Page 29: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/29.jpg)
Interdependent Tables
• The Hardest to maintain• Examine the Table. Where are the Patterns?• Can you make the Table into a FIRST table?• Can you make the Table into an ALL table?
![Page 30: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/30.jpg)
An Interdependent Table
![Page 31: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/31.jpg)
An Interdependent Table
![Page 32: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/32.jpg)
Cleaning up the Table
![Page 33: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/33.jpg)
Converted to an Exclusion Table
![Page 34: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/34.jpg)
Check Balanced View
![Page 35: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/35.jpg)
Converting to an Independent Table
![Page 36: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/36.jpg)
Converting to an Independent Table
![Page 37: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/37.jpg)
Converting to an Independent Table
![Page 38: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/38.jpg)
Converted to an Independent Table
![Page 39: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/39.jpg)
Check Balanced View
![Page 40: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/40.jpg)
Which Representation do you Use?
![Page 41: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/41.jpg)
Which Representation do you Use?
![Page 42: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/42.jpg)
Check your Work
• The Balanced representation does not Change.
• Converting to an Exclusion Table tends to simplify the representation of complexity in the Conditions
• Converting to an Independent Table tends to simplify the Representation of Complexity in the Actions
![Page 43: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/43.jpg)
Advantages of Unbalanced Tables
• The Business User doesn’t have to learn to Balance Tables
• The Business User doesn’t have to read Balanced Tables
• Because Columns can be moved easily, Priorities are easy to manage in FIRST tables
• Simplifies Independent Rules when present in Decision Tables
• Avoids “Scrambling” the actual Business Rules
![Page 44: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/44.jpg)
Advantages of Unbalanced Tables
Even when Balanced Tables are Better…
Your Tools can simply provide the Balanced Representation.
![Page 45: Building Business Capability 2012 3nd World Congress on Decision Tables Verifying and Maintaining Complex Policies with Unbalanced Decision Tables](https://reader035.vdocuments.site/reader035/viewer/2022070306/5519b3e85503466f578b46e8/html5/thumbnails/45.jpg)
QUESTIONS