Which workflow engine to choose? [closed]
Asked Answered
B

3

40

We are currently in the process of evaluating a BPM engine and I'd really appreciate the community input. I am doing my own due diligence but would also like to hear on the suggestion based on implementation stories.

My main evaluation criteria are below

  1. open source and OEM friendly license
  2. production installations (success stories are a great help)
  3. commercial support available
  4. open standards support - BPMN
  5. dynamic creation/assembly of the workflow based on input
  6. embeddable

Currently I am evaluating Activiti and JBPM. Bonita open BPM seems like a good candidate as well but never used it. Do you guys have any successful deployments on Bonita?

Bicephalous answered 9/2, 2011 at 0:29 Comment(5)
Just a comment on the terminology being used. Workflow and a BPM engine are not the same. BPM is a much broader element and it typically has workflow components in it. There are products in the marketplace that are targeted at pure workflow solutions and there are products which are in the BPM space.Exasperation
@Exasperation - agreed. so do you have any suggestion on workflow engines that are based on BPMN. I have looked at OSWorkflow but it is old and I dont think it is actively maintainedBicephalous
At this rate thinking you'll need to post on respective forums to get a useful answer.Mouldon
Are you specifically looking for BPMN based products? There are many BPM products in market. You might want to take look at the commercial products like Savvion, Oracle BPM if you don't want to switch to MS platform. There are other open source products like Intalio, jBPM which gives support as well.Theodolite
But then there are other factors when choosing over commercial products such as development efforts, time constraints, reliability. Posting your questions to proper BPM community will help you to evaluate products.Theodolite
Q
10

I've just been doing an evaluation of Activiti vs jBPM.

In fact there seems to be very little between the two solutions.

  1. Activiti is Apache V2, jBPM 5.0 is also Apache V2.
  2. We're currently using Activiti, but the project is still in dev, so I can't comment on its robustness in production.
  3. jBPM is beginning the productization process, so support for 5.x will be available in Q1 2012, see slide 32: jBPM demo. jBPM 4 was not supported by Redhat.
  4. jBPM 4.x did not support BPMN 2.0, but 5.x does, Activiti does as well. jBPM 5.0 has just been released, which includes support for BPMN 2.0. So now both solutions support BPMN 2.0.
  5. I'm not quite sure what you mean by this, but you can do a lot through both APIs
  6. Again, not sure what you mean by this, do you mean embedded as part of an application server, in which case, yes for both solutions.

One of our criteria for jBPM was the interaction with Guvnor, and when I downloaded and ran the demo install for jBPM (28/03/2011) and there still seemed to be some major bugs (GUVNOR-1274), so I personally would test a lot more before I chose to pursue this solution.

In fact, we will be recommending one of the above two solutions, but we're not sure which yet, we'll look at it more closely later this year.

Quarterstaff answered 29/3, 2011 at 12:55 Comment(2)
Can you pls let us know which one did you choose. Also did you try for any commercial support for activiti?Bicephalous
In fact, we are using Activiti. We don't have commercial support for Activiti.Quarterstaff
S
4

Although I have little practical experience I did undertake a research spike into java BPM options recently. I narrowed it down to 3:

The Drools community seems more active, tools are better, the rules engine was very sophisticated (as this was the base of drools) but surrounding business process were well integrated. However jBPM was more focused around business processes and slick as well. They are both managed by JBoss

Further comparisons between Drools and JBPM can be found here:

Drools v jBPM

If you have a confident development team and the requirements aren't too complex it is always worth considering rolling your own. BPMs can lead to anaemic domain models (as described in this post Rules Engine pros and cons about rules engines ) as you try adopt your domain models to fit into such systems, also well built systems customised for your business are always going to be more effective.

As far as your criteria goes:

Open-Source and OEM friendly license - Drools uses a liberal 'ASL/BSD/MIT-esque license', community is active. jBPM uses apache, eclipse and MIT licenses

Production Installations. I understand drools is used by many insurance companies and credit checkers, not sure a jBPM

Commercial Support available for both

Open Standards Support - BPMN - Both implement BPMN and due to the nature of the open source projects are very standards orientated.

Dynamic Creation/Assembly of the Workflow based on input. Both, although is generally easily implemented manually.

Eembeddable - both offer entire systems but are modulated so this should suite embedding into existing systems.

Sparke answered 3/3, 2011 at 5:51 Comment(0)
D
1

My not use an MS stack? WWF 4.0 for the engine, re-hostable designer. WCF for communication. MS Sql Server for BI. Plenty of .NET devs out there to help build and customise. Other than a Windows target, no dependency on an external supplier.

Demurrage answered 9/2, 2011 at 12:9 Comment(3)
thank you but I can't switch from Java platformBicephalous
ok - add it to your criteria thenDemurrage
It's quite clear he's looking for a Java solution.Om

© 2022 - 2024 — McMap. All rights reserved.