I recently spoke at the DREAM event in the Netherlands – the Dutch Requirements Engineering and Management event. This was a great event, focused on requirements engineering and I spoke on “Simpler, smarter and more agile: Modeling decision requirements to simplify processes and effectively apply business rules.” Here’s the gist of the presentation
Business rules are a powerful technology you can use to personalize experiences, detect fraud, create loyalty, target cross-sells and much more. Managing the business rules that underpin your decisions is critical but hard to do as they are often documented only in policies, regulations or code that are had to read and update. A business rules management system gives you the transparency and agility you need to effectively manage the rules of your business.
Many organizations, most, are applying business rules in the context of business processes. Sometimes they under-connect their rules to these processes, creating a “big bucket” of business rules off to one side. Sometimes they over-connect them, smearing the rules throughout the process. What works is to identify the decisions that must be made within the process and then use business rules to effectively manage these decisions separate from, but linked to, the process. This creates processes that are simpler, smarter and more agile.
When developing requirements for these decisions, however, none of our existing techniques work all that well. User stories and process models might identify the need for decisions but rarely describe them fully. Requirements lists and architecture models might show that a decision is required but similarly won’t document how those decisions should be made. Simply documenting business rules might reveal the decisions they support but is both inefficient at doing so and likely to miss critical elements. To effectively manage decisions using business rules the best approach is to model those decision requirements.
For this there is a new, emerging standard – the Decision Model and Notation standard. This allows you to model the information requirements of a decision to show what input data you need and the knowledge requirements to show what sources of rules will drive your decision making. It will also let you decompose and specify precisely how you want to make the decision, allowing you to draw effective automation boundaries and manage the rule capture and implementation process.
I wrapped up with four concrete pieces of advice:
- Models Processes AND Decisions
- Find the decisions that matter
- Model their requirements
- Decisions first, rules second