OpenRules business decision models can be deployed as operational decision services utilizing the Serverless architecture provided by AWS. Deploying your decision models as AWS Lambda functions you don’t even think about servers and pay only for the execution time your services actually consume. Continue reading
Deploying Business Decision Models with OpenRules Decision Manager 8.1.1
OpenRules Decision Manager takes an Excel-based business decision model and converts it into highly efficient Java code. When you make changes to the business model, the code will be automatically re-generated, so we do not expect you to even look at this code. The authors of business decision models will always maintain their original models using mainly Excel.
OpenRules Decision Manager offers several integration and deployment facilities for converting your business decision models to operational decision services on-premise or on-cloud. We want you to be able to go through the deployment process without programming or complex configuration. This process should be easily repeatable as you will need to do it again and again when you modify your original business decision models. So, we tried to simplify the deployment process as much as possible. As our customers started to explore different deployment options, we plan to post several articles that describe these options in more details using the standard examples included into the OpenRules Decision Manager 8.1.1 installation.
OpenRules SaaS Rule Engine
This month OpenRules Decision Manager became the first SaaS Rule Engine available in AWS Marketplace. It gives our customers an opportunity to execute OpenRules-based decision services using a “Pay-As-You-Go” pricing model. You may read the Press Release approved by the AWS Marketplace team. Using your AWS account, you can now subscribe to our AWS SaaS Subscription that allows you to pay a minimal fee for only what you actually use with all charges coming from Amazon AWS Marketplace. Continue reading
Nim Game
DMCommunity’s Jan-2020 challenge “Nim Rules” offers to find a winning strategy for this game: “There is a number of red balls in the row below (it could be 15, 16, or 17 balls). Two players take turns removing balls from the row, but only 1, 2 or 3 balls at a time. The player who removes the last ball loses.”
People play different versions of the Nim game since ancient times. First time I played this game with 15 parrots against a clown at a children’s party when I was 7. Later on during my first university’s year my math professor challenged me to play this game instead of answering my exam questions. Continue reading
OpenRules Release 8.1.0
OpenRules Release 8.1.0 essentially enhances both OpenRules Decision Manager and classic OpenRules BRDMS making them faster and easier to integrate with any existing applications.
OpenRules Decision Manager 8.1.0 along with further improved performance includes the following improvements: Continue reading
Deploying Decision Models as RESTful Web Services and Docker Containers
OpenRules Decision Manager can be deployed a business decision models as a RESTful web service that accepts HTTP requests at your local or remote server and produces with proper responses in the JSON format. As usual, you create and test your decision model in Excel and then simply add the property “spring.boot=On” to the file “project.properties”. Then you only need to double-click on the provide file “runLocalServer.bat” (the same for all models). Continue reading
Our new partner FocusCXM
FocalCXM became our partner. Over the last few years, they have been able to solve complex Decision Modeling problems by using OpenRules Rule and Decision Engines. By integrating Enterprise CRM platforms such as Salesforce, Veeva etc with the OpenRules Engine, they managed to roll out highly compliant loyalty programs and simplify sales and marketing processes in the Life Sciences industry. This partnership will empower companies solve various other use cases related to Compliance, Employee and Customer Experiences.
Regression Testing
OpenRules Decision Manager 8.1.0 supports regression testing to confirm that a recent change has not adversely affected existing features of multiple decision models. Regression testing is done to make sure that new changes should not have side effects on the existing functionalities. It ensures that the old functionality still works once the new changes in decision models are done. Continue reading
Debugging Business Decision Models
OpenRules Decision Manager 8.1.0 includes a special Rule Debugger that allows business users to debug their decision models while they are being executed. The debugger stops execution after executing the first selected rule and a user can analyze the current content of all decision variables to understand why certain rules were executed or skipped. After pushing “Enter” the next selected rule will be executed. A user may continue to push “Enter” until all rules are executed. Continue reading
OpenRules 2019 Highlights
2019 has brought lots of innovations and positive developments for OpenRules and its customers. This post summarizes all the new capabilities and user experiences that we have introduced in 2019. Continue reading
Superfast Performance Confirmed
OpenRules always was among the fastest decision execution engines. Our newest OpenRules Decision Manager was designed to provide super-fast performance for modern enterprise decision-making applications that handle millions of rules-based transactions per day and to naturally support cloud-based microservices. Now we started to receive a very positive feedback from our customers: after switching to the newest OpenRules Decision Manager the same decision models show 6-10 times performance improvement! If you decide to switch as well, you may take advantage of our Migration Services.
Creating numerical Haiku and Tanka poems with JavaSolver
DMCommunity.org Challenge Nov-2019 asks us to build numerical versions of traditional Japanese haiku poems. Here is an example of a traditional Haiku poem:
(5) The sky is so blue.
(7) The sun is so warm up high.
(5) I love the summer.
A haiku poem consists of three-lines written in a 5/7/5 syllable count. Here is an example of a numerical haiku:
77 [seventy seven has 5 syllables]
+ 123 [one hundred twenty three has 6 syllables + 1 syllable for “plus”]
= 200 [two hundred has 3 syllables + 2 syllables for “equals”]
Nathan Brixius proposed a solution using the open-source constraint package written in Python. I really like this problem and decided to ponder this challenge with a free open-sourced JavaSolver. Below is my solution for numerical Haiku and Tanka. Continue reading
Business Decision Modeling with Rule Engines and CP/LP Solvers
There are two major types of decision engines utilized by different Business Rules and Decision Management systems to execute business decision models:
1. Traditional rule engines (RETE-based or Sequential).
2. Constraint-based rule engines Continue reading
Another Solution for DMCommunity Challenge “Recreational Fee”
Problem
The DMCommunity Challenge Apr-2019 “Recreational Fee” is based on the following problem provided by Ron Ross:
A city has created a decision table to determine appropriate usage fees for its recreational facilities based on length of usage and when the usage occurs:
Notes from DecisionCAMP-2019
DecisionCAMP-2019 in beautiful Bolzano on Sep. 17-19 will go down in history as one of the most successful DecisionCAMPs. As usual, it was packed with interesting presentations and even more interesting formal and informal discussions. I’ve written my notes from this memorable event – read them here.
One-Click AWS Lambda Deployment
OpenRules business decision models can be deployed as operational decision services utilizing the Serverless architecture provided by Amazon Web Services (AWS), the most powerful and popular cloud platform in the modern world. When you deploy your decision models as AWS Lambda functions, you don’t even think about servers and pay only for the execution time your services actually consume. Continue reading
Solving the DMC Challenge “CrackTheCode” with JavaSolver
The Sep-2019 DMC Challenge “CrackTheCode” is a simple puzzle. We need to crack a 3 digit code based on these hints:
682 – one number is correct and in the correct position
645 – one number is correct but in the wrong position
206 – two numbers are correct but in the wrong positions
738 – nothing is correct
780 – one number is correct but in the wrong position. Continue reading
Stateful Decisioning and State Machines
Nowadays it’s not enough for decision-making applications to simply execute a complex rules-based transaction, forget about it, and wait for the next one. These applications frequently have to maintain states of the business objects they manage and and based on their states invoke different decision services. Orchestration of the decision services becomes a serious issue but different implementation techniques frequently utilize State machines. In this post we will use the DMCommunity Aug-2019 Challenge to demonstrate how it can be done. Continue reading
Now Business Analysts can Deploy their Business Decision Models on Amazon Cloud

