Developing Custom Decision Modeling Languages with Enhanced DMN

The modern Business Rules and Decision Management Systems help users to move business logic from a code to business rules controlled by subject matter experts (not developers).  In particular, the latest Decision Model and Notation (DMN) standard [1] defines powerful and broadly applicable concepts for decision modeling that allowed experts [2] to call DMN a “decision modeling language”. DMN even includes a friendly enough expression language, FEEL, to express complex relationships between different decision variables. However, DMN is a general purpose “decision modeling language” that naturally stays away from domain-specific decision modeling constructs. In this article I will discuss how to enhance DMN to support specialized decision modeling languages. Continue reading

Decision Models: Finding Alternative and Optimal Decisions

People frequently assume that a good, consistent decision model should produce one and only one decision (solution) for any valid input. However, in real-world applications we frequently deal with situations when a decision model may produce multiple feasible solutions for the same input. And it does not mean that the decision model is incomplete – simply a user may choose the most appropriate solution among all produced decisions. It can be done interactively or by adding more rules. I’ve already provided an example “Monkey Business Analyzed” that describes how to deal with multiple decisions using OpenRules What-If Analyzer.  In this post I will describe another  decision model that also shows how to choose an optimal decision among multiple feasible decisions. Continue reading

bpmNEXT 2016

This year OpenRules will participate in the bpmNEXT 2016 that will take place at Santa Barbara, CA on April 19-21, 2016. This is a very selective conference that does not allow marketing and forces the presenters to do only live demonstrations of specific achievements that have a chance to shape the next generation of Business Process Management software – including intelligent operations, the Internet of Things, case management, business decision management, and goal-directed processes. I will present “Dynamic Decision Models: Activation/Deactivation of Business Rules in Real ­Time” on Apr. 21 at 14:00. Continue reading

OpenRules 6.3.4 Introduces What-If Analyzer of Decision Models

On December 28, 2015 we published a new OpenRules release 6.3.4 that introduces What-If Analyzer, the first tool of this type in the Decision Management domain. Its main purpose is to support what-if analysis of decision models built in accordance with the DMN standard. What-if analysis is the process of changing the business rules that represent business logic to see how those changes will affect the outcome of the decision model. Here is the main view of the What-If Analyzer for the decision model “Make a Good Burger” offered by the DMCommunity.org: Continue reading

Automatically Learned Business Rules: Should We Understand Them?

Question: Should we worry that we’re building systems whose increasingly accurate decisions are based on incomprehensible foundations?

I’ve just posted an article with the same name at the LinkedIn Pulse that addresses this question. It is especially important in the context of rules-based decision making when rules that govern our decisions have been automatically generated using predictive analytics techniques. I shared two examples from OpenRules experience that explain why the automatically generated business rules should be comprehensible. The first one talks about the use of our Rule Learner at IRS. The second example deals with our Rule Compressor.

Don’t Program a System, Educate It!

Modern decision management techniques enable business decisions by supporting a path from data to decisions and actions. Wherever people use stand-alone Business Rules, Complex Event Processing, Predictive Analytics, Optimization systems or their combinations, they prefer to put in charge subject matter experts and not software developers.  Actually, all these systems tend to be declarative and allow customers to feed their systems with externally maintained business knowledge, e.g. historical data and/or already known business rules. Nowadays people in a way want to educate a general purpose system with their domain-specific knowledge avoiding traditional programming. Continue reading

DMN 1.1 Issues: Aggregation

DMN defines “aggregation” in the following way:

“Multiple hits must be aggregated into a single result. DMN 1.0 specifies six aggregation indicators, namely: collect, sum, min, max, average. Optionally, the aggregation indicator may be included in the table. The default is collect.”

Below is a list of my issues with this DMN 1.0 approach. Continue reading

Decision Model “Vehicle Insurance – UServ Product Derby”

As a response to the DMCommunity.org challenge, I will describe an OpenRules-based implementation of the highly popular use case known as “UServ Product Derby”. The use case deals with automobile insurance problems including eligibility and pricing decisions for a hypothetical insurance company “UServ”. Its detailed description can be found here. Our implementation may be considered as another complex-enough example of the DMN approach. Continue reading

Learning Business Rules from Data at RuleML-2014

This year RuleML-2014 will be held in Prague on Aug 18-20. For the first time it will include a special track called “Learning Business Rules from Data”.  As a member of the organizing committee, I posted the proper announcement here. It promises to become a very interesting event when the decision management practitioners meet their academic partners. Continue reading

Can a Decision Model Define Uniqueness of Objects inside a Collection?

This question was asked by Antonio Plais – see the LinkedIn discussion. Several practical variations of this question were mentioned: 1) Define if the same product appears more than once in the same sales order; 2) determine the uniqueness of records in a file to be loaded into a Data Warehouse.  Obviously, the question deals with business rules defined on collections of objects – not the most popular topic among decision modelers. Continue reading

Another DMN Decision Model (executable!)

Today Nick Broom published his own example of a decision model based on his understanding of the current version of the DMN standard. Nick is a business analyst and a well-known decision management practitioner, so his interpretation is very valuable as the standard is oriented to the business analysts (not to programmers). Nick’s example is supposed to make a decision whether an applicant is eligible or ineligible to a credit card. Nick described a simple credit card application process and designed decision requirements diagrams and related decision tables.

Starting to read his post, I decided that it could be helpful to make Nick’s decision model executable and to test if it actually produces the expected results. It took me several hours to do it using mainly Excel and the latest version of OpenRules BDMS.   Continue reading

My LinkedIn Discussions

