Monday, May 25, 2009

Drools vs jBPM personal experience

This comment was published in The Server Side web page (http://www.theserverside.com) in response of some comments asking about the differences and the overlap between two projects from JBoss: jBPM and Drools low. The Drools team saw my comments on the site and invited me to publish them here. It's my experience and the reason why I have chosen Drools over jBPM to work with every day and contribute as a community member.

Here is the link to the comment and the article.

I hope that gives to all you guys a simple and not biased developer perspective.

Here is my comment:

Hi guys,

Regarding the Drools vs jBPM discussion, I can share my recent experiences making the shift from jBPM to Drools. I started with jBPM about a year and a half ago, at the beginning it seemed to be a decent framework, very process centric and developer oriented. When I started to play with rules and delegating the business decisions to the inference engine, I started to notice that I needed to learn another set of very different of API, and that these two frameworks didn't integrate very well.

When I decided to get involved with the Drools project, about 8 months ago, I realized that the integration proposed for version 5.0 was what I, as a developer, was looking for years. A whole environment that allows me to model different business situations with an unified set of APIs and merging three of the hot topic today: BPM, Business Rules and Complex Event Processing, all in one! And since it's not easy to define all my business logic using only one of those, it's promising to see I'm now allowed to combine (and integrate!) them whenever necessary.

The other thing that really attracts me is the fact that the tooling created by the Drools team is great, very extensible and easy to use, with a lot of extra features compared with the jBPM tooling. In my opinion, the most useful features are:
1) A powerful set of nodes to model your business processes
2) An easy way to create your domain-specific processes. I created a lot of new domain-specific nodes in a very short period of time. And these can be used inside the graphical tooling immediately.
3) Nice debugging tools, you can follow your process (and rules) step by step, simulating your execution.
4) The real possibility to support and plug in new languages. I have participated in the OSWorkflow migration tool, and I see that is very easy to create support for different languages. This is so cool that it would also allow you to run jBPM3 defined processes with RuleFlow.
5) A lot more extra features like a human task management component based on WS-HumanTask, reporting, etc.

So far I only mentioned the technical advantages that we discovered making the switch from jBPM to Drools, but there is another mayor thing that pushed me towards Drools, and that is the fact that the group of core developers are really open to new ideas (that is very cool, in not every project you can find that) and let the community members share their personal experiences and contribute with them on an every day basis.

It is also important to mention that the Drools project seems to be be evolving at a much faster rate than jBPM, which seems to have been frozen for about 3 years now. From what I've seen, they are working in version 4 of their framework, without adding new functionality compared to version 3.

I hope that my experience helps you to choose the right tool for your situation, I have already chosen, and that is why I try to contribute every day to this nice framework and promote it to succeed, because it makes the life of the developer easier. And that is all we want !!

Greetings
Share/Bookmark

13 comments:

  1. nice!

    I have added this to my website

    ReplyDelete
  2. Nice article. !
    I haven't been with jBPM, but I've been with Drools ... Your words are true that it made the developer's life easier.. and this is exactly the framework what the techno-business people wants...

    ReplyDelete
  3. I am a long time jBPM user and I agree the project has moved quite slowly. Its too bad jBPM and Drools didn't make more of an effort to work with each other.

    ReplyDelete
  4. trust me, we made a lot of effort.

    ReplyDelete
  5. Hello,
    After this post, I am also challenged to think about replacing the JBPM WF implementation with RuleFlow. The tools are really excellent, but I am not sure if I understand:
    - does RuleFlow support arbitrary long wait states, in other words, can I call long-running services from it asynchronously?
    - if not, can I put JPDL node in rule flow process definition, and if yes, how?

    ReplyDelete
  6. Can I just say what a relief to find someone who actually knows what theyre talking about on the internet. You definitely know how to bring an issue to light and make it important. More people need to read this and understand this side of the story. I cant believe youre not more popular because you definitely have the gift.
    Morning Desert Safari

    ReplyDelete
  7. Personal development is the way to turning into the best you that you can be. Nobody on earth is at a point in life where the majority of the abilities and gifts they have are on the whole terminating on a similar chamber.NoFap

    ReplyDelete
  8. An extremely urgent point is, Personal development, in contrast to personality development, can't be instilled. It can't be given to you in a delightfully wrapped blessing crate or as a multi week program!אבחון עצמי און ליין

    ReplyDelete
  9. Thank you for the informative post about Security challenges in AWS , Found it useful . cloud migration services have now become secured and with no-risk

    Cloud Migration services

    Aws Cloud Migration services

    Azure Cloud Migration services

    ReplyDelete
  10. I have gone through your post and I found it very helpfull. Looking forward to see more post from you.

    Vmware Cloud Migration services

    Database Migration services

    ReplyDelete
  11. I am really impressed with the way of writing of this blog. The author has shared the info in a crisp and short way.

    Lia Infraservices

    ReplyDelete
  12. We are a part of the success story for many of our customer's successful cloud Migrations.

    Cloud Migration services


    Best Cloud Migration Tool

    ReplyDelete
  13. Would you like to be a parent? Would you like to resign at 50? Would you like to have a one year get-away at regular intervals? These are the choice you have to make to have a total personal development plan.Get in shape with Martial Arts today

    ReplyDelete