Thursday, 19 August 2010

Activiti And The BPM Market In A Nutshell

Too much happened to fit into 140 char twitter message so I decided to write the summary here, but first this side note: Elke delivered Joram 2.0 early (probably it will not be often, but hey...) He's called Lars. Congrats to the whole family!

Last release of August 1st already includes a decent coverage of BPMN activity types. Summer time is a great time to get some coding done. Last couple of weeks were really hard core coding with fine tuning of the core engine. We extracted the Process Virtual Machine as a separate module, added a super efficient event mechanism and optimized the DB persistence to the max. First of all, the runtime data is kept to a minimal, with minimal updates during process execution. On top of that, if a parallel gateway forks again, the joined executions are now actually recycled. It's good for performance and the environment! It's amazing that I still find significant optimizations after I've been coding core BPM engines since 2003.

Tijs Rademakers (from Open Source ESB's in Action) got started on a book called BPMN 2.0 with Activiti in Action. I already look forward to reading it.

Josh Long created an Activiti integration with Spring Integration. He's going to show it at JavaZone. Don't miss it.

Furthermore there is an Activiti BPMN 2.0 eclipse designer and an iPhone app in the pipeline. Really cool stuff. More about that later.

But what does that mean for the BPM market in general? Wel... this morning I was cycling to the office and I actually came across the perfect boat metaphors to illustrate what's happening in the BPM market. First I saw this:

That is a really good metaphore for the typical traditional BPM player: Inert, not in the shape that it once was but it's floating.

Then I passed along this one:

That's Activiti: New, fast, agile and fun to work with!

And then I saw what's going to happen with the traditional BPM players after Activiti the GA release in November:

Oh no!


  1. The last photo in your image could also be you after you notice that BPM is more than just executing a BPMN 2 process :-)

    Seriously, I think you should make clear that Activiti is mainly for workflow automation, but not really for business process management. Automating a process is just a small part of what BPM aims at. My guess is that Activiti will do fine for small to medium shops trying to automate some processes, but not for large cooperations trying to optimise their enterprise architecture.

    So I'm pretty sure that commercial vendors of all sizes still have a bright future ahead AND that Activiti will be an important OSS project, too.

  2. We are well aware that BPM is more then BPMN. Activiti includes web based tooling like the Activiti Modeler for process authoring, Activiti Explorer for task management and reporting, Activiti Probe for operational management. Furthermore it will include Activiti Cycle for supporting collaboration of BPM in a new exciting way covering the full process development cycle from business requirements, over software development to runtime operations. That suite of components is targeted at small, medium *and* large corporations.

    I think that these features under the liberal Apache license will change the BPM market significantly. The licence works beneficial for us in 2 ways. 1) less resistance for companies to use and embed it. 2) much more contributions. That's why with Activiti, we can aim for that ambitious target.

    We are commoditizing the BPM engine, and companies building BPM engines should seriously consider doing it on top of Activiti. There will be no money in the significant features that we already offer for free.

  3. Thanks Tom for following up. I hope that not all companies stop now developing their own engines. Competition is healthy for the market and goes in both directions. So not only proprietary software needs OpenSource competitors, but also the other way around. Linux wouldn't be as good if there haven't been Windows and Mac.

    Besides, it is great to see all the intended features and areas you want to cover. Still, you are missing many things like enterprise architecture modelling (Archimate, TOGAF, Zachman, ...), process cost calculation, simulation, alignment with strategy modelling, process intelligence, business intelligence, document management integration, risk analysis, etc. Eventually, Activiti or third party extensions might cover all those aspects, but that's a very long way to go. Creating a browser-based modelling tool with a BPMN engine beneath is just a small step on this long way.

  4. Hi Sebastian,

    Agreed, it's not our ambition to do everything that was ever offered in a BPM system. You would end up with including approximately every tool in software development.

    Our ambition is to make BPM ubiquitous and to have the clear and recognized #1 position in BPM. Similar like the Apache HTTP web server or Apache Tomcat. Our strategy it to offer that engine in a way that both developers, business people and system admins like it. With the Apache license and a lot of investment, we want to build a BPM system that gets out of the niche status that basically all BPM products have today. Amongst the hundreds of BPM software vendors today, not one can claim clear leadership. They all are basically niche players. So I think with BPMN standardization and the Apache license and my backkground in jBPM, the time is right to build that clear leader in the market.

    For all what is outside this scope, some very interesting partners are collaborating (see

    Amongst those is Signavio (contributing Activiti Modeler). I wouldn't call that just "a browser based modeling tool". That is a fully fledged environment for collaborative modeling processes, forms and organisations. Also Camunda is leading the contribution on Activiti Cycle.

    If I look at Aris' strategy and looking the ecosystem we aim for, I think it would make perfect sense for Aris' to invest in building a compatibility layer for Activiti just like was done for netweaver.

  5. BPMN is not enough. Where are some limitations of it.Unpredictable processes -
    Is any roadmap for activiti, to implement such concept?

  6. I'd also like to hear your thoughts about "adaptive case management." jBPM5 is starting to show some progress here.