LinkedIn today is probably the most popular social network for professionals. Looking for one of my old posts, I noticed that it is not so simple to find it and many people have troubles to do it. However, when you click on your name inside any discussion you will receive links to everything you posted but only within one discussion group. Here are LinkedIn discussions that I’ve started in several groups: Continue reading

OpenRules at Decision CAMP 2013

OpenRules is one of the initiators and sponsors of the DecisionCAMP-2013, the
first event for Decision Management practitioners, which will be held in San Jose, CA on Nov 4-6. This event attracted many well-known experts in the business rules and decisions management area – see the agenda. We expect ~250 attendees. OpenRules will participate in the following mini-events: Continue reading

OpenRules in Japan

EWS-2013, Tokyo

Dr. Feldman and Mr. Nakayama, CEO at Intra-Mart

I’ve just returned from my first ever trip to Japan. I am coming back home to the US with very bright impressions of the Japanese culture and people. I was especially impressed by the deep respect and high professionalism with which people in Japan perform their jobs independently of how small or important those jobs are. I deeply appreciate the friendliness and readiness to help from people on the streets of Tokyo and Kyoto that I have not seen for a while.

This visit was organized by our Japanese partner NTT Data Intra-Mart. Continue reading

Solving Rule Conflicts – Part 2

“The Sleep of Reason Produces Monsters”, Francisco Goya

 Defeasible Logic and Business Rules with Probabilities

Modern rules and decisions management systems provide effective mechanisms for development of good decision models. However, building real-world decision models people always face complex issues related to diagnostic and resolution of rule conflicts. Some systems can effectively verify decision model consistency and diagnose rule conflicts. But there are no practically used Business Rules (BR) products that claim that they may automatically resolve rule conflicts.

In the Part 1 of this series I described how end users can represent their rules in single-hit and multi-hit decision tables while avoiding rule conflicts. But is it possible to automatically resolve rule conflicts? I will discuss this problem below. Continue reading

Solving Rule Conflicts – Part 1

Representing Contradictory Rules with Single-Hit and Multi-Hit Decision Tables

Modern rules and decisions management systems provide effective mechanisms for development of good decision models. However, building real-world decision models people always face complex issues related to diagnostic and resolution of rule conflicts. Some systems can effectively verify decision model consistency and diagnose rule conflicts. But there are no practically used Business Rules products that claim that they may automatically resolve rule conflicts (at least I am not aware of them).  As a result, it becomes a responsibility of users to represent rules in such a way that allows them to avoid conflicts. Continue reading

Combining Constraint Solving with Business Rules and Machine Learning – CoCoMiLe 2013

The integration of different decision making techniques finally is finding its home under the roof of the Decision Management movement. I am glad that an integrated Constraint Programming (CP), Business Rules (BR), and Machine Learning (ML) approach is gaining in popularity as well. An interesting workshop “CoCoMiLe 2013 – Continue reading

How to compact large decision tables

A well-known problem with decision tables is that they frequently become too big and too difficult to manage.  It is also well-known that OpenRules utilizes Excel-based decision tables as its major representation mechanism for business rules.  So, I decided to share some methods used by our customers to make large decision tables more compact. Continue reading

Fischer vs. Kasparov vs. Karpov

On a long flight back to the US I had a few hours to kill. So, I decided to implement one of my favorite modeling tests that I used to give to my students and they always enjoyed it. This time I wanted to try it myself with the newest OpenRules Decision Modeling facilities (see Rule Solver).

Virtual Chess Tournament
Three world champions Fischer, Kasparov, and Karpov played in a virtual chess tournament. Each player played 7 games against two other opponents. Each player received 2 points for a victory, 1 for a draw, and 0 for a loss. We know that Kasparov, known as the most aggressive player, won the most games. Karpov, known as the best defensive player, lost the least games. And Fischer, of course, won the tournament. Continue reading

Rule Engines: RETE and Alternatives

The famous RETE algorithm was invented by Dr. Charles Forgy more than 30 years ago and it still remains the foundation for most implementations of inferential rule engines.  Recently Carole-Ann asked the question: why after all these years there were no practical alternatives to RETE? Continue reading

Modeling Decisions for Scheduling and Resource Allocation Problems

“Reality is built in wonderful simplicity”, Eliyahu Goldratt “The Choice

Scheduling and Resource Allocation are traditionally considered as very complex business problems. They are usually out of reach for the most rule engines.  I personally learned how to deal with these complex problems during my real-world consulting practice by applying a great product called “ILOG Scheduler” written by Claude LePape and Jean-Francois Puget 20 years ago. I’ve just googled the product name and got this User Manual that has over 600 pages with a lot of C++ code. I used to teach ILOG Solver/Scheduler courses and will reuse some examples borrowed from them. Continue reading

Different Decision Tables for a Very Simple Use Case

The responses to the RFP of OMG  DMN (Decision Model and Notation) standard are scheduled to arrive in May of 2012. Trying to keep this process as close as possible to the everyday decision management reality, I posted several use cases at the DMN Discussion Group and tried to formulate down-to-earth questions that DMN will hopefully address. Here I want to take almost trivial rules and discuss different implementation options using decision tables. Continue reading

Representing and Solving Rule-Based Decision Models with Constraint Solvers

The latest rules conferences RulesFest-2011, BBC-2011, and RuleML-2011 were really great events in general and for OpenRules in particular. We announced a new constraint-based Rule Engine that is the first alternative to Rete-based implementations of a real inferencial rule engine. Continue reading

About OpenRules Scalability

Being in real-world production environment for many years, OpenRules Engine has a proven record of high efficiency and scalability. Several years ago some of our customers (a major European bank and a large government agency) assigned teams of people to do stress-testing of our product before they decided to use it instead of commercial counter-parts. The results were really good. Continue reading