BT

JBoss Drools 4.0: Business rules now more accessible to non-programmers

by Ryan Slobojan on Aug 22, 2007 |

JBoss Drools, an open-source business rules engine, recently reached version 4.0. InfoQ took the opportunity to learn more about JBoss Drools and its current and future capabilities.

It has been a little over a year since JBoss Rules 3.0 was released, and the first big change is the name - with this release, JBoss Rules is becoming JBoss Drools. Along with the new name come new API and language features which break backwards compatibility with 3.0. According to the official release announcement, the major features and benefits in 4.0 are:

  • Faster performance: Drools 4.0 is faster and leaner than its predecessor and features a smaller memory footprint. Internal benchmark testing showed improvement from minutes to seconds.
  • Improved expressiveness: This release introduces a dramatically more expressive and powerful declarative business action scripting language (MVFlex Expression Language). Users will find that it is more concise as well as more readable.
  • Business analyst friendly tooling: A new Guided Rules Editor lets non-programmers point and click their way to advanced declarative business rules that automatically bind to enterprise data without writing a single line of code. Basic menu prompts and drop-down lists do the guiding.
  • Rule flow capabilities: This visual modeling technology enables users to declaratively model execution paths of related rules. It also allows for simultaneous flows within a single working memory and essentially organizes rule execution along the requirements governing a typical business process.
  • Multi-application support: Improved support for stateful and stateless processing as well as overall thread safety helps make Drools even easier to embed within Java Platform, Enterprise Edition (EE) and service-oriented business applications.
  • Hibernate-ready: Users can assert facts directly from Hibernate-driven RDBMS queries. Existing Hibernate components can be used directly in the rules engine, reducing the amount of coding.
  • BRMS for non-programmers: A technology preview, the new BRMS is a web-based, AJAX-enhanced, collaborative rule authoring, versioning, and management system. Business analysts can now interactively author and/or modify rules that are automatically versioned. Administrators now have full lifecycle control over which rules are in QA, staging, production, etc.
Version 4.0 is also available in the JBoss Maven repository for Maven users, and the Eclipse Drools IDE has a number of new features and capabilities to go along with this release. There is a detailed overview of the changes available in PDF form as well.

Mark Proctor, the JBoss Drools lead, recently talked about what to expect of future JBoss Drools releases:

We are still missing 3 main things:
analytics
ontology modelling
testing

Our next release will be quite quick, I'm hoping approx 3 months. That release should hopefully have analytics and testing in it, as I want to get those out as soon as possible. Ontology modelling will take a little longer so will be in release after that, along with prolog style backwards chaining (for a full hybrid engine) and Complex Event Processing(CEP)/Event Stream Processing(ESP).
Proctor also described some community projects, such as an upcoming solving framework called drools-solver, and a fuzzy-logic evaluation system which will plug into JBoss Drools. Further into the future, Proctor believes that JBoss Drools will grow from a rules engine into a fully integrated artificial intelligence platform for behavioural modelling.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Great job guys! by Richard L. Burton III

I just wanted to say great job on the Drools projects. Keep it up!

Best Regards,
Richard L. Burton III aka rburton

Business rules now more accessible to non-programmers by Dmitriy Setrakyan

Business analyst friendly tooling: A new Guided Rules Editor lets non-programmers point and click their way to advanced declarative business rules that automatically bind to enterprise data without writing a single line of code. Basic menu prompts and drop-down lists do the guiding.

I am wondering if anyone finds this feature useful.

I myself have worked with several rules engines and the idea was always the same - business people, who don't know coding, will be able to create and wire business rules.

However, never in my experience such feature ever ended up well accepted. Moreover, it brought certain disadvantages to code, such that your business logic was now defined in 2 places, partially in Java (rule implementation) and partially in the rule itself using some sort of rule scripting language specific to rules engine.

Another disadvantage is that business people still had to learn some sort of light weight scripting language for rules which is a challenge on its own.

Does Drools address these issues? Is there anyone who is using Drools and at the same time does not know how to code?

Best,
Dmitriy
GridGain - Grid Computing Made Easy

Re: Business rules now more accessible to non-programmers by Geoffrey Wiseman


I myself have worked with several rules engines and the idea was always the same - business people, who don't know coding, will be able to create and wire business rules.

However, never in my experience such feature ever ended up well accepted. Moreover, it brought certain disadvantages to code, such that your business logic was now defined in 2 places, partially in Java (rule implementation) and partially in the rule itself using some sort of rule scripting language specific to rules engine.


I don't really buy into "Business users write rules" myself except in very simple cases. Something like Drools' decision tables, where business users parameterize rules written by developers seems a little closer to feasible.

That said, I think from a marketing perspective, since people often look at rule engines with this in mind, it's a useful feature to have for adoption, even if people end up deciding not to use it. I hope that it is actually useful to people as well.

Drools Features and Screenshots by Geoffrey Wiseman

Came out today, and don't see it in the article above, which also came out today:
blog.athico.com/2007/08/drools-features-and-scr...

Re: Business rules now more accessible to non-programmers by Roberto Nogueira

I believe that any effort in this direction (facilities) is welcome

JBoss Drools 4.0: by Gavin King

Congratulations guys, Drools rocks!

Re: Business rules now more accessible to non-programmers by Sameer Wadkar

