Declarative vs Procedural Decision Modeling
The ultimate objective of Business Decision Modeling can be described as follows:
A business analyst (subject matter expert) defines a business problem, and a smart decision engine solves the problem by finding the best possible decision.
Declarative decision modeling assumes that a business user specifies WHAT TO DO and a decision engine figures out HOW TO DO it. This is quite opposite to the Procedural approach frequently used in traditional programming.
As a community of Business Rules and Decision Management vendors and practitioners over the last 15 years we made dramatic progress in this direction. But, are we happy with where we are today? Do our rule and decision engines are smart enough or they still ask too much from our business users? These questions came up several times during DecisionCAMP-2022 which is a part of the larger event symbolically called Declarative AI.
Recommended by LinkedIn
For example, in my presentation I demonstrated good, bad, and ugly solutions for a real-world problem. But even my “good enough” solution forced a business user to define several nested loops. OK, OpenRules allowed me to present those loops in a nice table format, but it still doesn’t sit well with me. So, I asked the question: Was it really necessary to use these loops? By using similar decision modeling constructs (many of which are included in the DMN standard) we force our users to procedurally specify HOW to find a decision. Contrary to our initial objective.
During the DecisionCAMP’s expert panel, I raised the question: “Are our engines smart enough?” You may watch this discussion and make your judgement about the answers. In general, the experts believe that today we still have plenty of low-hanging fruits for our “smart enough” decision engines. After these discussions I decided that it is not enough to raise questions or just talk about the future of decision engines. I need to demonstrate their potential capabilities using concrete examples. So, you may read my new post below in which I described several examples and possible approaches to creation of smarter decision engines for declarative decision modeling.
https://openrules.wordpress.com/2022/10/05/decision-modeling-declarative-vs-procedural/