Task: Develop Rules
This task is about developing each rule in the rule project.
Disciplines: Rule Authoring
Relationships
RolesPrimary Performer: Additional Performers:
InputsMandatory: Optional:
  • None
Outputs
Main Description

Programming using rule forces to know how a rule engine is working. This is not a complicated skill, but the usage of the concepts of asserting, retracting fact and modifying fact are important to know. It is recommended to read what is a rule engine to get those concepts.


Steps
Develop Business Rules
Using template or not, the rule writer write the rule as described during the rule discovery and analysis.
Develop Decision Tables
See also decision table
Develop Decision Tree
Develop Technical Rules
Technical rules are not exposed to the business user, but are needed for rule execution efficiency. Part of this categories are rules that loop on a collection and assert all the object in the working memory. Technical rules leverage the full power of the rule language and the programming language
Develop external helper functions
To improve performance, or accessibility or to simplify rule writing, it may make sense to implement some reusable logic in helper classes and methods instead of rules. Example of such methods are logger of trace, or sorting policies, or delegate the call to more complex reusable services.