The Cover PagesThe OASIS Cover Pages: The Online Resource for Markup Language Technologies
SEARCH | ABOUT | INDEX | NEWS | CORE STANDARDS | TECHNOLOGY REPORTS | EVENTS | LIBRARY
SEARCH
Advanced Search
ABOUT
Site Map
CP RSS Channel
Contact Us
Sponsoring CP
About Our Sponsors

NEWS
Cover Stories
Articles & Papers
Press Releases

CORE STANDARDS
XML
SGML
Schemas
XSL/XSLT/XPath
XLink
XML Query
CSS
SVG

TECHNOLOGY REPORTS
XML Applications
General Apps
Government Apps
Academic Apps

EVENTS
LIBRARY
Introductions
FAQs
Bibliography
Technology and Society
Semantics
Tech Topics
Software
Related Standards
Historic
Created: June 25, 2007.
News: Cover StoriesPrevious News ItemNext News Item

BPEL4People Specifications Integrate Human Interactions Into Business Process.

Contents

[Update 2008-01-14] In January 2008, OASIS announced that consortium members had submitted a charter proposal for a new WS-BPEL Extension for People (BPEL4People) Technical Committee. Companies sponsoring the proposal include Active Endpoints, Adobe, BEA, IBM, Oracle, SAP, Software AG, and Sun Microsystems.

[June 25, 2007] A group of six technology vendors, including Active Endpoints, Adobe, BEA Systems, IBM, Oracle, and SAP AG, has announced the publication of 'BPEL4People' specifications, which define an approach for integrating human interactions using Web Services Business Process Execution Language (WS-BPEL) 2.0.

In July 2005, IBM and SAP jointly issued a white paper "WS-BPEL Extension for People — BPEL4People." It describes scenarios where users are involved in business processes, and motivates and outlines appropriate extensions to WS-BPEL to address these scenarios.

BPEL4People as released in 2007-06 is now comprised of two specifications: WS-BPEL Extension for People (BPEL4People) Version 1.0 and Web Services Human Task (WS-HumanTask) Version 1.0. These two specifications take the ideas outlined in the white paper and together provide a concrete realization of them. BPEL4People extends the capabilities of WS-BPEL to support a broad range of human interaction patterns, allowing for expanded modeling of business processes within the WS-BPEL language.

The Web Services Business Process Execution Language, Version 2.0 specification "introduces a model for business processes based on Web services. A BPEL process orchestrates interactions among different Web services. The language encompasses features needed to describe complex control flows, including error handling and compensation behavior. In practice, however many business process scenarios require human interactions. A process definition should incorporate people as another type of participants, because humans may also take part in business processes and can influence the process execution."

The WS-BPEL Extension for People (BPEL4People) Version 1.0 specification introduces a BPEL extension to address human interactions in BPEL as a first-class citizen. It defines a new type of basic activity which uses human tasks as an implementation, and allows specifying tasks local to a process or use tasks defined outside of the process definition. This extension is based on the WS-HumanTask specification.

The Web Services Human Task (WS-HumanTask) Version 1.0 specification "introduces the definition of human tasks, including their properties, behavior and a set of operations used to manipulate human tasks. A coordination protocol is introduced in order to control autonomy and life cycle of service-enabled human tasks in an interoperable manner."

According to Charles Abrams, Research Director, Gartner, Inc: "It's becoming increasingly critical to understand and support human interactions when modeling business processes. The publication of these specifications is a substantial step in bridging human and IT interactions within the WS-BPEL language."

WS-BPEL focuses on business processes that orchestrate Web service interactions. However, in general, business processes are comprised of a broad spectrum of activities that most often require the participation of people to perform tasks, review or approve steps and enter data _EMMM for example, a credit approval scenario that may require approval on certain transaction limits or activity levels. These human interactions are now addressed in the new BPEL4People specifications.

The authors of BPEL4People plan to submit the specifications to OASIS in the near future, and will propose a Technical Committee to produce an OASIS standard based on it. OASIS (Organization for the Advancement of Structured Information Standards) is a not-for-profit, international consortium that drives the development, convergence and adoption of e-business standards.

