Abstracting business logic from underlying code into a separate language that business users can understand, a BRMS (Business
Rule Management System) puts the control of business applications into the hands of the business owners. An enterprise BRMS,
such as ILOG's JRules or Fair Isaac's Blaze Advisor, removes the “impedance mismatch” between the IT department and business analysts, shortcutting the traditionally lengthy
software change process and allowing applications to be updated quickly and easily as business requirements dictate.

ILOG JRules 5.0
ILOG, ilog.com
|
Excellent 8.8 |
 |
| criteria |
score |
weight |
| Rule Management |
9 |
30% |
 |
| Performance |
9 |
20% |
 |
| Developer tools |
8 |
15% |
 |
| Documentation |
9 |
15% |
 |
| Setup |
9 |
10% |
 |
| Value |
8 |
10% |
 |
|
 |
Cost: Rule development starts at $12,000 (one seat); rule deployment starts at $40,000 (two processors); rule management starts
at $20,000 (one processor or 10 users)
Platforms: Any operating system that supports Java (Mac OS X not officially supported)
Bottom Line: JRules 5.0 adds depth and polish to an already rich set of tools, including a good start at performance monitoring. The new
version also shows significant improvement in performance when running standard benchmarks. Perhaps most significant to enterprises,
though, is that JRules now gives users the ability to develop their own rule language, paving the way for faster and less
error-prone changes to applications.
|
 |
About our Reviews and Scoring Methodology
|
|
|
|
JRules has always combined good run-time performance and rich rule-management features. In addition to a repository for managing rule sets, JRules provides a shared language — the BAL (Business Action Language)
— for collaborating on rules. Its GUI allows business analysts to create rules by combining canned phrases and logical operators,
and it also gives programmers access to the underlying Java and good debugging capabilities. Version 5.0 brings a substantial
performance boost, a more powerful and flexible BAL, performance-monitoring capabilities, and some other nice improvements
to an already mature product. Version 5.1, which should be available by the time you read this, will allow users to build
and deploy identical rules to JRules' execution server and ILOG's rule engine for Microsoft .Net.
Someday JSR 94 may become the universal rules language we'd all like to see. In the meantime, JRules' BAL at least offers
some welcome flexibility. Prior versions of BAL allowed you to express the rules of your application in the lingua franca
of your industry. Now, with Version 5.0, BAL goes even further, allowing you to define your own rule language, with the sense
of your own verbs, nouns, adjectives, etc.
For example, suppose your insurance company needed to define actions for a given set of circumstances. Using the BAL in JRules
5.0, you could define a complete language composed of rules such as this:
List the applicant first name
and the applicant last name
and the applicant age
For applicants that are high-risk drivers
and have a pickup with daytime running lights
or driver and passenger airbags
That's about as clear as you can get in a single rule. By allowing you to express rules that are readily understood and easily
manipulated by business analysts, JRules 5.0 smoothes the way for faster changes and fewer errors.
However, creating such a custom language isn't easy. It will take a lot of time and effort from your programmers and analysts.
But the end results for a large company that wants to make optimal use of both programming and business expertise are well
worth the effort.
For programmers, one huge development that's been brewing for about a year is ILOG's Business Rule Studio, an Eclipse plug-in
now included with JRules 5.0. Although you can't do J2EE deployment from Studio — as you can from the regular JRules tools
— Studio allows you to edit files, compile with Ant, maintain source-code control with CVS, and perform all those other tasks
you normally do from the Eclipse IDE. And you can set breakpoints and debug rules just like you can in Java or C++.
One benefit all stakeholders will appreciate is the great leap forward in run-time performance. Overall, my Miss Manners 128
benchmark tests on a variety of systems showed JRules 5.0 to be almost 10 times faster than JRules 4.0 or 4.5 when the hash
method was turned on; it was still two to three times faster with the hash disabled. As a matter of fact, with the hash enabled,
JRules 5.0 performs Miss Manners about twice as fast as OPSJ, the speed demon of rule-based systems. Running the more complex Waltz 50 benchmark, JRules 5.0 proved twice as fast as prior versions but still a long way behind
OPSJ. The difference between the benchmark results remained roughly the same, regardless of hardware or operating system (Windows
XP, Windows Server 2003, Solaris 9, or Mac OS X). Although these benchmark results provide useful points of reference, you
should run your own tests using your own application and data for the most meaningful comparison. (For an explanation of the
Miss Manners and Waltz benchmarks, see "Benchmarking the rules engine.")
JRules 5.0 includes a few other nice touches and stepwise improvements. New performance reports provide graphical views of
various performance parameters, which you can leverage to fine-tune the engine. These reports aren't everything you would
desire in application performance monitoring, but they do allow a degree of optimization that was unavailable before. Further,
new consistency checking of rules in the rule repository will bring potential “gotchas” to the attention of the user or programmer.
Role-based access to rules and rule sets is now more granular. A conversion utility allows shops to convert rule sets prior
to Version 5.0 with as little pain as possible. And, finally, JRules 5.0 greatly expands on ILOG's excellent documentation;
I especially liked the Enterprise Integration User's Manual, which discusses (in fair detail and refreshing honesty) almost
any architecture, tool, or approach in the Java world today and how it might be used with JRules 5.0.
JRules was already a true enterprise-ready BRMS. Version 5.0 starts with a good product and makes it great, combining rich
developer tools, friendly maintenance tools, and fantastic performance on the standard benchmarks.
Blaze Advisor still provides a better all-around set of tools, but JRules is rapidly closing that gap and increasing its lead
in performance. ILOG needs only to flesh out the performance reporting tools for a truly complete enterprise product that
just can't be beat.