OpenRules Platform

Platform concepts

Decision Models and Engines

A decision model represents the logic of a business problem in a form that subject-matter experts can understand and a computer can execute.

Decision project

Keep the knowledge and its execution together.

A decision model is normally organized as a standard project folder containing everything needed to understand, verify, and run the decision.

01

Business Glossary

Defines input and output decision variables and organizes them by business concept.

02

Test Cases

Provides representative input values together with the expected output values.

03

Business Rules

Specifies how the model derives its outputs from the available inputs.

04

Project Files

project.properties configures the model, test.bat builds and tests it, and explore.bat opens the graphical interface.

Decision model connected to the OpenRules Rule Engine
Decision model and executable rule engineOpen full size ↗

Decision engines

Combine the engines required by the problem.

The OpenRules platform provides several engines that can work independently or be combined into a problem-specific decision engine.

  • Rule Engine executes rules-based decision models with the built-in OpenRules engine.
  • Rule Learner discovers business rules from historical data.
  • Rule Solver finds multiple feasible decisions and optimizes them against business objectives.

Complete example

Patient Therapy puts every model element into practice.

The Patient Therapy decision model captures medical guidelines that help a doctor select therapy after diagnosing a patient. Its glossary contains the Patient and DoctorVisit concepts; blue cells identify inputs and pink cells identify outputs.

Patient Therapy glossary with Patient and DoctorVisit concepts
Patient Therapy business glossaryOpen full size ↗
Patient Therapy test cases with inputs and expected results
Test cases and expected resultsOpen full size ↗

Business rules

Express each medical decision as a visible table.

The main table coordinates the complete Patient Therapy goal. Supporting decision tables determine medication, dose, and drug-interaction warnings.

Main Determine Patient Therapy decision table
Determine Patient TherapyOpen full size ↗
Recommended Medication decision table
Recommended MedicationOpen full size ↗
Recommended Dose decision table
Recommended DoseOpen full size ↗
Drug Interaction Warning decision table
Drug Interaction WarningOpen full size ↗

Build, test, explain

Run the model and retain the evidence behind its result.

Double-click test.bat. OpenRules resolves the model dependencies, transforms the tables into executable code, and runs every test case through the built-in Rule Engine.

The execution protocol displays the result, while the generated HTML report records which rules ran and explains why.

Patient Therapy test execution protocol
Test execution protocolOpen full size ↗
Patient Therapy HTML rule-execution report
Generated explanation reportOpen full size ↗

Explore and extend

See the model, debug it, and adapt decisions in context.

Run explore.bat to open OpenRules Explorer and view the automatically generated decision diagram. The Graphical Debugger follows execution rule-by-rule.

The Decision Playground lets business specialists add last-minute constraints and compare alternatives when real-time conditions differ from those anticipated by the model.

Larger applications can combine multiple models as well-orchestrated decision services shared by business and development teams.

Patient Therapy decision diagram in OpenRules Explorer
Patient Therapy decision diagramOpen full size ↗

From concept to working model

Explore a complete decision model yourself.

Download the free evaluation or study the ready-to-run examples included with OpenRules.