Bibliographic Information

  • WS-BPEL Extension for People (BPEL4People) Version 1.0. June 2007. 52 pages. Copyright © 2007 Active Endpoints Inc., Adobe Systems Inc., BEA Systems Inc., International Business Machines Corporation, Oracle Inc., and SAP AG. By: Ashish Agrawal (Adobe), Mike Amend (BEA), Manoj Das (Oracle), Mark Ford (Active Endpoints), Chris Keller (Active Endpoints), Matthias Kloppmann (IBM), Dieter König (IBM), Frank Leymann (IBM), Ralf Müller (Oracle), Gerhard Pfau (IBM), Karsten Plösser (SAP), Ravi Rangaswamy (Oracle), Alan Rickayzen (SAP), Michael Rowley (BEA), Patrick Schmidt (SAP), Ivana Trickovic (SAP), Alex Yiu (Oracle), Matthias Zeller (Adobe).

    Available from IBM, Active Endpoints, SAP, and Adobe.

  • Web Services Human Task (WS-HumanTask) Version 1.0. June 2007. 133 pages. Copyright © 2007 Active Endpoints Inc., Adobe Systems Inc., BEA Systems Inc., International Business Machines Corporation, Oracle Inc., and SAP AG. By: Ashish Agrawal (Adobe), Mike Amend (BEA), Manoj Das (Oracle), Mark Ford (Active Endpoints), Chris Keller (Active Endpoints), Matthias Kloppmann (IBM), Dieter König (IBM), Frank Leymann (IBM), Ralf Müller (Oracle), Gerhard Pfau (IBM), Karsten Plösser (SAP), Ravi Rangaswamy (Oracle), Alan Rickayzen (SAP), Michael Rowley (BEA), Patrick Schmidt (SAP), Ivana Trickovic (SAP), Alex Yiu (Oracle), Matthias Zeller (Adobe).

    Available from IBM, Active Endpoints, SAP, and Adobe.

  • Earlier: WS-BPEL Extension for People — BPEL4People. A Joint White Paper by IBM and SAP. July 2005. 18 pages. Copyright (c) SAP AG and International Business Machines Corp 2005. Authors (alphabetically): Matthias Kloppmann (IBM), Dieter Koenig (IBM), Frank Leymann (IBM), Gerhard Pfau (IBM), Alan Rickayzen (SAP), Claus von Riegen (SAP), Patrick Schmidt (SAP), Ivana Trickovic (SAP). See the overview

  • Earlier: BPEL4People — How People Interact with Business Processes. By Ivana Trickovic (Standards Architect, SAP Platform Ecosystem Industry Standards Group, SAP AG). August 25, 2005. 4 pages. Copyright (c) 2005 SAP AG. SDN Community Contribution, available from The SAP Developer Network. "This article explains briefly the need for an extension to the Web Services Business Process Execution Language (WS-BPEL) that supports designing of how people interact with business processes. It should help readers understand why SAP and IBM have worked jointly on a proposal for user interactions in WS-BPEL... The technology discussed in this article is relevant for SAP NetWeaver. More precisely, it is related to layers that deal with the process integration and business process management.

  • Earlier: WS-BPEL 2.0 Extensions for Sub-Processes. A Joint White Paper by IBM and SAP. Copyright IBM, SAP AG. 13-October-2005. By Matthias Kloppmann (IBM), Dieter König (IBM), Frank Leymann (IBM), Gerhard Pfau (IBM), Alan Rickayzen (SAP), Claus von Riegen (SAP), Patrick Schmidt (SAP) and Ivana Trickovic (SAP). "Designing complex and large business processes requires a language that supports modularization and reuse in a portable, interoperable manner. This paper outlines an extension to WS-BPEL that allows for the definition of sub-processes that can be reused within the same or across multiple WS-BPEL processes. The paper describes different invocation scenarios and introduces a coordination protocol to be used for interoperable invocation of sub-processes across infrastructures from different vendors."

Specification Extracts

BPEL4People is comprised of two specifications including:

  • WS-BPEL Extension for People, which layers features on top of WS-BPEL to describe human tasks as activities that may be incorporated as first-class components in WS-BPEL process definitions.
  • Web Services Human Task introduces the definition of stand-alone human tasks, including the properties, behavior and operations used to manipulate them. Capabilities provided by Web Services Human Task may be utilized by Web services-based applications beyond WS-BPEL processes.

Excerpt from WS-BPEL Extension for People

The BPEL specification [itself] focuses on business processes the activities of which are assumed to be interactions with Web services, without any further prerequisite behavior. But the spectrum of activities that make up general purpose business processes is much broader. People often participate in the execution of business processes introducing new aspects such as interaction between the process and user interface, and taking into account human behavior.

