I characterize "The BPM Problem" as the following:
A bunch of things have to be performed by a bunch of people in the right order and in the right amount of time... or all hell will break loose.
After the folks have finished - We need to know who did what and how long it took them to do it - in the hope that we can learn something useful that will help them do it better next time.Perhaps not a very precise definition, but I think that it nicely sums up all of the things that a BPM suite has to accomplish.
BontiaSoft and Activiti both solve the BPM problem, but in diametrically opposite ways. BonitaSoft is a "one stop BPM shop" approach - Activiti is an "embed BPM in your solution" approach. Let's delve a little deeper and see which approach is "best"...
Of course the answer is - It depends on who you are.
If you are in a Professional Services Organization, like I am, then the BonitaSoft approach is probably better for you. Every day you deal with clients whose primary need is to connect a bunch of things together in order to carry out a Business Critical Process.
If you are in a Custom Application Development Organization, like I used to be, then Activiti's approach is probably better for you. Every day you work on a very complex application, and aspects of that application have to deal with the BPM problem.
Unfortunately things are never that simple... It's very common for us Professional Services folks to find a need to incorporate a Custom Application with embedded BPM into our more widely scoped Business Critical Process... And that's where Federated BPM really becomes necessary.
I hope that BonitaSoft and Activiti are listening... You will both "hit the ball out of the park" if you implement common Process Manager APIs.
Let's say that I need to integrate Alfresco, with it's embedded Actviti BPM, into a wider scoped Business Critical Process that I am implementing with BonitaSoft... My end users want to know what's going on... they want to know exactly where everything is and exactly what's left to be done (like a UPS tracking screen). To meet my users' needs, a single "Process Status Dashboard" and a single "Process Task List" needs to federate everything that the BonitaSoft Process Manager "knows" with everything that the Activiti Process Manager "knows".
Pull that off, and you'll make a whole lot of Professional Services and Custom Application Developers happy.
No comments:
Post a Comment