Open Your Business Rules!
Rules-based
Operational Decision Services
Release Notes 7.0.0
OpenRules Release 7.0.0 is a major release
that essentially simplifies and at the same time enhances OpenRules decision
modeling capabilities. Now OpenRules-based decision models
are capable of recognizing its own internal structure,
discovering and publishing all supporting business goals, and
finally they can automatically
calculate their execution paths. The following videos
explain how to build and test decision models using
OpenRules-7:
-
Building and Executing Decision Models with OpenRules-7
-
Goal-Oriented
Business Decision Modeling with OpenRules.
- Automatic Discovery of Decision Execution Path
- Support for Goal-Oriented Decision Modeling
- New Graphical Decision Model Analyzer
- A redesigned Set of Sample Decision Models
Taking Simplicity Further
OpenRules-7
is making its
software even more user-friendly without losing any of the
sophistication of the already proven decision modeling technology.
You don't have anymore to define execution sequence of your
decision tables using a table "Decision". Now it is
sufficient
for a decision model author to define only Glossary
and Decision Tables
that specify business logic for all unknown decision
variables. OpenRules engine will automatically figure out
the execution order to automatically build and execute the
decision models. Along with traditional single-hit and
multi-hit decision tables, OpenRules will correctly build an
execution path for those decision tables that deal with
collections, including iterations with unlimited embedding
levels.
Goal-Oriented
Decision Modeling
OpenRules-7
supports a goal-oriented approach to decision modeling. This
approach aims to creation of complex decision models
that cover certain business domains and capable to
reach not just one but multiple business goals by providing
answers to various questions in terms of automatically
calculated decision variables. Such decision models can be
designed by defining hierarchies of business goals and subgoals with relationships between them described in
business-friendly decision tables. Without asking a human decision modeler to
specify knowledge and information requirements, these models
are able to automatically calculate an execution path
within the decision model that leads to any business goal
supported by the decision model and selected by a user.
New Graphical Decision Model Analyzer
OpenRules-7 includes a new “Decision
Model Analyzer”, a stand-alone web application
built on top of OpenRules and
freely available online from
here. Its main purpose is to
allow a business user to analyze different decision models
to better understand why certain decisions were made.
The Analyzer comes with a collection of predefined decision
models and allows business users to add, execute, and
analyze their own decision models. The Analyzer also can be
downloaded with all sources and easily customized. Now our potential
customers can do serious evaluation of OpenRules capabilities
without any downloads.
Redesigned Library
of
Decision Models
Release 7.0.0 comes with a newly redesigned library of
sample decision models called "openrules.models".
A typical decision model project such as "Hello" now has the
following structure:
The file “DecisionModel.xls” is considered as an entry
point to a decision model. It usually contains the
high-level description of the decision model (e.g. optional
DMN-based decision requirements diagrams) and
the “Environment” table that describes the internal
structure of the decision model including references to all
included files, standard template from "openrules.config",
and possible related Java packages. The file “Rules.xls”
contains decision tables, the file “Glossary.xls” contains
the glossary, and the file “Test.xls” contains test cases.
There is a new batch-file “built.bat”:
When you double-click on this file, OpenRules will:
1) analyze the decision model whose Environment table is
defined in the INPUT FILE (rules/DecisionModel.xls)
2) define
an execution path for the specified GOAL ("Hello Statement")
and all its subgoals
3) save the generated tables in the
OUTPUT FILE (rules/Goals.xls).
The file "Goals.xls" will
contain a generated table "DecisionHelloStatement" of the
type "Decision" that specifies the calculated execution
order. The name of this table
is composed using the word "Decision" and the goal with
all spaces being omitted. In previous versions, this table
had to be created manually. As before, you may
execute the decision model by double-click on "run.bat" that
still looks as in previous versions:
Of course, you still may create the file "Goals.xls"
manually. If y
set
DECISION_NAME="Hello Statement"
In this case "run.bat"
will create the execution path on the fly (without saving it
in an xls-file) and will execute the model. It can be useful
during testing, but of course it is better to generate "Goals.xls"
ahead of time before going to production.
As always,
it's better to keep your test cases in a separate file "Test.xls"
not to mix them with the production environment. The
Environment table inside "Test.xls" may refer to "Goals.xls"
or directly to "DecisionModel.xls".
Additional Capabilities
Handling Different Date Formats
Previous OpenRules versions assumed that Date variables are
presented only in the standard format specific for a
particular country (locale). For example, the standard US
date formats are: "MM/dd/yyyy" and "EEE
MMM dd HH:mm:ss zzz yyyy".
Now we also support "MM/dd/yy HH:mm" and "yyyy-MM-dd" formats.
Adding Breaks
to DecisionIterate
We've added an
advanced decision table of the type
DecisionIterateWithBreak that allows you to break
your iteration process when certain conditions are achieved.
Here is an example of the proper rules:
This decision table will iterate through
the list of department's "Employees" applying to each
employee the rules "EvaluateOneEmployee":
The iteration process will stop when the boolean decision
variable "Department Has High-Paid Employees" is TRUE.
Old
Deprecated Excel Templates Have Been Removed
If you prefer to
restore the deprecated method, you may remove an empty line
between the first and the second "include" in the file "openrules.config/DecisionTemplates.xls" to make the Environment
table to look as below:
Advanced DecisionBook
API
The Java API "DecisionBook" now includes an ability to
generate tables of the type "Decision" like those in the
file "Goals.xls" described above.
Bugs Fixed
- Fixed an
error in the operator "Are" for non-string arrays or lists
- Fixed an error in the method Dates.months(date1, date2)
Download the latest complete OpenRules release 7.0.0 from here.
If you have any questions, comments or suggestions, please post them at the Google Discussion Group or send them directly to support@openrules.com.