Business Rules Engines

Mark Proctor, JBoss

Drools brands as JBoss Rules Engines.



Software that can apply one or more rules.

Data and logic gets separate, but this is not more different than normal MVC, but the way the rules are made, you get the rules on a higher level.

For example you may ask: “Is it my birthday?” Then the rules engine uses backward chaining to figure out the answer. First, find out who you are, then find the date of your birthday, and then finally find out which date today is.

Drools can get the rules from URI, JNDI or what ever you like.

The rules are made out of patterns like Person(name = “John”).
Be aware that OR is supported but a good idea, because of the way the rules engine builds it up. It’s far better to stick with AND’s for performance.

Agenda
When all the facts are matched for a given rule, they are placed on the agenda for activation.
When the facts no longer is true, they are removed from the agenda.

Links
http://drools.codehaus.org