13 - Decision Views - A way to partition rule sheets for different audiences

The Decision Model View

Real world decision tables can get very complex. The question is how to better manage the complexity of the enterprise decision model. Thus the notion of the Decision Model View.

Put simply, the View is like looking at the Decision Model through a filter, just as one may look at a complex database through the filter of a SQL View to focus on just the data that is of interest at a given time.

In fact, the Decision Model View is created by integrating relational model principles into Decision Model structures. Using this approach Decision Models are created, managed, analyzed and implemented as Views of the underlying Enterprise Decision Model.

In fact our practice is to no longer manage Decision Models, but their Views; this is similar to the concept of never permitting application developers to directly address tables in RDBMS, but limit their access to Views only. This enables the Data Modeler to completely isolate and make changes to the schema without perturbing applications accessing the data.

A Corticon Example

Suppose we start with this rulesheet:

Applying compression we get

Splitting on Condition1

If we decide to split this rulesheet based on condition1 (each rule sheet will have a filter corresponding to condition 1) then we get three sheets for a total of 7 rules

Figure 1 View for Condition1 = 'A'

Figure 2 View for Condition1 = 'B'

Figure 3 View for Condition1 = 'C'

Splitting on Condition2

Alternatively we could split the rule sheet based on condition 2

This results in 10 rules

Figure 4 View for Condition2 = '1'

Figure 5 View for Condition2 = '2'

Figure 6 View for Condition2 = '3'

Splitting on Condition3

Or we could split the rule sheet based on condition 3.

This results in 2 rulesheets and a total of 8 rules

Figure 7 View for Condition3 = 'X'

Figure 8 View for Condition3 = 'Y'

Splitting on the Action Values

We could even split the rule sheet based on the action.

Figure 9 View for Rules that conclude 'p'

Figure 10 View for Rules that conclude 'q'

Figure 11 View for Rules that conclude 'r'

Each of these different views may be appropriate for a different audience.

Currently in Corticon you have to choose one of these representations.

If we had a dynamic decision view capability then we could derive all of these views from the core rule sheet.

Changes made by the user in the view would then be reflected in changes to the underlying core rule sheet