10/26/08 :: [BPM] BPM-as-a-Service is the future of BPM, Intalio is not[permalink]

|

I started to put my head into the Cloud. I am not an IaaS guy, so I spent most of my time at the PaaS and SaaS levels. I spent some time with CogHead and Cordys and then I stumbled upon that old post post from Isamel Ghalimi about "Who needs BPM as a Service?".

It has been no secret that I never found anything interesting coming out of Intalio. They are still around partly because they burned enough money in the last 10 years to avoid being killed and mainly because they bought PXE from Paul Brown's company and finally got more than one customer per year.

This old post from Ismael is quite symptomatic of what Intalio has been doing for the last ten years or so. Ismael comments on the fact that Intalio does not need to offer BPM-as-a-Service because one of their partner CogHead is doing it using Intalio's technology.

Don't get me wrong, I like CogHead as a PaaS, it's one of the slickest Data Driven (as opposed to Process Driven) PaaS platform, but boy could they be more wrong using Intalio's technology to become process centric? CogHead uses Intalio's BPEL engine as no less than a glorified graphical action script editor and when you can't use BPEL, you drop in XML code, yes XML code. So what are Ismael claims about CogHead:

It allows you to graphically design complex processes and data objects, call remote services and create human workflow tasks, all without having to write a single line of code. And when Greg went out to look for the fastest, most scalable process engine to power his baby, he settled for nothing else than Intalio|Server.

Complex processes, you gotta be joking. That's precisely the problem, Intalio, i.e. Ismael and Assaf could never understand what a business process is, they don't get that humans perform work as part of business processes. Just look at CogHead's documentation on implementing "tasks": there is no task list mechanism, all task notifications are done via emails. There is no task boundary either. When you click on the link you navigate to a "record" (CogHead is a data driven PaaS) and who knows what you would be doing there. How does the action gets notified you are done with your "task"? it does not. I'll pass on the fact that there is no organization defined either, you are on your own to define roles and figure out who can perform this task. This is and has always been Assaf's vision of BPM: "no workflow", boy can he be more wrong? And that's not it, CogHead's "Business Process Engine" can only call other actions, no web services, not even REST calls. I am wondering how Greg Olson, who came from Extricity could ever think that this could be labeled as BPM.

By contrast, I logged in Cordys and built a couple of things. That's a lot closer to BPM-as-a-Service if you ask me. They understand what a human task is, an organization, yes they can call web services too.

Ismael should reflect on the concerns expressed by Rashid Kahn about the size of the BPM market. I like his analysis to help BPM grow. To summarize, BPM-as-a-Service is the form factor that the BPM market needed to grow.

It actually never happened to Ismael and Assaf to wonder why the BPM market is where it is today. No instead, in this latest post, Ismael Ghalimi reiterates his flawed beliefs about BPM despite an incredible amount of literature that prove them wrong. I'll pass on the fact that he conveniently "forgot" to mention the WSCI incident that caused BPMI to loose all its momentum and bashes IBM and Microsoft for being responsible. I still remember one of the key BPMI member asking me "Is WSCI BPML?", yes, line for line they had just repurposed the spec on something slightly different and with SAP, Sun and BEA as the "co-authors", I am not sure they were even paying members of BPMI.  I also remember Karsten Riemer and Stefano Pogliani asking me not to criticize WSCI, but what else to do? I don't play political games. Listen to this: Ismael explains himself that his strongest belief was the future of Intalio depended on the control of key standards:

At the time, one of Intalio’s investors was a small VC fund called Ridge Ventures, and one of their limited partners was Alain Rossmann, the guy who founded Unwired Planet, which created the WAP protocol and WML language for mobile phones. It later became Phone.com, went public, and made Alain a very wealthy individual. Learning from this example, I convinced myself and my team that we should develop a set of standards for BPM, and founded the Business Process Management Initiative (BPMI.org),

And today, Intalio is still where it was in 1999 trying to deploy a completely flawed vision of BPM where processes are "compiled" in a BPEL based Business Process Virtual Machine. Whether it is BPMN + BPEL or BPMN + BPML, it simply will never work. Ismael and Assaf have no understanding whatsoever about how these two technologies relate. They are not alone actually, the standard intelligentsia, be it at the OMG, or elsewhere when they are trying to patch BPEL with WS-HumanTask and what not, always adopt the flawed belief that a business process execution is "centralized" and BPEL or whatever you want has the right semantics to do the job.

Ismael, I have news for you. You don't own a standard, by definition. Each time a company has tried to "own" a standard it has become a disaster. BPML and BPEL are no different. Look at BPMN by contrast. BPMN is designed with the users in mind not with potential owners. Greed is not what drive standards, it is usability and adoption stupid.

I wrote this article last year to explain how BPMN and BPEL relate.

Now of course, you can build successful BPM engines on the concept of a "centralized workflow engine" (not BPEL engine) and solve a lot of business problems that way but as long as we will try to compile BPMN into a single BPEL, WE WILL FAIL. BPEL is a programming language that can be used to implement resource lifecycles not business processes. BPEL simply does not have the right semantics and does not enforce the separation of a "task container" from a "resource container". The bottom line is that you can't compile business process definitions in BPM and you can't write BPEL code to implement "a process". I feel sorry that the industry has to wait that your little mind can't comprehend this. Resources participate in business processes and it is the work performed in human tasks and other automated tasks that transitions the resources from one state to another.

Can you deploy successful BPM initiatives without surfacing resource lifecycles? yes, of course, but I would like to encourage everyone to always design the resources' lifecycles as you design your BPMN process definitions. It will be that much clearer to design and update your process definitions. Dominique Vauquier actually argues that it greatly simplifies Business Process Improvement initiatives too. If you reuse these resources lifecycles often, that 's when you will feel that you would like to package them as BPEL code and start grafting human tasks to the transitions. At this point the business process definition becomes "observed" rather than "orchestrated".

This "centralized" view of BPM seems to be the reminiscence of "a programmer's experience". A programmer by definition looks at the "processes" (the system processes that is) and he/she wants as few as possible. Constructing a system by "assembling" resource lifecycles implemented in BPEL is not the natural choice, yet it is the logical choice because it models what really happens. It is not the natural choice of the business analyst either who sees the process definition as being one "unit". This is tragic, this is the very reason why we are not making any progress at all: programmers and business practitioners have no way to intuitively get the correct model without scrubbing decades of erroneous beliefs. Even the RESTafarians are considering that a process is-a "resource". Aside from the fact that when you have a hammer, everything looks like a nail, how can you claim you understand anything about Resource Orientation when you have no idea what a resource lifecycle is? How can you trust a RESTafarian to understand anything about building Enterprise Class Information System when he or she can't figure this out?

At the end of the day, Ismael and Assaf are by far the people that are the most responsible for the anemic state of BPM. By controlling the standard landscape in such a reckless way with politics and greed as their beacon, they prevented the right standards to emerge. A decade later, their vision is still as flawed as the first day they set foot on this discipline. Looking at CogHead's implementation of BPM, I am not surprised to see what I see. It's written Intalio all over.