📐Business rules definitely are the very core foundation for modeling an organization's domain knowledge. Business rules are criteria used to (a) guide or conduct actions, (b) shape judgments and behaviors and (c) make decisions. As Ronald Ross says, it creates order from the disorder.
Business Rules Management Systems (BRMS) are a traditional way of managing rules, and they include many capabilities to model, test, automate, and deploy business rules.
🌦️This all sounds happy and sunny, right? Well, until it is not! The approach they generally utilize is to focus on data fields and entities and start writing rule expressions on the data fields. Then, users try to group them into sets (e.g., rulesets) and then group rulesets into applications and flows to satisfy a business scenario in operation, i.e., business decisions. This approach is all bottom-up; it might be fine if you have a few rules.
🪣However, the problem arises as you scale across multiple processes, scenarios, use cases teams, etc. There will be too many rules, they have conflicts, they have internal dependencies. Finding the usages is difficult; managing them requires grouping with tags and labels. Eventually, you reach a breaking point where it is very impractical to manage them. At this inflation point, you don't care whether they exist; you just add a new one when needed.
💢The problem starts because the focus is on the management of business rules by focusing on business rules, and they are very granular. This approach will not cut it if we want to create an order.
🤔What's the alternative? YES! You guessed it right, the Decision-Centric Approach®.
The #decisioncentric approach is a top-down approach. Rather than starting with fields, entities, and the rule's expression. You start by modeling business decisions:
– Choose a business decision in a particular business scenario
– Decompose it into smaller decision units
– Identify the relationship and dependencies between them
✨Now, drill down to each individual decision unit and create specific business rules for that particular decision unit. No rules tagging, labeling, or grouping. The decision units that are part of the holistic business decision view are explicitly your categories and groups for the business rules.
🚀Best of all:
– You do not focus too early on too much details
– No extra and redundant tagging, grouping, or labeling is needed
– Decision units are reusable and can define metrics
– Decision units can be tested and deployed independently (modular design)
– Decision units can be shared across multiple decision graphs (business decisions)
– Decision units can implement multiple types of rules modeling techniques such as Decision Table, Natural Language, Tree, DSL, and so on
– Decision units can nest other Decision Graph or smaller Decision units
Posted here.
Published April 27th, 2024 at 07:30 am

