The Business Process Execution Language (BPEL) is evolving into a key standard for describing both human and computer...
processes. It was originally conceived by the OASIS Web standards industry group as a language for specifying interactions with Web services. In order to manage human processes, organizations had to turn to other tools built on top of the Business Process Modeling Notation (BPMN) developed by the Object Management Group..
Both of these efforts have converged to some extent with the release of BPMN 2.0, which defines BPEL as an underlying format for storing information. This promises to help integrate the modeling capabilities of BPMN with the orchestration capabilities of BPEL. "There were always mapping abilities to go between BPEL and BPMN, but a side-by-side approach is more efficient," said David Shaffer, vice president of product management, Oracle Fusion Middleware. "It is possible to execute both BPEL and BPMN in a single process engine."
In addition, OASIS has developed the BPEL4People standard for defining users and roles and also standardizing the interface to a human workflow service through the sub-specification WS-HumanTask. This standard will also enable BPMN and BPEL engines to share a single workflow service. BPEL has traditionally only supported application service orchestration. These new standards will let business managers incorporate people into processes as well.
For example, Music Choice is using BPEL to improve the human processes associated with collecting and entering all of the information associated with a music package. The support for BPEL4People and WS-HumanTasks let them capture business processes and not just technical processes. The BPMN interface made it easy to capture what they needed in a visual manner and adjust it later. In essence, BPEL now dictates the tasks to be done so that there is no one person on top trying to coordinate with emails and phone calls, and constant trips down the hall.
Music Choice provides a collection of music channels and video channels for Cable TV operators and other providers. Each song is played along with pictures, information about the artist, trivia, and other textual content. Each type of information is gathered and entered into the system by a different person or group. Traditionally, an employee was dedicated to overseeing that all of the processes required to ready a song for broadcasts had been completed.
Streamlining the Enterprise
Music Choice recently adopted BPEL, using Active Endpoint's ActiveVOS suite to help automate these processes. One important BPEL application allows a manager to create a dynamic to-do list that helps assign team members to new songs, and can automatically escalate delays. On the back end, other BPEL processes help orchestrate this data, and a variety of other application mashups that were not feasible before.
Now when a new music video or song comes in the door, a number of processes fire off in parallel. One process goes to the content team while another goes to a creative team. These teams simultaneously begin work on getting images, facts, trivia, title and track information to be shown on the screen.
Another BPEL application stores the information in a way that makes it easy to show on screen. This information is stored in multiple separate databases. ActiveVOS acts as an ESB to make it easier to integrate content from these different databases into a final complete multimedia package with song, images, text and video.
"We had a pretty significant project with a lot of back office processes which have historically been done through a lot of people processes," said Bryan LeBlanc, Director, Application Development for Music Choice. "Those processes have some foibles built in because you have people involved. Someone forgets or goes on vacation and those processes have a tendency to go on into the wee hours of the night."
The People Problem
The mixture of people and automated services opens up several new problems for the system architect. He needs to create services that businesses managers and workers are willing to use. There is also the need to decide how to break up the development landscape between BPEL and other tools.
Better integration between service orchestration and human processes means that SOA architects have to consider the best ways of enrolling people that will be executing BPEL processes. LeBlanc said that front-line workers were reluctant to use the new software because the old way of doing things was so ingrained. "But once they saw the power of what it could do, they were willing to release control because they did not have to do the grunt work," LeBlanc noted.
Another challenge lies in figuring out where BPEL fits into the organization's development strategy. BPEL is best suited for orchestration rather than deep logic, which is better done with code. "The challenge is to figure out what part of the problem is best solved using a workflow language like BPEL, business rules systems, lightweight mashups, and what part is done with programming language like Java or .NET," said Sanjiva Weerawarana, CEO of WS02.
There are further issues to consider when creating BPEL applications that span multiple platforms. Sandy Kemsley, industry analyst with Column 2, said that the combination of BPEL and BPMN standards is still young, and there are still some semantics that are not stored in the standard BPEL format. Consequently, a BPEL model might behave differently when run on another platform.
Despite these challenges, BPEL is expected to play an important role in orchestrating the enterprise of the future. But individual architects will have to decide for themselves how it fits into plans to automate business processes that combine Web services and people.