Friday, July 12, 2013

Comparison of different BPMN-modelling tools

Recently, I stumbled upon the problem that the Activiti-engine wouldn't accept a BPMN-XML-file which I modeled with camunda Modeler.
No error message or warning was displayed, but I could see in the log-file that parsing started.
The process just didn't arrive in the repository.

Because of that, I was wondering, how good the interoperability of the different engines and tools is at the moment.
BPMN is standardised and should work on every tool and engine. But as usual, reality shows us, that it's different.

This blog post covers several modelling tools and how good they work together. In a later blog post I'll feed the different BPMN-files to different engines.

I chose the tools for no special reasons.
Activiti and camunda because I work with Activiti (and camunda forked it).
SemTalk because I do have a license for it (it's the only commercial tool I chose).
The rest is more or less randomly in the list and because they are available for free.

I compared:
  • Activiti Modeler 1.0 (Activiti Version 5.13)
  • camunda Modeler 2.0.12
  • Yaoqiang Version 2.2.2
  • Bizagi
  • Bonita BPM Studio 6.0.0
  • MS Vision 2010/ SemTalk
  • Activiti Designer  5.12.0
You can find my results in a PDF, which I placed here.

To give a short explanation of the colours used:
  • green -> everything was alright
  • yellow -> it worked with some problem
  • red -> it didn't work or there were some major problems
  • grey -> it couldn't be tested or was unnecessary.
Bizagi is completely grey, because it has no im- or export for BPMN-XML.

This is the example process I used:
I wanted the example process to be very simple. It includes the basics, which I think should be supported.
It was modeled with every tool and opened with every tool. When testing if editing works, I added a task to the second pool.

Next to the result-table in the PDF, I took some notes during the tests, which I want to share:
  • Activiti Modeler can't display pools or lanes
  • Activiti Modeler can't display message flows
  • Activiti Modeler needs a Tomcat server (or similar), because it's part of Activiti Explorer
  • Yaoqiang would work better with some guides
  • camunda Modeler needs Eclipse, because it's a plug-in
  • modelling a flow (arrow) in SemTalk is too complicated
  • Yaoqiang, because of it's page layout, becomes confusing with big diagrams
  • Bizagi, Bonita and Yaoqiang validate the model
  • To show message passing, Bonita forces you to explicitly model sender and receiver
  • for Activiti Modeler, every file hat to be a .bpmn20.xml and not just .bpmn 
  • Activiti Designer can't display message flows

I don't want to name a winner, because I depends on what you're working on.
Some modelling tools are embedded (like Activiti Modeler and Bonita) and some are standalone (like Yaoqiang) and there are different use-cases and environments in which you would prefer one or the other tool.

But I got to admit, that I am a little bit disappointed by Activiti Modeler. It can't work with any of the the BPMN-files the other tools exported.

I hope my results will be helpful for people who have to chose a modelling tool and I hope that some of the tool-developers will try to improve their tools because of my results. Have fun ;)

Update: I added the results for Activiti Designer to the PDF. It works slightly better than the Modeler but could be better.


Copyright @ 2013 Wrong tracks of a developer.

Designed by Templateiy