Release Notes 6.3.4 (Dec-2015)

OpenRules® Release 6.3.4 introduces a new add-on called "What-If Analyzer" that supports real-time what-if analysis of decision models by activating/deactivation business rules. A user may immediately see the changes in the affected decision variables and decision outcomes. It allows a user to find multiple and optimal solutions.

The Release 6.3.4 also allows a user to turn On/Off different rule versions inside the same decision tables. To support calculation with a high degree of precision we now provide support for Big Decimals. The Release 6.3.4 fixes some rear bugs and comes with sample projects that demonstrate new features.

Introduction of What-If Analyzer

What-If Analyzer is a new OpenRules® Add-On built on the top of Rule Solver. Its main purpose is to support what-if analysis of decision models developed in accordance with the DMN standard. What-If Analyzer allows converting traditional decision models into highly dynamic models by giving a user an ability to activate/deactivate/replace some rules and right away to see all possible decision outcomes. Here is a view of the analyzer for a simple arithmetic decision model:


Doing what-if analysis, decision modelers have an ability to find and resolve conflicts among business rules defined inside the same or different decision tables. Comparing outcomes of the decision model for various combinations of business rules allows business analyst to treat different instances of the same business problems in the best possible way.

Usually decision models specify only one solution called decision outcome. Deactivation some rules, allows a user to relax their decision model, and ask What-If Analyzer to show multiple feasible solutions. Experimenting with these solutions by activating/deactivating the rules, a user has an opportunity to choose the most appropriate solution.

If a user specifies an optimization objective, s/he may ask the What-If Analyzer to find an optimal solution that minimizes or maximize this objective. The What-If Analyzer is described here and can be tried on a remote server or to be download and installed locally.


Ability of Turn Rules On/Off Inside Decision Tables

We added a special column of the type "OnOff" to the standard decision table templates. It allows you to keep different versions of rules inside the same decision table. If you want a rule to be ignored during the execution, you may turn it off by simply putting the flag "Off" in front of the rule. Here is an example:

This feature can be effectively used for selection of the most appropriate versions of the rules using the What-If Analyzer.

Support for Big Decimals

Starting with this release OpenRules will support a new type of decision variable "BigDecimal". It can be used inside OpenRules formulas, macros, and expressions. It allows a user to deal with calculations that require a high degree of precision (much higher than regular real numbers), such as when dealing with currency conversion, taxes or even high accuracy mathematical calculation.

We introduced a new macro $G{variable name} where "G" stands for "Giant" or "BIG". So, now a user may define decision variables, say Cost and Rate, using the standard Java type BigDecimal and to use them in formulas inside decision table cells like in the following example:

                         ::= $G{Cost}.divide($G{Rate}).multiply(G{15.75}) 

Here the operators "divide" and "multiply" are standard BigDecimal methods and $G{15.75} demonstrates how to represent regular integer or real numbers as BigDecimals. See more details in the updated User Manual p.23 and in a new sample project DecisionBigDecimal.


Bug Fixed

We fixed a rarely occurred bug related to the inclusion of bounds for the double intervals like (10000000000;20000000000) for numbers larger than 10e8.


New Sample Decision Projects

We added several new sample decision projects:

  • DecisionBigDecimal - demonstrates the use of BigDecimals

  • DecisionBurgerRecipe - implements the Challenge June-2015

  • DecisionUniqueness - implements the Challenge August-2015

Download the latest complete OpenRules® release 6.3.4 from here.

If you have any questions, comments or suggestions, please post them at the Google Discussion Group or send them directly to