Friday, June 29, 2007

BPEL4People starts out on the road to standardization

BPEL4People provides a way to include human tasks in a BPEL orchestration. It was originally published as a whitepaper by IBM and SAP in 2005. The whitepaper was just a high level overview and a set of use cases. Few concrete details were provided. Two new documents have just been published which will soon be submitted to the oasis consortium:

  • WS-BPEL Extension for People (BPEL4People) specifies a set of extensions to WS-BPEL 2.0 to address human interactions in BPEL as a first class citizen.
  • Web Services Human Task (WS-HumanTask) defines a language to describe the lifecycle of human tasks and an interface allowing them to be presented as services.

These new documents represent a significant step forward. The documents are now presented as draft specifications and will be a great start for the technical committee that will no doubt be formed. Some may ask whether the work done so far should have been done in private or within oasis. However, in this case it may have been difficult to do this within oasis while the WS-BPEL 2.0 specification was still being finalised.

Already, the question has been raised as to whether the models presented in BPEL4People are powerful enough. From the perspective of someone on the WS-* side of the fence, the answer is "Yes". BPEL is often used in situations where the majority of the business process can be automated. A task may need be assigned to a human for approval or to handle a particular exceptional condition. In this scenario, a relatively simple human task service is all that is needed.

There is much still to be done. The way in which every aspect of WS-BPEL itself was improved by the standardization process shows that oasis are very capable of doing the same for BPEL4People. John Evdemon already has some things he would like to fix. I note that BPEL4People seems to introduce a new way to handle attachments, something that has already been addressed by the WS-I. There may be scope here to build on existing standards rather than reinvent.

0 comments: