BPM 2.0

I’ve mentioned REST-based BPM frequently on this blog and was able to express my ‘frustrations’ at IntalioCon earlier this year.

But, there is movement in the market, and after a 3+ month gap in her blog posts, Christina Lau is presenting IBM’s take on BPM 2.0.

To build a true BPM as a Service ecosystem that leverages the web and provides value to business and IT, many services must be made available through REST

REST track at QCon was widely reported, Random Stuff has the main links and WorldWideWebber was blogging real time.

The madgreek recently posted a good piece on open source SOA.

There has been recent debate about BPEL on the blogs.  BPEL is a tool for WS-* orchestration for enterprise integration.  The realm of the enterprise architect.  But BPM isn’t software engineering.

I continue to be excited about BPM and REST-based services.  The use of links that kinda auto-magically determine the process trajectory at run-time rather than being coded into the process before hand is, I think, a new dimension to what we are currently doing with BPMS.

Run my process

Copyright © Jason Woodruff.  Visit the original at http://jasonwoodruff.wordpress.com/2008/06/03/194/

I came across a BPM on-demand solution yesterday http://www.runmyprocess.com.   This service is, I think, designed ‘restfully’ from the bottom-up.  Certainly it seems oriented towards resources as the process component.  I’m experimenting with the service and looking at how I can integrate hosted Live Forms (http://www.frevvo.com) with a hosted workflow.  I don’t think this is likely to prove too difficult and a technical person would likely get this licked in seconds.  I’ll post about any successes.

The service looks to be quite new: the v1.0 documentation was published last month and I’m the 5th person to register on the forum (but it is in French and that may be a disincentive!).  They are promoting integration with well known SaaS apps like Salesforce, Zoho, 37 signals, and Google, and there are demos showing how to assemble processes to do this.

One thing I’d like the folks at runmyprocess to do is be a bit more explicit about the standards they are following and their architecture.  But the service is using Restlet*.  The process designer looks and feels like BPMN.

I think they need to make it easy to import and export processes.  I don’t think there is any support for XPDL, but that might not be appropriate.  Users need to stay because they want to not because they are locked-in!

I think this service is probably forging the future of BPM for the web.  I expect we’ll see a growing ecosystem of rest-based business style services emerging.  Good luck to runmyprocess (needs a shorthand?).

Runmyprocess is running a competition for projects with the prize of free hosting for a year.

* Awaiting publication of the Restlet book, expected publication date 28th May according to Amazon, but that seemingly hasn’t been met.

OS BPM / Restful BPM

jBPM had a ‘quiet’ relaunch last month and the results look impressive.  Previously, as I come at BPM from a business analyst direction, I’ve always found jBPM quite challenging and was more successful in designing and deploying processes with Intalio.  However, the recent jBPM changes persuade me to re-examine the jBoss offering.

The most obvious change is the website.  I’ve also always found the documentation for jBPM challenging since it seemed out of step with the product, so I hope that there have been efforts to sort that out to.  However the most important change is the launch of the Process Virtual Machine.  This is a generic embeddable engine capable of running executables written in BPEL, jPDL, XPDL, pageflow and other languages as and when the extensions are created.

Another change is the link-up between jBoss and Bull.  Bull are the power behind 2 open source business process products – Nova Orchestra and Nova Bonita.  The relationship sees jBoss having oversight of Process Virtual Machine and the jPDL extension, and Bull overseeing Orchestrate as the BPEL extension and Bonita the as XPDL extension for the PVM.

BPMN is establishing leadership status in terms of process design and Intalio’s Eclipse based designer is probably the best current offering in that respect, but there are some strings attached.  Firstly, whilst it is based on Eclipse it isn’t OSS and it isn’t available as an Eclipse plug-in.  Neither does it accept other Eclipse plug-ins.  This means, for example, you cannot use IBM’s excellent graphical XForms editor within Intalio’s designer.  You also have to have an account on the Intalio website since it asks for a login when you first fire it up.  Whilst an account is free this is annoying.

jBPM’s Graphical Process Designer is available as Eclipse plug-ins, but it currently doesn’t support BPMN.  The same is true of ActiveBPEL Community Edition Designer.  Perhaps the final important OSS project on the design side is Eclipse itself, with the Java Workflow Tooling Project (JWT).

I’ve not looked at JWT, but if it supports BPMN and evolves to ‘good enough’ then that will be sufficient for me to move from Intalio Designer.

The link-up between jBoss and Bull reflects the broader rationalisation of the BPMS space.  Today there are probably only 3 serious OSS BPEL engines to consider: Apache Ode, Process Virtual Machine and ActiveEndpoints.

This segment has a need to simmer for a little longer before we have a usable stack for an analyst such as myself that is both open source and can be freely downloaded, that supports design using BPMN, and that has a portable workflow (as opposed to BPEL) technology.

At the moment I’d wish to design in Intalio and deploy to PVM.  But PVM doesn’t support BPEL4People, so workflow would break.  jBoss’s workflow is within jPDL, but that means using GPD for design, which means moving away from BPMN.  As an analyst I’m driven from the BPMN rather than the engine side of things.

Of course all the previous discussion is about Java-based technology and the web-services way.  Very heavy and very corporate.  Now that’s OK for someone like me who is more researcher than practitioner, since my interest is in understanding how to assemble future applications.

But on this matter I think web-services are not the way to go, and web resources are.  Which makes all of my previous comments pretty redundant since none of these products supports processes built with resources rather than services.  There is talk within the Apache ODE project of doing so, but when and if this might happen and, for that matter, how, is anyones guess.

There have been a number of blog posts on Restful BPM (orchestration) over the past few months [here, here].  The project I continue to keep an eye on is openWFEru or rufus.  Firstly, because it’s Ruby, secondly because they have a resource focus, thirdly because it’s from the workflow rather than the EAI side of BPM, and fourthly because it’s embeddable (like PVM).

Which is where I’m headed today.  I’ve an idea for a SaaS product that needs workflow.  Using RoR, with rufus, and putting it onto Amazon’s ‘cloud’ (is that enough buzzwords in one sentance?), seems to be a solid plan.  But I need to be able to get my head round rufus first.