The WS-BPEL Extension for People specification introduces a set of elements which extend the standard BPEL elements and enable the modeling of human interactions, which may range from simple approvals to complex scenarios such as separation of duties, and interactions involving ad-hoc data. The specification introduces the people activity as a new type of basic activity which enables the specification of human interaction in processes in a more direct way. The implementation of a people activity could be an inline task or a standalone human task defined in the WS-HumanTask specification. The syntax and state diagram of the people activity, and the coordination protocol that allows interacting with human tasks in a more integrated way is described. The specification also introduces XPath extension functions needed to access the process context...

Section 3.1 "Generic Human Roles": Process-related generic human roles define what a person or a group of people resulting from a people assignment can do with the process instance. The process-related human roles complement the set of generic human roles specified in [WS-HumanTask]. There are three process-related generic human roles: Process initiator, Process stakeholders, and Business administrators.

Process initiator is the person associated with triggering the process instance at its creation time. The initiator is typically determined by the infrastructure automatically. This can be overriden by specifying a people assignment for process initiator. Compliant implementations MUST ensure that at runtime at least one person is associated with this role.

Process stakeholders are people who can influence the progress of a process instance, for example, by adding ad-hoc attachments, forwarding a task, or simply observing the progress of the process instance. The scope of a process stakeholder is broader than the actual BPEL4People specification outlines. The process stakeholder is associated with a process instance. If no process stakeholders are specified, the process initiator becomes the process stakeholder. Compliant implementations must ensure that at runtime at least one person is associated with this role.

Business administrators are people allowed to perform administrative actions on the business process, such as resolving missed deadlines. A business administrator, in contrast to a process stakeholder, has an interest in all process instances of a particular process type, and not just one. If no business administrators are specified, the process stakeholders become the business administrators. Compliant implementations must ensure that at runtime at least one person is associated with this role.

Language design: The BPEL4People extension is defined in a way that it is layered on top of BPEL so that its features can be composed with BPEL features whenever needed. All elements and attributes introduced in this extension are made available to both BPEL executable processes and abstract processes. The extension introduces a set of elements and attributes to cover different complex human interaction patterns, such as separation of duties, which are not defined as first-class elements...

Excerpt from Web Services Human Task

Human tasks, or briefly tasks enable the integration of human beings in service-oriented applications. This document provides a notation, state diagram and API for human tasks, as well as a coordination protocol that allows interaction with human tasks in a more service-oriented fashion and at the same time controls tasks' autonomy. The document is called Web Services Human Task (abbreviated to WS-HumanTask for the rest of this document).

Human tasks are services implemented by people. They allow the integration of humans in service-oriented applications. A human task has two interfaces. One interface exposes the service offered by the task, like a translation service or an approval service. The second interface allows people to deal with tasks, for example to query for human tasks waiting for them, and to work on these tasks.

A human task has people assigned to it. These assignments define who should be allowed to play a certain role on that task. Human tasks may also specify how task metadata should be rendered on different devices or applications making them portable and interoperable with different types of software. Human tasks can be defined to react on timeouts, triggering an apropriate escalation action.

This also holds true for notifications. Notifications are a special type of human task that allows the sending of information about noteworthy business events to people. Notifications are always oneway, i.e., they are delivered in a fire-and-forget manner: The sender pushes out notifications to people without waiting for these people to acknowledge their receipt...

The goal of this specification is to enable portability and interoperability:

  • Portability — The ability to take human tasks and notifications created in one vendor's environment and use them in another vendor's environment.
  • Interoperability — The capability for multiple components (task infrastructure, task list clients and applications or processes with human interactions) to interact using well-defined messages and protocols. This enables combining components from different vendors allowing seamless execution.

The WS-HumanTask language introduces a grammar for describing human tasks and notifications. Both design time aspects, such as task properties and notification properties, and runtime aspects, such as task states and events triggering transitions between states are covered by the language. Finally, it introduces a programming interface which can be used by applications involved in the life cycle of a task to query task properties, execute the task, or complete the task. This interface helps to achieve interoperability between these applications and the task infrastructure when they come from different vendors.

WS-HumanTask utilizes the following specifications: WSDL 1.1; XML Schema 1.0; XPath 1.0; WS-Addressing 1.0; WS-Coordination 1.1; WS-Policy 1.5...

From the Announcement

