People and Technology

June 15, 2008

How to combine Workflow and Business Rules - in 5 easy steps

Tom has a good post on the jBPM (JBoss workflow) community day held at the Guinness brewery in Dublin. Warning - slides may contain pictures of people drinking beer.

Drools jPBM Business rules presentation

How to combine (jBPM) Workflow and (Drools) Business Rules - here’s the summary. Slideset is available on this blogpost.

  • Workflow (e.g. JBoss jBPM) is great - it allows you to take spaghetti code and draw it as a workflow diagram (flowchart) so that it can be reviewed by the business (the nice people who pay our wages). You then attach standard (Java) actions to these steps.
  • Only problem is when you come to a decision node (the one circled in red below): How do you decide to go left or right (in the workflow)? Normally this is coded in Java - good for us, but hidden from those nice business people (which means that this is more room for errors-in-translation).
  • Business Rules allow you to keep those decision making rules in Plain English: When something is true , then do this. That’s it. The rule engine does most of the hard work.
  • Integrating Workflow and Rules is easy. Use JBoss Seam (link) or do it by hand (link). And it works on non-JBoss web / app servers such as Websphere, Oracle Application Server, Tomcat and Weblogic.
  • Repeat x6 : Use workflow and rules. Use workflow and rules …

Simple Workflow

In a maybe related development, Tom Baeyens is now using strangely Rules-y like examples over on his workflow blog ….

4 Comments »

  1. I know I can’t spell Brown properly. So that is why I’m not going to say anything about your jBPM spelling :-)

    regards, tom.

    Comment by Tom Baeyens — June 16, 2008 @ 11:37 am

  2. Spelling corrected!

    Comment by Paul Browne — June 16, 2008 @ 12:10 pm

  3. Paul
    Thanks for the post. Yours was one of several that prompted me to write a post on why decision management matters to process management.
    JT

    James Taylor
    Author, with Neil Raden, of Smart (Enough) Systems
    Smart (enough) Systems LLC

    Comment by James Taylor — July 1, 2008 @ 1:08 am

  4. James,

    That’s a good post - although I’d come at the problem from a slightly different angle , probably due to the different nature of consulting that we do!

    I think your post focus is on changing manual decisions (requiring human intervention) to automated ones.

    My main focus in the talk was taking existing automated decisions coded in spaghetti (what Java looks like to normal people!) to something that can be reviewed by business decision makers.

    Both are two sides to the same coin, and both require balance - just because you *can* automate a decision doesn’t mean that you *should*. In both cases you end up with a better, clearer, system.

    Paul

    Comment by Paul Browne — July 1, 2008 @ 10:46 am

RSS feed for comments on this post.

Leave a comment

Powered by WordPress