BPEL stands for Business Process Execution Language. Originally authored by a small charter of vendors in the software industry, it is currently under standardization at OASIS (1).
The specification delivers "a model and a grammar for describing the behavior of a business process based on interactions between the process [coordinator] and its partners. Interaction with each partner occurs through Web Service interfaces".
BPEL has quickly become the dominant specification to standardize orchestration logic and process automation between Web services. It has bypassed a number of alternative specifications such as BPML and WSCI, and became a real candidate to drive the existing web service infrastructure into process-centric applications based on a service-oriented architecture.
Recent products and strategies announced by IBM, BEA, Microsoft and Oracle are targeted at the service-oriented architecture (2). SOA helps enterprises modify their infrastructure on the flight, according to changes in the environment. Under this model, new applications are developed by wiring together software components, or services, that expose reusable business functions (3).
Leveraging more from existing assets is a real business challenge right now. The idea of enabling legacy applications to be deployed as (web) services and orchestrated across platforms is a key part of why BPEL is becoming a cornerstone of SOA (4).
IBM and BEA worked together in a proposal named BPELJ, with the purpose of extending BPEL to integrate it more closely with the J2EE platform (5)
BEA will provide full support for BPELJ in the release of WebLogic Integration following version 8.1 (6). In addition, it has submitted a specification request (JSR 207) of an annotated Java syntax and APIs for developing business processes in Java and deploying them in J2EE containers (7)
IBM already offers that support as part of WebSphere Business Integration Server 5.1 (8)
Microsoft BizTalk 2004 includes BPEL import and export capabilities (9)
Oracle acquired Collaxa, a company that focused on implementing the standard since 2002 (10)
Despite its acceptance, it is recognized that BPEL remains an emerging technology. Challenges await those interested in near-term deployment. Version 1.1, dated May 5, 2003, contains plenty of gaps and ambiguities that should come as no surprise, considering these factors:
The separate roots of the specification ( 11). Microsoft initiated the adoption of Pi-Calculus with XLANG, whereas IBM revisited the use of Petri Nets with the Web Services Flow Language, WSFL. BPEL descends from both languages.
The immaturity of the overall Web services stack
The OASIS WS-BPEL technical committee is working diligently to overcome these deficiencies. It released the first draft of version 2.0 in July 30, 2004 and continues to publish drafts periodically as it resolves issues. Version 2.0 is receiving contributions from a much broader community and becoming the standard everyone wants it to be.
OASIS Web Services Business Process Execution Language TC
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel
Service-Oriented Architecture
http://inews.webopedia.com/TERM/S/Service_Oriented_Architecture.html
IBM Refocuses WebSphere on Service-Oriented Architectures
http://www.rednova.com/news/stories/3/2004/04/30/story103.html
IBM Unveils First SOA Products, Services
BEA, IBM Propose Java/BPEL 'Marriage'
BEA - BPEL & BPELJ
JSR 207: Process Definition for Java
WebSphere Business Integration Server Foundation
MSDN - Importing BPEL4WS
Oracle BPEL Process Manager
http://www.oracle.com/technology/products/ias/bpel/index.html
A Convergence Path toward a Standard BPM Stack