Activiti has been around for quite some time (1 year this May), however I never had much time to look into it. Luckily I just managed to steal some hours to investigate this BPM platform. I knew it was going to be good, but I was impressed on how little you need to get started, the guys at activiti took the “shock and awe” approach to a great effect. Just download, extract, cd setup, ant demo.start… and voila you are sorted…
So, there is eye candy for business users, for example the Web based Activiti Modeler is quite impressive, however, there is much more than that. First of all, a short disclaimer; I have developed the Bonita module and the Mule connector for Bonita, so I might be slightly biased… that said, Activiti has a lot of potential.
From a developers perspective, the APIs seem very straightforward and even the development environment is targeted for developers. I liked it that there is an eclipse plug-in rather than a completely separate IDE which is eclipse based. This means that theoretically you can use your normal environment and just add this plug-in on top. There is still work to be done to add more features and polishing, but it looks good and its core seems to work.
What I ended up doing was looking at the source code that was used to create the Mule module. The APIs are clean and to the point. Also, Activiti is configured through Spring, so you can get a lot of goodies for free. Clearly, this product has “extension” and “customization” in mind, not only the engine but also the Activiti eclipse plug-in for example.
In short, the decision between Activitii and Bonita is a tricky one… However the good thing about this is that we have a difficult choice to make, meaning that both these projects will end up pushing each other to excel. I could not find a clear winner in the couple of hours I had looking into Activiti, but who knows… I might “steal” a couple of hours again next week ;).