Business Rules 11 Rocks - A Preview
In our upcoming 11g release, we have added many features and enhancements to Oracle Business Rules (OBR). Everyone that has used the preview version, or has seen a demo, has been very positive. Whether you are familiar with OBR or not, we believe, you will be very pleasantly surprised with the simplicity, richness, and power of OBR 11g.
We recently demonstrated the preview version of OBR 11g to Jim Sinur from Gartner and he blogged about it:
Process and Infrastructure: Now for the good newsWhile one could argue that Oracles wrapped JESS based rule engine is not the best one in Oracles inventory of BREs, but it is more than sufficient. Oracle is upping its usability and penetration into Oracles BPM offering. I was given an advanced demo of the interaction of Oracle BPM and their advancing rule engine and I came away pleased. This BRE is pervasive in most, if not all, of the process components and it is much easier to use than ever before. With the addition of decision tables and rule modeling/evaluation, the rule engine is something that a trained business analyst could use. In addition there were aspects of a budding business rule management system (BRMS) that included major aspects of change control and rule packaging. I was pleasantly surprised and excited about hearing from Beta users later this year.
Some of the enhancements in OBR 11g include:
1. Decision Tables
Decision Tables is a spreadsheet like metaphor for business rules authoring. In addition to being easier to understand for business analysts, it also provides more validation support including checks for overlapping rules and completeness.

Click here to see full image.
To learn more about the Decision Tables feature in OBR 11g, please see this demo recording.
2. Much simpler to use
OBR 11g makes it real simple to write simple rule. Actually, using the capabilities to nest conditions and change conjunctions (and) to disjunctions (or), very sophisticated rules can be written in the simple mode. Couple this with OBR's inference capability, which enables breaking complex rules into more atomic rules that can then be implicitly chained and re-used, you have a very powerful capability in a very simple to use form.
To learn more about the simplified authoring experience in OBR 11g, please see this demo recording.
3. Seamless integration with BPEL and Composite
First, seamless unification of components is a major theme for our upcoming 11g release; this provides our customers a very well integrated design time, run time, and management experience.
In context of Business Rules and BPEL, among other integrations, we have made the scenario where you want to externalize some logic from BPEL to rules very seamless. You can create a new rules dictionary from within BPEL, select the BPEL variables you want to use as inputs and outputs for your rules, and a dictionary is created for you that is completely ready to start writing rules - i.e. you do not need to manually import your facts (data model) etc. Of course, you can also re-use an existing rules dictionary from your BPEL process.
To learn more about the integration of OBR and BPEL, please see this demo recording.
4. Rules for Human Task Routing
In our 10g product, we leverage OBR from our Human Workflow component in BPEL PM to manage vacation rules, delegation rules, load balancing rules, etc.
In 11g, we have a very powerful integration between OBR and Human Workflow for Task routing. Business Rules can be specified for determining the flow of a Task, such as whether the Task should be sent to the next participant, completed, escalated, or sent to a different participant. These rules are invoked by Human Workflow each time it needs to move Task from one participant to another or other Task state changes.
This feature is being significantly used by Fusion Apps for sophisticated approval routing.
To learn more about rules driven task-routing, please see this demo recording.
5. Aggregate Conditions
Many times, we need to write rules that are based not only on one fact (data) but conditions that are based on having a view spanning multiple facts, i.e. aggregated conditions. In our 10g product, we already support some of these scenarios; we support writing rules that check for existence of a fact type or lack there-of.
In OBR 11g, we are introducing support for aggregate conditions. Out-of-box, we support common aggregation functions such as sum, average, count, min, max. You can provide your own aggregation functions too.
To illustrate the capability of this feature, if I want to write a rule which specifies that if an Order has more than 5 line items whose price is above a threshold, require manual approval, I can write a rule like (pseudo-code for illustration):
numPricey = count of lineItems such that lineItems.price > threshold and
numPricey > 5
then ...
To learn more about support for aggregate conditions, please see this demo recording.
There are a lot more exciting enhancements in OBR 11g including Decision Functions that provide a declarative mechanism for creating rule flows/pipelines, Dictionary Links that enable splitting a virtual dictionary into multiple physical ones for re-use or finer grained versioning and access control, and MDS as a repository. These would be good topics for a future blog post.
We are very excited about OBR 11g and hope you will share the excitement. To learn more about the 11g release, please visit the SOA 11g - Technology Preview site.