Decision Models/Services

OpenRules started in 2003 as a powerful Rule Engine and over years became a popular framework that allows business analysts to represent their business logic in intuitive Excel tables and execute them using a highly efficient Rule Engine.

OpenRules Decision Manager is a decision modeling environment for development of Operational Decision Services for decision-making business applications. Such services are based on Business Decision Models usually created, tested, and maintained by business analysts using mainly Excel (or Google Sheets) and OpenRules graphical Decision Model Explorer. Tested decision models can be deployed on-premise or on-cloud with a simple click. The lifecycle of a Decision Service is shown below:

The following diagram explains how OpenRules Decision Manager helps users to create, deploy, and execute Operational Decision Services:

The development of operational decision services usually goes through 4 major steps presented on the picture above:

Steps . You start will a Problem Description in plain English following by creation of the Business Glossary and Test Cases with examples of inputs and expected results. After several iterations, you gain a good understanding of the business problem and move to the Step 3.

Steps  – . You start adding business logic in the form of rules, decision tables, and/or programming constructs, which with the Glossary and Test cases will comprise your Decision Model. You can use MS Excel or Google Sheets as a table editor to represent business logic in decision tables placed in Excel files distributed between different folders – see examples of business decision models. This is an iterative process: as you implement a new piece of decision logic (e.g. add a new decision table), you execute your model against your test cases to make sure that it works and produces the expected results. Use OpenRules Decision Model Explorer an integrated graphical decision modeling environment that essentially simplifies the creation, testing, and debugging of the decision models.

Usually business analysts implement business logic in Excel tables and execute this logic using the standard Rule Engine.
If some business rules should be automatically discovered based on your historical data, your decision model may also utilize Machine Learning components provided by Rule Learner.
If your model needs to solve optimization sub-problems, you may takes advantage of Rule Solver. Both Rule Learner and Rule Solver are naturally integrated into the Decision Manager and work together with its Rule Engine.

Thus, OpenRules-based Decision Models can cover different types of logic based on expert knowledge (Business Rules), historical data (Machine Learning), or mathematical models (Optimization). Correspondingly, the decision model can utilize off-the-shelf rule engines, rule learners, and constraint or linear solvers.  Based on the requires skills, the steps 1, 2, and 3 can be done by Business Analysts or, if necessary, they can involve software developers to code some parts of the decision model using Java APIs supported by Rule Learner and Rule Solver.

Step . Tested business decision models can be easily integrated in any Java application using a simple Java API, or used on any server like Apache Tomcat and IBM WebSphere, or being deployed on cloud as a decision microservice utilizing any serverless architecture provided by  major cloud vendors such as Amazon, Google, Microsoft, or IBM. Different deployment options are presented on the following diagram and described in more details here.