From the announcement of 2007-06-25: "Leading Technology Vendors Announce Publication of 'BPEL4People'. Extends WS-BPEL 2.0 OASIS Standard, Submission to OASIS Imminent."

"BPEL4People represents an important addition to the BPEL lexicon," said Fred Holahan, co-founder and chairman of Active Endpoints. "Human interactions are fundamental to many business processes, and BPEL4People provides a flexible way to model those interactions using BPEL, the definitive Web service orchestration standard."

"Adobe is dedicated to creating rich and immersive online and offline experiences. BPEL4People is a tremendous milestone in closing the gap between human behavior and structured business processes and establishing standards for effective process management," said Kumar Vora, vice president of product strategy, Adobe. "WS-Human Task extends the ability for organizations to use open-source Flex to build standards-based applications that are intuitive and interactive."

"BEA is committed to helping advance industry standard for truly interoperable business process technologies. Toward this end, we contributed to the WS-BPEL specification and now the specifications for BPEL4People," said Ed Cobb, vice president, Emerging Technologies and Standards, BEA Systems, Inc. "We believe that the extensions defined by BPEL4People are an important step forward, designed to allow for standardized involvement of manual tasks into WS-BPEL processes."

"Our customers are using WS-BPEL to define business processes based on Web services," said Karla Norsworthy, vice president of software standards, IBM Software Group. "With BPEL4People, they will find it much simpler to model the many complex ways in which people participate in business processes."

"As one of the original supporters and early implementers of BPEL, Oracle is pleased to see the specification evolve to meet the needs of technical and business level users," said Don Deutsch, vice president, Standards Strategy and Architecture, Oracle. "With our support of BPEL4People, we are making it easier for customers to integrate their human workflow processes into heterogeneous application environments and implement service-oriented architectures."

"It's exciting to see the outcome of early thinking by SAP and IBM about the need to address human interactions and tasks within business processes in a SOA environment," said Michael Bechauf, vice president, industry standards, SAP AG. "By simplifying the design of business process and enabling standards-based integration of human interactions within business applications, these specifications will help speed the pace of business and reduce integration costs substantially."

