Tom Baeyens on Blending Process and Rules

Scott Francis
Next Post
Previous Post

Tom continues to update the world with jBPM updates – in this case, using jBPM 4 and Drools to blend process and rules. His updates definitely play to the technical audience rather than the business – but I don’t find that too surprising in the open source world.  From a technical perspective, it is certainly interesting.  Proof that these memes seem to emerge on their own : Bruce Silver has also recently posted on rules and BPM (part 2 of a previous effort). At some point I look forward to digging into jBPM more thoroughly, and now that it supports BPMN 2, I’m more inclined to make the time, its starting to get interesting for the kinds of problems we look at.  However, I still fear that it is just a bit too technical in terms of what it requires of process authors still. A previous update confirms that jBPM now supports BPMN 2.0, as of version 4.0.  This is a niche I think open source can help fill – potentially fully implementing a spec that probably won’t be fully implemented by any commercial software vendor.  (Filling out the corners is just the kind of academic exercise that seems to get tackled by *someone* within an open source effort)

Related Posts

  • Pingback: Tweets that mention Process for the Enterprise » Blog Archive » Tom Baeyens on Blending Process and Rules -- Topsy.com()

  • ag

    Nice post, Scott, but your last paragraph has a somewhat uneasy feel. You seem to say “commercial” when you mean “proprietary”. jBPM is free software (since it is released under LGPL) but also commercial – there is a business that makes money behind it, just not in the traditional way. See http://www.gnu.org/philosophy/categories.html

  • ag

    Nice post, Scott, but your last paragraph has a somewhat uneasy feel. You seem to say “commercial” when you mean “proprietary”. jBPM is free software (since it is released under LGPL) but also commercial – there is a business that makes money behind it, just not in the traditional way. See http://www.gnu.org/philosophy/categories.html

  • IBM now owns ILOG and Teamworks… Marriage made in heaven?

  • IBM now owns ILOG and Teamworks… Marriage made in heaven?

  • @ag- you are quite right- i misused the term commercial, and I did intend to differentiate between “open source” and “proprietary”. Although, I must say that I think even the term “proprietary” is insufficiently accurate these days. After all, most “proprietary” software also runs and supports a lot of GPL’ed code and projects. The key points of differentiation:
    1. is there a license fee to use the software (if yes, proprietary/commercial)
    2. can i see the source
    3. can i contribute to the source

    Although there is a business behind jBPM my understanding is that it is all on support contracts – much like jboss and redhat linux… am I wrong?

    @john – well, ILOG and Teamworks are great products – no reason they can’t play nice together like jBPM and Drools :)

  • @ag- you are quite right- i misused the term commercial, and I did intend to differentiate between “open source” and “proprietary”. Although, I must say that I think even the term “proprietary” is insufficiently accurate these days. After all, most “proprietary” software also runs and supports a lot of GPL’ed code and projects. The key points of differentiation:
    1. is there a license fee to use the software (if yes, proprietary/commercial)
    2. can i see the source
    3. can i contribute to the source

    Although there is a business behind jBPM my understanding is that it is all on support contracts – much like jboss and redhat linux… am I wrong?

    @john – well, ILOG and Teamworks are great products – no reason they can’t play nice together like jBPM and Drools :)

  • Scott,

    Just to make sure there are no misunderstandings, jBPM supports parts of BPMN2 from version 4.3 (released 2 weeks ago). Where the roadmap for the next parts is based on can be seen here: http://docs.jboss.com/jbpm/v4/devguide/html_single/#Bpmn2Execution. I wonder if you can agree with that kind of approach (it is related to ‘potentially fully’ implementing the spec ;-)

    The InclusiveGateway and default plus conditional sequenceflow will surely be in the next release (but expect more e.g. rules :-) )

    Regarding the technical level required to achieve anything differs. Initial installation needs technical people. Running basic processes after that does not. Integration with external systems otoh does to a varying degree. All in all, not much different from what I’ve seen from other vendors (at least up to 4 years ago, never used a closed source solution since then)

    Oh and the commercial/open/closed/proprietary/license thing… you are right. It is exactly like JBoss/RedHat

  • Scott,

    Just to make sure there are no misunderstandings, jBPM supports parts of BPMN2 from version 4.3 (released 2 weeks ago). Where the roadmap for the next parts is based on can be seen here: http://docs.jboss.com/jbpm/v4/devguide/html_single/#Bpmn2Execution. I wonder if you can agree with that kind of approach (it is related to ‘potentially fully’ implementing the spec ;-)

    The InclusiveGateway and default plus conditional sequenceflow will surely be in the next release (but expect more e.g. rules :-) )

    Regarding the technical level required to achieve anything differs. Initial installation needs technical people. Running basic processes after that does not. Integration with external systems otoh does to a varying degree. All in all, not much different from what I’ve seen from other vendors (at least up to 4 years ago, never used a closed source solution since then)

    Oh and the commercial/open/closed/proprietary/license thing… you are right. It is exactly like JBoss/RedHat

  • Oh, I fully agree regarding the designer tools. In that area there is certainly a major difference (which even was there 4 years ago, pre ‘bpmn’). Being able to e.g. use a repository of services and use those seamlessly in your tools, or being able to select organizational groups from your identity management system when assigning swimlanes is another. There certainly is room for improvement in that area.

    One of the areas where tools are going to be needed in BPMN2 is the service task… What a mess… Well, no not a mess, just way to BPEL/WSDL oriented, way to ‘we can always add another layer of abstraction, just in case we want to reuse it on another level’. That should have been left out of the spec and when defining a webservice task (the default (!?), just reference a WSDL and give the opportunity to define it differently for other types of services.

    What I was referring to was more about getting the actual process running outside a local development environment. Lots of procedures to follow, technical issues to tackle (firewalls, authentication to services, billing issues and lots more). Just designing the process is sometimes (relatively) ‘easy’ compared to everything around it, sometimes, not always…

    Oh, and if you do find the time and have question… the support in the jBPM user forum is magnificent if I may say so ;-)

  • @Ronald- fair enough, as you say it supports “parts” of BPMN2 (as do all the other BPMN2 supporting products out there – I don’t believe any of them claim to implement the complete spec!) – and I think the strategy for the roadmap makes sense – start with the most important/common components and work your way up to the most complicated or least-used components- or wait for someone to need them and develop them :)

    Just from the screenshots, the technical expertise required is a bit higher than some of the BPMN-focused tools I’ve used more recently ( a lot has happened in 4 years ;) but it isn’t insurmountable by any means – it just puts a little higher premium on a more technical skillset than, for example, Lombardi’s toolset.

    On the other hand, some things might be technical (business calendar definition in XML) but simple, or easier to find and discover because it isn’t buried on a property page somewhere :) Sometimes not-technical isn’t easier, it is just not-technical :) But sometimes not-technical really is easier. The trick is to know which is which I suppose.

    I just need to get a break in my schedule to spend some time with version4.3 of jBPM!

  • @Ronald- fair enough, as you say it supports “parts” of BPMN2 (as do all the other BPMN2 supporting products out there – I don’t believe any of them claim to implement the complete spec!) – and I think the strategy for the roadmap makes sense – start with the most important/common components and work your way up to the most complicated or least-used components- or wait for someone to need them and develop them :)

    Just from the screenshots, the technical expertise required is a bit higher than some of the BPMN-focused tools I’ve used more recently ( a lot has happened in 4 years ;) but it isn’t insurmountable by any means – it just puts a little higher premium on a more technical skillset than, for example, Lombardi’s toolset.

    On the other hand, some things might be technical (business calendar definition in XML) but simple, or easier to find and discover because it isn’t buried on a property page somewhere :) Sometimes not-technical isn’t easier, it is just not-technical :) But sometimes not-technical really is easier. The trick is to know which is which I suppose.

    I just need to get a break in my schedule to spend some time with version4.3 of jBPM!

  • Oh, I fully agree regarding the designer tools. In that area there is certainly a major difference (which even was there 4 years ago, pre ‘bpmn’). Being able to e.g. use a repository of services and use those seamlessly in your tools, or being able to select organizational groups from your identity management system when assigning swimlanes is another. There certainly is room for improvement in that area.

    One of the areas where tools are going to be needed in BPMN2 is the service task… What a mess… Well, no not a mess, just way to BPEL/WSDL oriented, way to ‘we can always add another layer of abstraction, just in case we want to reuse it on another level’. That should have been left out of the spec and when defining a webservice task (the default (!?), just reference a WSDL and give the opportunity to define it differently for other types of services.

    What I was referring to was more about getting the actual process running outside a local development environment. Lots of procedures to follow, technical issues to tackle (firewalls, authentication to services, billing issues and lots more). Just designing the process is sometimes (relatively) ‘easy’ compared to everything around it, sometimes, not always…

    Oh, and if you do find the time and have question… the support in the jBPM user forum is magnificent if I may say so ;-)

  • @ronald – ah, i see. yes the other bpm tools aren’t necessarily better for deployment to production. the Teamworks 7 release has a new/better deploy functionality that is a significant step forward, but it has only been out there for a few months. Most of the tools, you still do xml export, import for the model, then migrate all the file assets and java and what not that supports your process…. not too bad if you know ant scripting :)

    And yes, those were some of the screenshots, plus I did some reading of the roadmap you linked to yesterday. I think all the tools (if smart) will offer simpler alternatives to the spec at implementation details level because, as you say, there are some aspects of the spec that are overly complicated.

    I look forward to taking advantage of the magnificent support on the user forum! :)

  • @ronald – ah, i see. yes the other bpm tools aren’t necessarily better for deployment to production. the Teamworks 7 release has a new/better deploy functionality that is a significant step forward, but it has only been out there for a few months. Most of the tools, you still do xml export, import for the model, then migrate all the file assets and java and what not that supports your process…. not too bad if you know ant scripting :)

    And yes, those were some of the screenshots, plus I did some reading of the roadmap you linked to yesterday. I think all the tools (if smart) will offer simpler alternatives to the spec at implementation details level because, as you say, there are some aspects of the spec that are overly complicated.

    I look forward to taking advantage of the magnificent support on the user forum! :)

  • I think we are rapidly converging on a common understanding of how processes and decisions should be used together. The role of business rules to both help manage processes (routing, escalation etc) and automate critical decision points within the process is also becoming clear. One added bonus of this is that event-centric approaches can easily be integrated, with decisions/rules being shared across process and event scenarios to ensure consistency and compliance.

  • I think we are rapidly converging on a common understanding of how processes and decisions should be used together. The role of business rules to both help manage processes (routing, escalation etc) and automate critical decision points within the process is also becoming clear. One added bonus of this is that event-centric approaches can easily be integrated, with decisions/rules being shared across process and event scenarios to ensure consistency and compliance.

  • Pingback: JT on EDM()

  • JT-
    It does seem like consensus is arriving, just wish it had shown up sooner…! I think the end-result is fairly self-evident if you’ve spent a significant time with technologies from both points of view (starting from a process point of view on the one hand, and starting from a rules point of view on the other hand). They are clearly such complementary technologies.

    Good post, btw, enjoyed reading your blog entry on the topic.

  • JT-
    It does seem like consensus is arriving, just wish it had shown up sooner…! I think the end-result is fairly self-evident if you’ve spent a significant time with technologies from both points of view (starting from a process point of view on the one hand, and starting from a rules point of view on the other hand). They are clearly such complementary technologies.

    Good post, btw, enjoyed reading your blog entry on the topic.

  • Pingback: uberVU - social comments()