I am working on a new book – Available now! Real-World Decision Modeling with DMN – with Jan Purchase and he recently posted another great post – How DMN Allows Business Rules to Scale. While decision modeling with DMN is not JUST about writing business rules (as I noted earlier), this is a great use case for it. Jan does a nice job outlining why it can be hard to scale business rules projects and how it gets especially hard when you start thinking about how to structure them.
I would add a couple of things:
- We have found that the many:many relationship between process tasks and business rules is best managed using a decision model. While simply grouping rules into decision tables or rulesets helps with simple decisions, complex ones can end up smeared across multiple tasks if you are not careful. Structuring the decision explicitly using a decision model really helps.
- When doing decision models we regularly identify rules and facts (information) that are not in the end needed. The SMEs say they need this piece of information to make a decision or tell you that such and such is a rule. However building a decision model forces real choices and we often find that the way they REALLY make the decision does not use that information and the rule, while potentially true in the general case, is not relevant to the specific project at hand. The decision model acts as a lens, focusing you on what you need to know to get something done – a decision to be made.
- Decision models don’t assume business rules are the objective, allowing you to build them even if you are not sure you can/will document the business rules. As I said in this post on reasons to model decisions, there are many reasons to model decisions. This allows you to start with a decision model without having to know where you are going to end up.
Decision modeling is a powerful tool and one you should be considering, especially if you are working in business rules.