OpenRules team worked hard to prepare a nice New Year gift for our customers and today I am glad to announce OpenRules Decision Model Explorer! Click HERE to see how it looks.
Yes, it is a Graphical Integrated Decision Modeling Environment that includes automatically built Diagrams (DRDs) for business decision models!
Many popular languages (e.g. Angular or Mustache) use text interpolation to incorporate dynamic string values into the text. OpenRules Decision Manager Release 8.2.1 gives our customers an option to use text interpolation by putting text decision variables in the double curly braces
}}. For example, see how it’s being used in the standard sample project “PatientTherapy”:
Today ProcessMaker and OpenRules announced a new partnership that provides our customers with an integrated business process and decision management solution. The partnership adds high performance decision services created in OpenRules and deployed as AWS Lambdas to business applications built with ProcessMaker. It unlocks a powerful new level of sophistication for process, workflow, and business rules designers around the globe. This webinar demonstrates an implementation of a loan origination process in ProcessMaker that utilizes complex decision services built in OpenRules. Read Press Release.
Traditionally, Business Rule Engines do not communicate with databases directly and expect to receive input and provide output via intermediate objects defined in Java, JSON, or XML. However, our customers frequently prefer to use business-friendly rules defined in Excel instead of separately defined SQL statements. Our new product “Rule DB” does exactly this. In this post I will describe how it works using the MySQL Sample Database. Continue reading
The DMC Challenge Sep-2020 deals with compression of decision tables trying to replace relatively large decision tables with “almost” equivalent but smaller decision tables. It is only natural to apply Machine Learning to this problem as it allows us to automatically discover business rules from the sets of labeled historical data records. So, I decided to use the open source Rule Learner to address this problem. In this post I will describe how I approached this problem with these implementation steps:
- Write a simple generator of data instances with various combinations of known attributes
- Run the existing decision table using OpenRules to produce labeled instances
- Feed the labeled instances to Rule Learner (or SaaS Rule Learner) to automatically discover a new decision table and evaluate its performance.
In this post I will describe how to use just published Rule Learner to solve the DMCommunity Jan-2019 Challenge. Cyber police has these images of Unfriendly and Friendly Robots:
Rule Learner should discover rules that classify any robots as friendly or unfriendly. Continue reading
OpenRules, Inc. was among first BR vendors who introduced the integrated Machine Learning and Business Rules approach back in 2007. Over the years, our Rule Learner was successfully used to discover business rules by analyzing large sets of historical data in different problem domains. One of the first success came in the large IRS project “The integrated use of BR+ML technologies” – read more.
Today we introduced a new version of Rule Learner publicly available as an open source product under the terms of the LGPL (it means no restrictions for commercial use!). You can download it for free from RuleLearner.com. It naturally integrates Machine Learning (ML) and Business Rules (BR) techniques by incorporating ML algorithms into rules-based Decision Models. Continue reading
While DMN-like decision tables are powerful enough to represent business logic for many practical problems, in real-world our customers frequently define new types of decision tables that are specific for their business domains. For example, years ago OpenRules was chosen for a large project that in particular dealt with spatial business rules. Their customers,, suppliers, and operations vary by region, and distance between then affected their decisions. They already used a Geospatial Information System (GIS) in order to explore spatial relationships that leveraged the industry standard Java Topology Suite (JTS) with a powerful Java API.
However, they wanted their business (!) users to natively define and maintain complex spatial rules without becoming experts in specific Java API. This 2014 presentation describes how OpenRules helped this customer to create a Spatial Decision Table template allowing stakeholders with no GIS training to use plain English in familiar Decision Model spreadsheets to define spatially aware business rules without any additional software. Continue reading
On June 30 I will present “Developing Decision Optimization Microservices for Real-World Decision-Making Applications” at DecisionCAMP-2020. Preparing my presentation, I thought about the major points I want to make. Of course, first of all, I want to demonstrate how to develop optimization services, but I also want to stress how the proposed approach helps to bring already great optimization tools into the everyday reality of business application development. Continue reading
Let’s look how the release 8.2.0 enhanced OpenRules testing capabilities by extending tables of the type “DecisionTest” with new columns:
- ActionComment. Here is an example:
(You may click on this table to enlarge)
Traditionally when we ran an OpenRules-based decision model using a script “test.bat”, a user received an execution protocol on the console view, a “black” screen. While it showed all executed rules, it still was difficult for a user to find all changes especially when there are too many rules. The latest release of OpenRules Decision Manager essentially beatifies rules execution protocols and reports showing all rules in a hierarchical order and highlighting the variables which values that were actually changed. Continue reading
Congratulations to our development team and our customers!
OpenRules Decision Manager 8.1.2 is out and it comes with two big good news:
PERFORMANCE UP. Now OpenRules supports a new type of decision tables called “BigTable“. It’s created for decision tables with thousands of rules, and such big tables will be executed 10-100 times faster! The new execution mechanism is based on a self-balancing binary search algorithm and shows a fantastic speed improvement: decision tables with more than 20,000 rules are being evaluated within 1 millisecond! Try it yourself by clicking on this link. It will execute this big decision table deployed as AWS Lambda.
COST DOWN. Our customers deploy OpenRules decision services using multiple cloud-based microservices or smartphone apps that cannot be expensive. We listened and decided to cut run-time license fee 10 times! Now our customers using only one development license may create and deploy hundreds of decision services and still pay a very low cost:
- Development License including Technical Support and one Run-Time license: only $4,995
- Run-Time Licenses for multiple production instances such as AWS Lambda decision microservices or smartphone installations: starting at $500 and going sharply down as the number of licenses increases – see new pricing.
Try new release for free now!
You may find many ways to configure an AWS EC2 Instance and deploy an executable jar-file to this instance. To configure an AWS EC2 Instance you should go through several steps including setting up secured access. In this post we will describe a simplified way how to quickly:
- Launch an AWS EC2 instance
- Deploy an executable JAR with a decision service to this instance
- Test the deployed service remotely. Continue reading
OpenRules business decision models can be deployed as a RESTful web service with a single click effectively utilizing SpringBoot and Maven – read how to do it here. In this post we will describe how you can package a business decision model into an executable JAR-file that can be deployed on the local server and tested from POSTMAN or Java. Continue reading
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
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
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
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.
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
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
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
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.
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.
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
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.
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.
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
Today is exactly 15 years since OpenRules, Inc. was incorporated on Feb. 24, 2003. It’s a quite serious milestone, so I decided to write a few words for this occasion. A year ago, I described a brief history of our company and key factors that made it successful. 2018 was an extremely successful year for OpenRules as well: we improved the product and many major corporations became our new customers. But in this post I want to look to the future and to share some of our upcoming and long term plans. Continue reading
Recently I helped one of our larger customers to build a set of their business decision models. At the end I said that now they can continue to assemble new decision models themselves. Then one of their business analysts said that our decision modeling approach reminds him of LEGO. I believe this is a really good analogy and I will elaborate on it using specific examples.
I’d like to share experience of large OpenRules customers who create and maintain enterprise-level knowledge repositories. Such repositories usually contain two major components: 1. Decisions and Rules 2. Tests
OpenRules already can read and execute decision models represented in the DML XML format. To test new DMN-to-OpenRules capabilities I decided to implement DMCommunity’s June-2017 Challenge using the DMN Modeling tool from Trisotech that allows non-technical people to create DMN-compliant decision models and import them to the DMN XML format. My objective was to create DMN XML for the Loan Origination problem described in the Section 11 of the DMN specification and then execute this DMN XML using OpenRules. Continue reading
DMCommunity.org June-2017 Challenge is looking for the best decision models that implement a well-known Loan Origination problem described in in the Section 11 of the DMN specification. So, I decided to address this challenge using the core DMN constructs implemented in OpenRules. I will describe my solution in the form of dialog between a fictional READER who is assumed to be a business analyst (not a programmer) and the AUTHOR, who represents myself. It is similar to the dialog-sessions described in my recent book “DMN in Action with OpenRules“. While it may look long it doesn’t omit any implementation detail. Besides serving as a good solution for the Challenge, this document describes a good decision modeling practice for OpenRules customers.
DMCommunity.org announced its Challenge “Rebooking Passengers from Cancelled Flights” in Oct-2016 and until now 4 different solutions have been submitted. It is a relatively complex use case for decision modeling. In this post I will describe different implementation approaches for this challenge and will discuss good and not so good DMN constructs used to support the underlying decisioning logic. I hope this post will initiate more discussions which may lead to the future DMN improvements by replacing the existing programming constructs to more business-friendly representations. Continue reading
I consider myself among the initiators and big supporters of the DMN standard, and I do my best to help bringing the standard to the real-world business decision modeling. Naturally, the current release of DMN includes some constructs with which I strongly disagree but I am trying not to criticize DMN too much as the standard itself is not mature enough yet and I hope it will be gradually improved based on the real-world acceptance. Continue reading
When I learned that the famous Prof. Raymond Smullyan passed away this February at the age of 97, I felt grateful to the man whose books and puzzles my friends and I enjoyed reading as young programmers many years ago. Later on we shared them with our children. I wanted somehow to mark this event and decided to buy his book “The Chess Mysteries of Sherlock Holmes” to read on vacation. Ten days ago I started to read the book during my flight from Newark to Jamaica and… haven’t even noticed as we landed. Continue reading
This month I published a new book “DMN in Action with OpenRules” at Amazon. This is a practical guide for people who want to understand how to create and maintain business decision models. The guide is based on the DMN standard and OpenRules. It is oriented to business analysts looking to build operational decision models for their own business environment.
In Dec-2016 DMCommunity.org published a new Challenge called “Loan Approval“. This challenge actually was proposed by myself based on real-world experience with one of our customers (a large bank). The most important point of this challenge was a general architecture that allows to invoke the same business logic based on real-time events coming from external sources. I described how such architecture may look like at this video that demonstrates a decision engine integrated with a PUB/SUB message broker.
However, the business logic itself also may be interesting especially if implemented using the latest DMN approach. So, I decided to do a new implementation that is described below. Everything is defined in Excel tables with zero Java code. Continue reading
“Imagine you had a Why Button handy whenever you encountered some disconnect in day-to-day business operations. Hit the Why Button and presto – answers appear in the form of relevant business rules” – Ron Ross, 2013
The release OpenRules Release 6.4.1 introduces a new add-on called “Why-Analyzer for Decision Modeling” that provides such a Why Button for decision models created in accordance with the DMN standard. Actually it is much more than just a button but rather a graphical interface that allows business analysts to analyze the results produced by their decision models using their own test cases created directly in Excel. See a brief video and try it yourself without any downloads from here. There are several more product improvements described in the release notes. You may download the latest release and try your own decision models with OpenRules Why-Analyzer. Continue reading
One of the largest Japanese telecom company is successfully using OpenRules being integrated with a BPM product produced by our partner Intra-Mart. Last month this customer asked us to help with development of a custom scheduler capable to schedule thousands of cable construction operations subject to various precedence and exclusivity constraints. Continue reading
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  defines powerful and broadly applicable concepts for decision modeling that allowed experts  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
Listening several recent presentations of Pragmatic Dave Thomas (see this and this), I cannot help getting back to the fundamental decision modeling problem: Rules vs. Tacit Knowledge (or Intuition). Continue reading
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
I decided to add the decision model “Monkey Business” to our new What-If Analyzer. It brought several considerations missed by other solutions. In this post I will discuss my implementation and will show how What-If Analyzer helps to do a through analysis of usually unnoticed aspects of business decision modeling. Continue reading
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
This month DMCommunity.org asked to present the best design of the notorious decision tables offered by Prof. Jan Vanthienen. It should implement the following business logic: Continue reading