Carole-Ann opened RulesFest 2011 with a presentation focusing on one of the most vexing aspects of business rules management – the effective elicitation of rules on an on-going basis throughout the life cycle of decisions.
This is an issue that is dear to my heart. I got my initial introduction to AI through the design of a system to help engineers diagnose problems in the then new generation of ECUs in vehicles. While the technologies to execute rules in forward and backward chaining were already well understood, capturing the rules in an effective way was not. We went through a number a iterations where we practitioners thought we had the rules well captured, only to discover that we had mis-communicated with the experts a number of times. A very frustrating experience.
The BRMS world brought the management of rules under control. The technologies involved do allow the control of the lifecycle of decisions. Methodologies have been created to help capture and structure the rules to be managed. But both technology and methodology fall short of addressing the effective elicitation of the rules from experts.
Carole-Ann quotes Peter Norvig’s explanation for the failure of Expert Systems: “This approach turned out to be fragile, for several reasons. First, the supply of experts is sparse, and interviewing them is time-consuming. Second, sometimes they are expert at their craft but not expert at explaining how they do it.” This is the core of the problem – experts are not easy to identify, not easy to access, not good at expressing what they know, and, I should add, do not necessarily hold the best knowledge about the issues they are being interviewed for.
Carole-Ann takes a parallel with the success of Agile approaches in the SDLC – essentially stating that what the business rules world needs is refocusing the knowledge elicitation activities around the same core as what Agile gravitates around: clear and measurable objectives, constantly re-evaluated, always communicated. Carole-Ann’s view is that the same approach yields effective results for knowledge elicitation.
She takes the principle to the extreme. Let the experts do the work – identify the use cases in the formalism they know (mostly forms), identify the decisions to translate to rules in terms of interactions and elaborations directly in the form: marking what the conclusion is, and highlight and annotate on the support for the use cases the reasons for the decision made.
Through this process, what gets built is a catalog of rules, calculations, business terms – but one that is directly supported by a set of explicit use cases the experts have created and are deeply familiar with. The result is less risk of mis-communication.
Another benefit is this approach is the fact that it’s easier to extract the “right” set of rules by harvesting the rules through use cases that are specific to given business goals.
Like the Agile approach for SDLC, the idea is to use this approach in short iterations with clear and measurable objectives, and progressively capture and maintain the business rules in conjunction with the use cases the experts use to express them.
Carole-Ann goes one step further, and suggests that the same approach can be used to mine the business rules which are deeply embedded in systems where they are not externalized – for example, large COBOL-based business applications.
Carole-Ann’s presentation sparked a number of questions:
- Combination of this approach with the rest of the Agile approach for software
- How do the rules extracted this way get verified?
- Is this approach different and better from what used to be done in the Expert Systems world?
- How do ontology management and semantic approaches fit with this approach?
Learn more about Decision management and Sparkling Logic’s SMARTS™ Data-Powered Decision Manager