Commentary

  • [June 25, 2007] "Yo! BPEL4People Specifications Released — and WS-HumanTask too!" By Alan Rickayzen (SAP). Blog. "Business Process Management has that gaping hole called human-integration not just plugged with a stopper but plugged with a standardized funnel to just about every type of software involving human interaction... In a nutshell: The BPEL4People specifications put down in writing exactly which XML messages flow through your enterprise to enable human interaction in processes in a standardized (cross-vendor) way. The specifications deliver the promise setup two years ago in SAP and IBM's BPEL4People whitepaper. All the proposed constellations are supported. Virtually all definition aspects; tasks, notifications, escalations, who may perform a task, who may not... and operations; query, forwarding, nominating, attachments, are supported, too. But it's been split into two for super-charged modularity: (1) The BPEL4People socket to enable human activities to be plugged into processes; (2) The WS-HumanTask plug to attach tasks/todos to processes, inboxes, or even hard-coded composites requiring task-like interaction... It covers interoperability where previously the focus of BPEL had been portability..."

  • [June 25, 2007] "BPEL4People Aims to Bridge Gap Between Humans and SOA. BPEL4People Standard for SOA-based Business Processes Heads to OASIS." By Rich Seeley. From SearchWebServices.com (June 25, 2007). "Recognizing that service-oriented architecture (SOA) business processes involve people too, a group of vendors today published specifications aimed at extending the Business Process Execution Language (BPEL) 2.0 standard to include human interaction. The BPEL4People specifications will be submitted to the OASIS standards body in the fall, but are ready for developers and architects to download today from the Web sites of the participating vendors, said Ed Cobb, vice president for emerging technologies and standards at BEA Systems Inc. The other vendors supporting the specifications are IBM, Oracle, SAP AG, Adobe Systems Inc. and Active Endpoints Inc.

  • [June 25, 2007] "BPEL4People Humanizes SOA." By Eric Knorr. From InfoWorld (June 25, 2007).

  • [April 11, 2007] "SOA and Human Interaction." By Johan den Haan. From The Enterprise Architect: Building an Agile Enterprise. "The de facto standard for web services orchestration seems to be BPEL. This standard, however, doesn't specifically cover user interactions. This leaves us with the question: what is the right way to include human interaction in a BPEL process? [...] Just using a Workflow Service means no standardization at all. Each vendor defines its own Workflow Service depending on the specific needs. BPEL4People on the other hand standardizes a lot, but not everything. Some gaps have to be filled in, but it provides a solid base. However, I do not like the fact that BPEL4People extends the existing BPEL standard with new activities and task definitions. BPEL provides a nice orchestration standard on an abstract level. Including links to specialized services (like the people link) instead of only links to 'abstract services' weakens the abstraction and opens doors for all kind of other extensions. I think a better approach would be to use the foundations of BPEL4People to standardize the interface of a Workflow Service..."

  • [March 20, 2007] BPEL4People: Extending WS-BPEL for People. By Ta'id Holmes [WWW]. Masters Thesis. Carried out at the Information Systems Institute Distributed Systems Group, Vienna University of Technology, under the guidance of Univ.Prof. Mag. Dr. Schahram Dustdar. March 20, 2007. 70 pages. Matr.Nr. 9625914. "BPEL, an XML based language, formally describes business processes and business interaction protocols. While WS-BPEL processes support automated process integration, there is a need to support human tasks, which naturally comes with new requirements. BPEL4People is a joint project of IBM and SAP that describes scenarios where users are involved in business processes, and defines appropriate extensions to WS-BPEL, exclusively using web service interfaces for maximum interoperability. Integration of human tasks into BPEL processes is achieved by defining a people activity, that encapsulates a human task, as a concrete implementation of a BPEL activity. This thesis proposes a concrete specification of BPEL4People that defines syntax and semantics that complies with the WS-BPEL specification. Finally, a generic BPEL4People system is realised that can to be coupled with a BPEL engine in order to integrate human tasks into business processes." See also the poster [cache], and SourceForge BPEL4People Project: "This project proposes a concrete BPEL4People syntax that complies with the WS-BPEL specification and realises a system that can be coupled with a BPEL engine in order to integrate human tasks into business processes." See the BPEL4People Research Prototype.

  • [February 14, 2007] "BPEL4People White Paper Overview." "This 10 minute 55 second podcast from gives you a short introduction to BPEL4People, the joint white paper from SAP and IBM proposing an extension to BPEL to cover human integration in processes."

  • [April 12, 2006] "BPEL Processes and Human Workflow: Using BPEL in business processes that require human interaction." By Matjaz Juric and Doug H. Todd. From SOA Web Services Journal (April 12, 2006).

  • [February 28, 2006] "BPEL4People Revisited." By Bruce Silver. From BPMInstitute.org (February 28, 2006). "Last summer IBM and SAP proposed something called BPEL4People, an optional extension to BPEL 2.0 that would at last standardize human tasks in a BPEL process. They published a couple white papers on the subject, put out a press release, and then went silent. Essentially nothing has been heard from them since. Recently I began to hear references to BPEL4People again, and I went back to re-read the white papers. They're nowhere close to a spec, but essentially description of a workflow "model" followed by an outline of how that model, in 5 different use cases, will be implemented in the ultimate BPEL4People specification. The first part basically recites the core concepts of traditional workflow software — activities and tasks, roles and role resolution, deadlines and escalation, worklists and task claiming — familiar to any bank, insurance company, utility, or government agency who has implemented workflow since the late 1980s. The second part asserts that grafting workflow functionality onto BPEL 2.0 really demands addition of a new activity type (a People activity) to the language. Adding a new activity type is a big deal, since straight BPEL 2.0 engines won't be able to implement it. Besides, virtually all BPEL-based BPMSs handle human workflow today without a special activity type. Instead, they typically provide a task management service — an out-of-the-box web service that manages human tasks — plus a web application, typically called a Worklist, through which participants view, claim, and perform their assigned tasks. Standard BPEL calls human tasks by invoking the task management service. This service, external to the BPEL, performs task role resolution and state management, and monitors deadlines and escalation logic. When the task is complete (or failed), the task management service calls back the process with the results..."

Principal References


Hosted By
OASIS - Organization for the Advancement of Structured Information Standards

Sponsored By

IBM Corporation
ISIS Papyrus
Microsoft Corporation
Oracle Corporation

Primeton

XML Daily Newslink
Receive daily news updates from Managing Editor, Robin Cover.

 Newsletter Subscription
 Newsletter Archives
Bottom Globe Image

Document URI: http://xml.coverpages.org/ni2007-06-25-a.html  —  Legal stuff
Robin Cover, Editor: robin@oasis-open.org