Web applications usually have business logic, workflow, integration with existing enterprise applications such as SAP/JDE/EBS/SDFC, and packages such as Java/ASP.NET. An example of workflow that can be part of a web application is order processing. A typical order processing workflow contains references to services, or in other words, consumes services such as create order, process payment, send order to warehouse, check inventory, process, and send order to customers. The order processing service illustrates a typical Business Process Execution Language (BPEL) process scenario.
BPEL is a replacement to simplify your workflow and also, to some extent, a replacement to the custom code that describes and implements the business workflow. Typical web applications require more than one service to fulfill the business requirements. The key challenges are: how to create the services and how to orchestrate the services. We can use BPEL for describing, integrating, and orchestrating a business workflow.
BPEL is an XML-based programming language used for describing high-level business processes. The WS-BPEL standard facilitates the orchestration of business processes and externalizes the processes as services. BPEL also facilitates the interaction either among organizations or between different applications within an organization.