Nowadays rules-based business decision models are usually developed and maintained by business analysts or other subject matter experts (not by software developers). And more and more people want to make their business decision models available from cloud as operational decision services. But is it possible for non-technical people to achieve this objective? There are so many new terms and concepts to learn, that it seems doubtful for business people to handle this task. Continue reading
Decision Manager 8.0.1: AWS Lambda Deployment
Business decision models are usually developed and maintained by business analysts or other subject matter experts (not software developers). In the modern world the authors of these decision models want to make them available from cloud as operational decision services. But how difficult is to achieve this objective? Continue reading
Rules Debugger for OpenRules Business Decision Models
When our customers create business decision models, they frequently want to have an ability to debug their business rules to understand when and why their rules were executed or skipped. We provided them with the Decision Model Analyzer that partially answers these questions but does it after (!) the model has been already executed. We’ve just completed the development of a new OpenRules Rules Debugger that allows a business user to debug her/his decision models while they are being executed. Continue reading
Open-Source BR Vendors Moving to the Serverless World
I published an article “Business Decision Models are moving to Serverless World“. In particular, it says:
Two major open-source products, Red Hat Drools and OpenRules, already announced the availability of their new implementations:
- Red Hat is turning Drools into a first-class serverless component and has introduced Kogito that embraces the Quarkus framework and GraalVM’s for super-fast startup times and low memory footprint;
- OpenRules introduced a brand-new product Decision Manager that executes exactly the same decision models as the classical OpenRules BRDMS, but uses a completely new execution mechanism that doesn’t need Excel-based Rules Repositories in run-time anymore as it converts all rules to Java ahead of time. As a result, decision services also can startup almost immediately, be executed within milliseconds, and have a minimal memory footprint. Link
Decision Manager – Introduction Video (3 mins)
On Aug. 1 we made OpenRules Decision Manager publicly available for the first time – everybody can download and try its free evaluation version. This 3 mins YouTube video provides a very simple introduction to the on-premise version of our new product that now can execute exactly the same decision models as the classic OpenRules BRDMS.
The major advantage of the Decision Manager is the fact that it is well-positioned to be used on cloud utilizing server-based or serverless architectures. It perfectly fits the requirements of the modern microservices and is ready to support decision-making applications which handle the millions of complex rules-based transactions per day when every transaction should be executed within milliseconds. The next upcoming release of OpenRules® Decision Manager will provide a cloud-based UI for analysis, debugging, automatic deployment and execution of decision models as microservices – stay tuned!
Automatic Generation of Java Interfaces for Tested Decision Models
OpenRules Release 8.0.0 adds one more nice feature requested by our customers. Usually business decision models are created by a business person in Excel using powerful OpenRules decision tables. The same people who create the decision models usually create test cases for them using special Datatype and Data tables. After the model is tested, the business person passes the Excel-based model to IT for integration. If their IT uses Java, they need to create Java classes for input and output objects. which are similar to the Datatype tables created by the business person. The release 8.0.0 added an ability to generate such Java classes automatically to provide ready-to-go interfaces for already tested decision models. Continue reading
OpenRules Java API became even Simpler
The latest OpenRules Release 8.0.0 comes with a new, very simple Java API for incorporation of business decision models created by business people in Excel into Java applications. It corresponds to the simple view of a decision model as “a Business Glossary surrounded by Decision Tables that specify decision logic for Goals and Sub-Goals“. OpenRules 8.0.0 explicitly introduced Java concepts “DecisionModel” and “Goal” to support the Goal-Oriented Decision Modeling approach described in this book. Continue reading
OpenRules Decision Manager
OpenRules announced an availability of the new product “Decision Manager” that has been developed specifically for modern enterprises allowing their business analysts to create, deploy, and manage Business Decision Services on cloud, on premise, or even on smartphones. It comes with a completely new execution mechanism that is extremely fast, takes almost no time to start, and essentially reduces the memory footprint. It perfectly fits the requirements of modern containerized decision microservices.
OpenRules also announced the availability of the new release 8.0.0 of its Classic OpenRules BRDMS that includes many new features requested by customers – Release Notes 8.0.0. It is important that both products can efficiently execute the same Business Decision Models created using MS Excel or Google Sheets in accordance with OpenRules Goal-Oriented Decision Modeling approach described in this book.
Vertical and Horizontal Decision Tables
Traditionally, the majority of decision tables list their rules in the top-to-bottom order when different rules are placed in rows. Here is an example of a typical single-hit decision table created in Excel in accordance with the OpenRules format: Continue reading
How to build Decision Microservices with OpenRules, SpringBoot, and Docker
Nowadays, when microservices quickly overcome the legacy style of monolithic applications, it’s only natural to deploy Business Decision Models as Decision Microservices. We’ve just published a new tutorial that in a step-by-step manner explains how to convert OpenRules-based decision models, created and tested by business users, to decision microservices with Spring Boot and then containerize them with Docker. Following the tutorial you will learn how to: Continue reading
Can ML help with Compression of Large Rulesets?
The integrated use of Machine Learning (ML) and Business Rules (BR) is one of the most practical trends in the development of modern decision-making software. OpenRules is involved in this development for more than 10 years starting with our successful ML+BR projects for IRS. Along with a general purpose Rule Learner, we also provide Rule Compressor, that uses ML to compress large decision tables to smaller ones. This recent presentation explains how it works. Continue reading
OpenRules at AWS
We a
re aggressively making OpenRules-based services available from cloud environments such as Amazon EC2. In particular, we’ve just re-deployed our Decision Model Analyzer from a 3rd party remote Tomcat to Amazon. It was just a very simple reconfiguration, but the effect is really positive: the Analyzer is now much faster and much more reliable. You may try it yourself without any registration or fee: simply click on the button on the right.
The source code of the Analyzer is included in the OpenRules standard release and can be considered as an example of how to deploy OpenRules web applications created using OpenRules Dialog to cloud. Another example is the game “Nim” that you may play now from the cloud by clicking on the image below: Continue reading
Java Solver: Modeling and Solving Optimization Problems
Java Solver is an open source product that provides a minimalistic, simple-to-use Java API for modeling and solving optimization problems. It’s freely available from JavaSolver.com. Download the product, try examples, and use it for your decision optimization problems. Continue reading
Decision Microservices with Spring Framework and OpenRules
OpenRules Release 7.0.1 provides a sampling and detailed tutorial of how to add an OpenRules-based service to the popular Spring framework. The new tutorial “Developing Decision Microservices with Spring Boot and OpenRules” in a step-by-step manner explains how to convert OpenRules-based decision projects into Decision Microservices and to deploy them on any server or a cloud environment supported by Spring. Read it and try to run the demo microservice “GreetingService” by downloading the new workspace called “openrules.spring” now included in the evaluation version.
Integrated Use of Rule Engines and Constraint/Linear Solvers
Operational business problems can be defined by a set of decision variables and a set of rules that specify relationships between these variables – see the formal definition. This definition considers a decision as a solution of such a problem, but it doesn’t assume anything about ‘HOW’ how decisions will be produced. It means decisions can be found by applying any rule engine, a DMN engine, a constraint or MIP solver, a custom piece of software written in any programming language, a manually provided expert’s decision, or their various combinations. Continue reading
Building Decision Models for DMCommunity.org Challenge “Balanced Assignment”
DMCommunity Sep-2018 Challenge “Balanced Assignment” gives an example of a complex business problem with a serious optimization component. This problem deals with the assignment of people to different project groups. Usually, such problems require deep knowledge of optimization techniques. My interest was to build a decision model for this problem and to investigate what can be done by business people and where the involvement of optimization experts is necessary. So, I attempted to use a business-friendly approach to represent and to solve this complex problem. It was not a simple journey, and this article describes what I did successfully and where I failed. Link
Decision Model for DMCommunity Challenge “Recreational Fee”
The latest DMCommunity.org Challenge “Recreational Fee” is very simple, but I still wanted to show how to create the proper decision model using the OpenRules goal-oriented approach. The implementations is described in this PDF document.
A Formal Definition of Operational Business Decision
Dr. Bob Moore in his DMCommunity.org post “What is a ‘Decision’?” considers different definitions of a “Business Decision” and “Business Decision Logic”, which Bob, Ron Ross, and I have recently been discussing in the context of the March DMC Challenge. Below I will share my point of view.
First of all, it’s important to stress that we are talking not about any ‘decision’ but ‘Operational Business Decision’ which provides a solution for an operational business problem. The majority of such problems can be considered as a special case of the classical Constraint Satisfaction Problem (CSP) defined in the famous book by S.Russell and P.Norvig “Artificial Intelligence: a Modern Approach” [5]. So, I simply applied the Russell/Norvig’s definition to our business problem. Continue reading
A New Book “Goal-Oriented Decision Modeling with OpenRules”
In February-2019 I published a new book “Goal-Oriented Decision Modeling with OpenRules” available from Amazon. It explains the goal-oriented approach to business decision modeling introduced by OpenRules in 2018. The book is a practical guide that explains how to create and maintain operational business decision models in a step-by-step easy to understand style. The guide consists of a series of dialog-sessions in which an AUTHOR explains major decision modeling concepts and methods to an inquisitive READER who asks questions and implements the concepts. You will quickly learn how to represent complex decision logic and end up with a deep understanding of practical decision modeling techniques. The book contains only 150 pages, and you may start developing your own decision models after reading first 1-2 chapters.
Using OpenRules with RESTful Web Services
Building and Using Domain-Specific Libraries of Decision Models
Our customers frequently build not one but multiple decision models for their business domains like property and casualty insurance, loan origination, medical guidelines, etc. After building several decision models, they already have a quite rich glossary and various decision tables that essentially cover their business domain. So, it gives them a good foundation to build a library of relatively small decision models which can be used to assemble more complex decision models. Sometimes they even add domain-specific decision tables and supporting Java classes. This PDF document uses well-known loan origination problems (described in the Chapter 11 of the DMN specification) to explain how to build and utilize a library of decision models. Link
My New Year Letter to OpenRules Customers
Dear Customers,
I
’m Jacob Feldman, the CTO of OpenRules, Inc. I wanted to reach out to wish you a Happy New Year and thank you for your ongoing support of OpenRules. 2018 was a very successful year for OpenRules. We essentially advanced our decision engine to support a new decision modeling approach. We also received the Business Rules Excellence Award. For those of you who have already experienced the latest OpenRules Release 7.0.0, I hope you are seeing the benefits of the work we did during the last few years to improve the OpenRules robustness, reliability and simplicity of use. Continue reading
Which changes we may expect in 2019
I was asked by BPM.com to share my thoughts of what to expect in 2019. Digital Decisioning and DMN will continue to play an essential role in BPM. I can see two major trends in this development:
- Simplification. Representation of decision logic within business processes will be de-facto standardized using mainly simple DMN concepts such as decision tables and avoiding complex programming concepts. The simplified approaches such as “Goal-Oriented Decision Modeling” supported by OpenRules will continue to prevail in development of decision models incorporated into real-world business process models.
- Addressing Complex Decision Optimization Problems. So far, human decision modelers were forced to describe exactly HOW to find a decision by handling all possible combinations of business factors using business rules with multiple exceptions on top of exceptions. More powerful decision engines will allow decision modelers to concentrate on WHAT instead of HOW and will automatically determine multiple feasible decisions and select the optimal decision.
Migrating to OpenRules
OpenRules was introduced to general public as an open source product 15 years ago, and over these years it has become one of the most popular business rules and decision management systems. Every day OpenRules helps customers worldwide handle millions of transactions in real-world production environments for large corporations, government agencies, hospitals, and online businesses – see the list of selected customers. In 2018, along with the Business Rules Excellence Award, we received an overwhelming number of requests from organizations wanting to migrate their existing rules-based systems to OpenRules. This growing interest can be explained by this quote from Forrester Research: “OpenRules have the most-aggressive approaches to business-expert authoring and typically requires less developer support than IBM ODM, FICO Blaze Advisor, and Red Hat Drools“.
So, staring January-2019 we are essentially expanding our technical support and consulting services to help our customers move to OpenRules faster and provide them with superior support. On December 31, 2018 we announced new OpenRules Migration Services – click here to learn how they work.
Model-based Optimal Solutions for Flight Rebooking Challenge
During the closing discussion at the DecisionCAMP-2018, I promoted a new “model-based” approach to decision modeling that contrary to the commonly used “method-based” approach allows a human decision modeler to concentrate on “WHAT” instead of “HOW”. This approach gives more power to decision modelers allowing a decision engine to come up not just with one of many possible decisions but to find the optimal decision. I wanted to demonstrate this power using a more complex business problem and to do it before the end of this year. So, I decided to apply the model-based approach to the problem “Rebooking Passengers from Cancelled Flights” that is the most challengeable problem among multiple DMCommunity.org Challenges. Continue reading
Model-based Solutions for Advanced Vacation Days Challenge
I provided two solutions for DMCommunity.org Challenge “Vacation Days Advanced”. So far, all decision models submitted as solutions for the old Jan-2016 Challenge and the new challenge were “method-based” meaning they describe exactly how to assign extra days while avoiding possible conflicts. I tried to apply a new “model-based” approach that concentrates on “what” instead of “how” and finds not just one of many possible solutions but the optimal one. The first decision model consists of clearly separated two parts: 1) Business Part presented in Excel decision tables; 2) Technical Part presented in Java using the JSR-331 standard. The second decision model is an attempt to present both parts completely in DMN-like decision tables using Excel only (the supporting Java code is hidden in new Excel templates). You may analyze both solutions here. I’d appreciate comments and suggestions for improvement.
“Model-based” vs. “Method-based” Approaches to Decision Modeling
In Aug-2018 Prof. Robert Fourer gave a tutorial “Model-based Optimization“, in which he compares two essentially different approaches to modeling optimization problem: “model-based” vs. “method-based”. He is using a relatively complex “Balanced Assignment” problem to demonstrate his points. While Fourer’s tutorial deals with optimization, I believe the same arguments are directly related to Decision Modeling that so far mainly remains method-based. During DecisionCAMP-2018 we had interesting (and sometimes hot) discussions about these two approaches and in my closing remarks I described the major differences between them as follows: Continue reading
Winning 2018 Business Rules Excellence Award
On October 16 Business Rules Excellence Awards (BREA) announced the winners of the 2018 Awards. Congratulations to the OpenRules’s customer, a major California bank, who became a winner! Here is the brief from the BREA’s presentation:
After successfully putting a new OpenRules-based system in production, the bank extended the use of OpenRules to another mission-critical application related to risk management. Below you can read the description of this OpenRules success story. Continue reading
Notes from DecisionCAMP-2018
This year DecisionCAMP was held in Luxembourg Sep 17-19 as a part of the Logic for AI Summit. It became an important event that attracted experts and practitioners in the business decision management from 14 countries. We had 54 official registrations and sometimes even more people were present in the auditorium. The representatives from almost all major BR&DM vendors and many well-known experts attended the event. As the chair of the event, I wrote the Notes from DecisionCAMP-2018 published at the DMCommunity.org blog.
OpenRules customer selected as worldwide Awards Finalist
A major California bank, facing looming regulatory deadlines, needed to develop a highly dynamic web application to support the bank’s complex customer account management processes. The integrated use of OpenRules’ s rule and rendering engines became the foundation for the successful and quick implementation. OpenRules nominated this real-world application to the first annual Business Rules Excellence Awards (BREA). This success story was selected as a worldwide Finalist in the 2018 Business Rules Excellence Awards. This is a significant achievement for the Bank and OpenRules. The announcement of winning entries will take place on October 16.
OpenRules Presentations at DecisionCAMP and LuxLogAI-2018
OpenRules was well presented at the major technical business decision management event DecisionCAMP-2018. Here are the presentations directly related to OpenRules:
- Goal-Oriented Business Decision Modeling, Jacob Feldman (OpenRules)
- Automatic judgment of decision authority using OpenRules, Yoshihito Nakayama (Intra-Mart)
- Decision Modeling at AXA CH, Wilfried Kurth (AXA CH)
I also published a paper “Building and Analyzing Goal-Oriented Decision Models” at the Proceedings of the RuleML+RR 2018 Challenge – it explains our goal-oriented approach to decision modeling using a Credit Card Application decision model. In my closing notes I tried to demonstrate how a smarter decision engine can simplify decision modeling using concrete examples from DMCommunity.org challenges. After considering different decision modeling approaches, we will add these capabilities to standard OpenRules features.
DMCommunity Challenge July-2018 “Zoo, Buses, and Kids”
The July’s challenge “Zoo, Buses, and Kids” deals with a very simple optimization problem:
“300 kids need to travel to the London zoo. The school may rent 40 seats and 30 seats buses for 500£ and 400£. How many buses of each to minimize cost?”
Naturally, a constraint solver nicely and easily solves this and more complex constraint satisfaction problems as shown in Philippe Laborie’s solution. When today I saw a pure SQL solution provided by Damir Sudarevic, I thought that it’s time to model this problem as a business decision model. It would not be as compact as provided solutions, but it should be oriented to business users. Continue reading




