Written by: Niambh Scullion and Wes Woolstenhulme
This article provides you with a high-level overview of how the CÃºram Analysis Documentation Tool (CAD) tool can be used to help with the analysis of CER Rules. It is based on training material developed by Wes Woolstenhulme who is part of the IBM Watson Health, GHHS Implementations team based in North Carolina. Wes has extensive expertise as a Business Analyst in CÃºram Social Program Management Platform and works closely with Social Program Management customers to design and deliver projects to obtain their business goals and achieve better outcomes for both their employees and citizens. The IBM Watson Health GHHS Implementations team regularly produce and maintain training materials, presentations and technical assets to complement and customize the existing CÃºram Social Program Management product documentation and features for our customers.
Introduction to Rules
CÃºram Express Rules (CER) are at the heart of any Social Program. CER Rules are used in many types of calculations and for displaying results in CÃºram applications. They are commonly used to implement legislation and policies.
In CÃºram Social Programs, typically claimants satisfy certain ‘Rules’ to be deemed eligible for a product. The following are some examples of Rules:
- Is the claimant unemployed?
- Does the claimant meet the age range?
- Is the claimant actively seeking work?
- Are the claimant’s assets below a specific threshold?
- Is the claimant’s income below a specific threshold?
Rules can change as legislation changes. Performing impact analysis on Rules is complex, because information may come from different sources. The following are examples of sources:
- Internal Rule Documentation that contain the rule requirements
- Curam Analysis Documentation Tool (CAD)
- Ruleset XML (developers only)
- Reading the Rule Doc
There are different types of Rules used within Curam SPM, as follows:
- Eligibility Determination Rules â€“ these rules are used to determine a personâ€™s eligibility to for a product or program.
- Verification Rules – these rules are used as part of the process of checking the accuracy of evidence.
- Display Rules â€“ are rules that “sit on top of” the eligibility and entitlement rules, they contain a meaningful interpretation of the results of executing the eligibility and entitlement rules.
- Advisor Rules â€“rule sets that calculate the advice that relates to the pages on which the advice will be displayed.
- Validation Rules â€“ used to define dynamic evidence validations.
CER Rules adhere to a strict structure. A ruleset is a collection of rule classes, typically centered around a specific program or purpose. A rule class is composed of attributes. An attribute is a question within a Rule Class that can be asked to return a value, such as a Boolean, number or text.
Using IBM CÃºram Analysis Documentation Tool (CAD) tool to explore Rules
The IBM CÃºram Analysis Documentation Tool (CAD) tool can be used to helps users perform impact analysis when Rules are changing within a product. It can also be used to provide more contextual information about how the Rule is used within the product. This article will show how the CAD tool can be used to supplement internal documentation when trying to assess impact of a Rules change.
A ruleset is a collection of rule classes, typically centered around a specific program or purpose.
In CAD, when a user selects the â€˜Rule Setsâ€™ link or icon. The user is presented with a full list of all the rule sets within the IBM CÃºram Application. Each ruleset is identifiable by the following information:
- The Name of the Rule set
- The component where the ruleset resides
- The number of rule classes contained within the rule set
- If there is a description on the rule set, it is presented to the user
Users can filter the list of rule sets, by typing in to the text field in the list, see figure 1 for an example, where the list is filtered by the word Gender.
Figure 1: A list of rule sets filtered by the word Gender
Clicking on the name of the ruleset will display high level information about the ruleset. Figure 2 is an example of the information presented to the user.
Figure 2: High level ruleset information
Typically, a ruleset is composed of one or more of rule classes. A rule class is an object that has data, such as a Person, an Income or an Application. The list of all the rule classes is displayed beneath the technical information, see figure 3.
Figure 3: A ruleset containing one class
The key thing to remember about rules, is Rules donâ€™t work in isolation! Rules may take information from other rules, or may consume information from Evidence that is input by a case. The â€˜Links to the rule setâ€™ section contains a list of Evidence or Database table that interact with the rules (figure 4 and figure 5).
Figure 4: An example of evidence used within a rule set
Figure 5: An example of a rule classes that contains the database tables that are populated when a change in evidence occurs.
Rule Classes In Detail
Returning to our PDCValidationRuleset example (figure 4), when you click on the rule class ValidationResult, you are presented with high level information about the rule class, such as (see figure 6):
- The rule class name
- The ruleset containing the rule set, also known as the â€˜Parent rule setâ€™
- The super rule class that the rule class extends
- If available the rule class description
Figure 6: ValidationResult rule class technical information
Beneath the technical information a list of attributes are displayed to the user. As mentioned previously, attributes are the â€˜questionsâ€™ that can be asked when eligibility is being determined.
Clicking on each of the attributes, you will be presented with more detailed information about the rule attribute.
Figure 7: Calculated Attributes in the ValidationResult rule class
Looking at some of the attributes in detail (figure 8), the type refers to the type of value the attribute provide. In this example, the type is BirthAndDeathEvidence.
Figure 8: Birth and Evidence attribute
In the next example, (figure 9) , if you select the attribute effectiveDateAfterDOBValidation, you can see a multiple set of conditions need to be met. In this example, firstly, the attributes must not be null, then the date of birth must be â€˜greater thanâ€™ the effectiveDate. If the effectiveDate is greater than the date of birth, a message is displayed to the user.
Figure 9: An example of an attribute evaluation
The purpose of this document was to show how the CAD tool can be used to analyse Rules changes. We went through all the information that is presented to a user as they view rulesets and rule classes, we gave a high level overview of what is presented and why. If you are tasked with analysing a Rule change, CAD should be your first point of reference to better understand existing application behaviour.
For more information, see the Knowledge Center