In most Rules Based System functionality (at least from a business perspective) will change ( sometimes a lot) when the rules are modified. Its hard to image a business user (even a powerful one) can just go in and change the rules in a production system. Which means there will be seperate environments for performing various types of tests. I doubt if business users are willing to do that.
Another type of software which makes this marketing promise is "Workflow based softwares". Again business users can hardly be expected to go in and change process flow in a sophisticated application like Oracle BPEL.

Ofcourse developers welcome good tools and such tools make using Workflow systems and Rules engine very accessible. But somehow "Good for developers" does not sell as much as "Business users can now express functionality using their lingo".

Re: Business rules now more accessible to non-programmers by Simon Pink

I believe the 'Business analyst friendly tooling' could hold quite large potential for us. We typically code our rules into a DB structure in such a way that other non IT/developer staff can change the rules with a GUI we have developed. These staff are reasonably technically minded, and deal with business clients. If they could have a tool like this, and it is relatively easy to use, it would save us maintaining our own rule engine.

Re: Business rules now more accessible to non-programmers by Jonathan Allen

Its hard to image a business user (even a powerful one) can just go in and change the rules in a production system.


It happens all the time where I work. Someday it will be our downfall, but we can't talk senior management out of it.

Re: Business rules now more accessible to non-programmers by Mark Proctor

Many vendors are not doing the industry any good by peddling the vision that you can get rid of your developers. We certainly don't do that, what we do is provide tools to solve a variety of problems in a variety of ways that assist both developers and analysts and enables them to more easily work together. My personal aim is to build a platform that empowers developers to declaratively model the behaviour of complex problems, that's why we have worked on building such a rich language and integrated ruleflow for process modelling. Drools now has the richest rule language of any system, commercial or open source.

On the other hand we also have to solve real world business problems; where we want to enable developers and business analysts to work closer together, to allow developers to give (in a controlled manner) more autonomy to analysts. Environments like Decision Tables, Guided Editor and DSLs when applied correctly to the right problem domain work. We still have other authoring metaphors to add such as Decision Trees and Score Cards. Do they remove the need for developers, no. Do they allow analysts to work end to end on their own out of the box, no. Do they empower the analysts with more autonomy, yes. Do they provide an environment where analysts and developers can have a clearer idea of what each other is saying and trying to describe and model, yes.

Mark
blog.athico.com

Re: Business rules now more accessible to non-programmers by peter lin

That really depends on the use case and the scope of the DSL. I've built DSL for compliance in the past and it worked well. In this case though, the language was specifically designed for compliance officers in their language. I've also worked on DSL for privacy rules, which is a very focused and narrow scope. A general purpose natural language editing interface still has a steep learning curve. Teaching business users to simple rules is feasible. Teaching business users to write complex rules is very difficult.

peter lin

Re: Business rules now more accessible to non-programmers by Mark Proctor

"That really depends on the use case and the scope of the DSL.". Obviously, hence "when applied correctly to the right problem domain work."

Mark
blog.athico.com

Re: Business rules now more accessible to non-programmers by Geoffrey Wiseman

It also depends on your "non-programmers". At Exchange Solutions, we were able to be pretty successful with Decision Tables on Drools 2.X with the right business users. It still wasn't perfect, still required some developer intervention, wasn't the sort of thing you'd give to any business user, but we had non-programmers doing a fair amount of rule work, and most importantly, this work was done by the people specifying the logic behind the business rules, which cut out a lot of the requirements, analysis, design communication that has to happen when the requirement-specifiers and implementors are one or more steps removed from each other.

Re: Business rules now more accessible to non-programmers by peter lin

From my own experience, many sales people hide the real cost of training business users. I've heard sales people say "it takes a few weeks". My experience is it takes 8-12months for business users to get comfortable. In many cases, the existing business users may not be able to write rules, which means they need a skilled business analyst. the industry on the whole needs to improve that. my bias 2 cents.

peter

Re: Business rules now more accessible to non-programmers by James Taylor

Implemented as you describe I would agree this is a non-starter. Most good rules management systems (disclosure: I work for Fair Isaac with Blaze Advisor) allow you to hide some of the rules complexity using decision tables, decision trees or templates. This allows business users to collaborate with programmers on maintaining the rules. It does not replace programmers nor does it introduce a second scripting lanugage. It just presents another, more business-friendly, view of the declarative logic so that business users can do their bit in maintaining the rules.
JT
James Taylor
The EDM blog
My ebizQ blog
Author of Smart (Enough) Systems

Re: Business rules now more accessible to non-programmers by James Taylor

See my answer above - business users can (and many do) write rules that conform to rule templates (just like they can build reports that conform to report templates) and use metaphors like decision tables and decision trees.
JT

Re: Business rules now more accessible to non-programmers by James Taylor

Our experience (disclosure: I work at Fair Isaac with Blaze Advisor) is that organizations still have development/test/production environments and that the advantage of using a business rules management system are twofold:
- business users can make many of the updates to the development system (reducing interpretation errors and getting the development system updated faster) - IT still push it into production
- in an emergency the logic in the production systems can be changed more rapidly (typically by IT and the business in parallel).
JT
James Taylor
The EDM blog
My ebizQ blog
Author of Smart (Enough) Systems

Re: Business rules now more accessible to non-programmers by James Taylor

Mark
As usual I quite agree!
JT

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

18 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT