BPEL servers provide a run-time environment for executing BPEL business processes. Today BPEL servers are usually part of the SOA platform, which in addition to the BPEL server includes other elements of a complete SOA environment: application server, ESB, registry and repository, human tasks support, process monitoring, BRMS (Rule Engine), and adapters. Often a development environment is also included and sometimes a process modeling tool is also available. Most advanced SOA platforms support the automatic translation of business models into executable BPEL processes.
Most SOA platforms have been developed on top of modern software platforms, particularly Java Enterprise Edition and Microsoft .NET. BPEL servers leverage Java Enterprise Edition or .NET application server environments, where they can make use of the services provided by application servers, such as security, transactions, scalability, integration with databases, components such as EJBs (Enterprise Java Beans) and COM+ (Component Object Model), messaging systems such as JMS (Java Message Service) or MSMQ (Microsoft Message Queue), and so on.
The most important commercial SOA platforms with BPEL servers are listed as follows:
IBM WebSphere (WebSphere Process Server) (http://www.ibm.com/software/solutions/soa/)
Oracle SOA Suite (BPEL Process Manager) (http://www.oracle.com/technologies/soa/soa-suite.html)
Oracle Sun Java Composite Application Platform Suite (http://developers.sun.com/javacaps/)
TIBCO ActiveMatrix (ActiveMatrix BusinessWorks) (http://www.tibco.com/products/soa/default.jsp)
InterSystems Ensemble (http://www.intersystems.com/ensemble/index.html)
Fujitsu Interstage (Business Process Manager) (http://www.fujitsu.com/global/services/software/interstage/)
Hitachi uCosminexus Service Platform (http://www.hitachi.co.jp/Prod/comp/soft1/global/prod/cosminexus/sol/sp/sp_view.html)
Software AG webMethods (http://www.softwareag.com/Corporate/products/wm/default.asp)
Intalio BPM (http://www.intalio.com/products/bpm/)
Fiorano SOA Platform (http://www.fiorano.com/products/fsoa/products_fioranosoa.php)
Active Endpoints ActiveVOS (http://www.activevos.com/)
OpenLink Virtuoso Universal Server (http://virtuoso.openlinksw.com/)
Parasoft BPEL Maestro (http://www.parasoft.com/jsp/products/home.jsp?product=BPEL)
PolarLake Integration Suite (http://www.polarlake.com/)
Microsoft also provides an SOA platform, although Microsoft does not use the acronym SOA as often as the other suppliers. Microsoft's SOA is built around Windows Workflow Foundation, Windows Communication Foundation, and Microsoft BizTalk (process server). In contrast to most of the other vendors, Microsoft does not support BPEL natively (yet). Microsoft BizTalk at the time of writing still uses XLANG/s, the Microsoft proprietary orchestration language. However, it allows the import and export of BPEL.
An important supporter of SOA is SAP. SAP Enterprise Service-Oriented Architecture (Enterprise SOA) has been defined by SAP as an open architecture for adaptive business solutions. Enterprise SOA is enabled by the SAP NetWeaver platform. SAP has positioned Enterprise SOA to deliver the benefits offered by service-oriented architecture, including enabling both flexibility and business efficiency. Most of SAP products, such as mySAP ERP, mySAP CRM, and mySAP SRM, are built upon Enterprise SOA.
There are also a few open source implementations:
JBoss Enterprise SOA Platform (Red Hat) (http://www.jboss.com/products/platforms/soa/)
Open ESB (https://open-esb.dev.java.net/)
ActiveBPEL Engine (http://www.activebpel.org/)
bexee BPEL Execution Engine (http://sourceforge.net/projects/bexee)
Apache Agila (http://wiki.apache.org/agila/), formerly known as Twister
In the following chapters, we will use IBM WebSphere SOA platform, including WebSphere Process Server, WebSphere Integration Developer, and WebSphere Business Modeler. Please remember that BPEL is an open specification; therefore, it does not differ between the products. BPEL code is portable between different BPEL servers. This holds true as long as you are not using some vendor-specific extensions. Therefore, in the next chapters we will first look at standard BPEL. Then, we will look at how to use BPEL using IBM WebSphere.
OASIS has been responsible for the further development of BPEL since April 2003. An OASIS Technical Committee, called WSBPEL TC, has been formed for the development of a new BPEL version, called WS-BPEL 2.0. The technical committee, which supervises and influences further development of BPEL, has many new members. This ensures that BPEL will be extended with new features and also ensures continuity of development. The number of participants involved in BPEL shows that industry support is large and still increasing. More information on WSBPEL TC can be found at http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel.