Transparent decision services and rule execution

By using transparent decision services, you can call a ruleset directly through a web service.

A transparent decision service is technically a web service that uses JMX MBeans to implement management capabilities. A transparent decision service drives rule execution. With transparent decision services, users access Rule Execution Server through a web service rather than directly through HTTP and XML data formats (SOAP).

A transparent decision service is reusable, modeled by business analysts, maintained by business teams, and managed by IT departments.

To implement transparent decision services, you separate the key decision-making activity and make it a stand-alone service that can be accessed by other services. With this approach, business rules are stored in a repository external to the application.

The JMX model

When another process or application must make a decision, it accesses the transparent decision service and specifies which ruleset is to be executed. Then, a rule engine executes the ruleset and returns the appropriate decision or value.

An important step in the development of a transparent decision service consists in defining the interface between the business rules and the calling business process or application. You devise the input that is required to make the business decision, and the data that is returned as a result.

The interface is defined by the following elements:
  • The business decisions to be automated by means of business rules. Each decision corresponds to one ruleset.
  • The input parameters that are required for each business decision.
  • The output parameters that are returned as a result.

The interface of the transparent decision service is provided by the ruleset parameters, which specify the ruleset parameter input and output types as XML or Java™. The input parameters define the data that is made available to the rule engine for processing. The output parameters reflect the business decision that is returned.

How ruleset parameters are defined is driven by the nature of the business decisions to make and should not depend on a single business process. You must be able to develop and test the transparent decision service independently of the process.