
Business Process Execution Language for Web Services (BPEL, WS-BPEL, or BPEL4WS) is the commonly accepted standard for defining business processes with composition of services. It is the cornerstone of Service-Oriented Architecture (SOA). With its ability to define executable and abstract business processes, it plays an important role in business process management. BPEL is supported by a majority of software vendors including Oracle, IBM, Microsoft, SAP, and others.
This book explains the role of BPEL when building SOA composite applications with Oracle SOA Suite 11g. It explains the BPEL 2.0 standard, the role of BPEL in SOA, and provides a step-by-step guide to designing and developing BPEL processes. The book also covers several related technologies and products, such as Oracle Business Activity Monitoring (Oracle BAM), Oracle Service Bus (OSB), Oracle Service Registry (OSR), Oracle Business Process Analysis Suite (Oracle BPA Suite), and Oracle Business Process Management Suite (Oracle BPM Suite).
Chapter 1, Introduction to BPEL and SOA, provides a detailed introduction to BPEL and Service-Oriented Architecture (SOA). It discusses business processes and their automation, explains the role of BPEL, Web Services, and Enterprise Service Bus (ESB) in SOA, provides insight into business process composition with BPEL, and explains the most important features.
Chapter 2, Service Composition with BPEL, discusses the composition of Web Services with BPEL. The chapter introduces the core concepts of BPEL and explains how to define synchronous and asynchronous business processes with BPEL. The reader gets familiar with the BPEL process structure, partner links, sequential and parallel service invocation, variables, conditions, and so on.
Chapter 3, Advanced BPEL, goes deeper into BPEL specifications and covers advanced features for implementing complex business processes. Advanced activities, scopes, fault handling, compensations, event handling, correlation sets, concurrent activities and links, process lifecycle, dynamic partner links, and other BPEL 2.0 features are covered in detail.
Chapter 4, Using BPEL with Oracle SOA Suite 11g, explains how to develop, deploy, test and manage BPEL processes as part of SOA composite applications in Oracle SOA Suite 11g using Oracle SOA Composite Editor, Oracle BPEL Component Designer, and Oracle Enterprise Manager Console.
Chapter 5, BPEL Extensions, Dynamic Parallel Flow, Dynamic Partner Links, Notification Service, Java Embedding, and Fault Management Framework and Chapter 6, Entity Variables, Master and Detail Processes, Security, and Business Events in BPEL, take a detailed look at several advanced topics of using BPEL with Oracle SOA Suite 11g, such as dynamic parallel flows, dynamic partner links, Java embedding, fault management framework, entity variables, master and detail processes, security policies, business events, and more.
Chapter 7, Human Interactions in BPEL, explains how to enable human interaction in BPEL processes using the Human Task service component. The chapter discusses Oracle Human Workflow architecture and features. The reader gets familiar with how to design a human task, how to create ADF-based human task web forms, and how to access and act on tasks using the Oracle BPM Worklist Application.
Chapter 8, Monitoring BPEL Processes with BAM, discusses how to capture and monitor real-time information about the execution of business activities to improve business process effectiveness. It explains the Oracle BAM architecture and features. The chapter also discusses how to use data objects, sensors, sensor actions, monitoring objects, and how to build BAM dashboard.
Chapter 9, BPEL with Oracle Service Bus and Service Registry, explains how to ensure loose coupling between different components of the SOA architecture by using the Oracle Service Bus (OSB) and Oracle Service Registry (OSR). The chapter explains the OSB and OSR architecture and features. The reader gets familiar with how to publish business entities and services to OSR using the Registry Control console, how to import and export resources between OSB and OSR using the Oracle Service Bus Console, how to create OSB projects, business and proxy services. The chapter also covers some advanced features of OSB, such as service-result caching and monitoring.
Chapter 10, BPMN to BPEL Round-tripping with BPA Suite and SOA Suite, explains how to eliminate the semantic gap between IT and process models through automated translation between BPMN and BPEL using Oracle Business Process Analysis Suite (Oracle BPA Suite) and Oracle SOA Suite. The chapter discusses Oracle BPA Suite architecture and features and how various constructs map between BPMN and BPEL. The reader gets familiar with how to model a BPMN business process, how to convert a BPMN model into a BPEL Blueprint, how to import the generated BPEL code in JDeveloper, and how to propagate changes from BPEL code back to the BPMN model.
Chapter 11, Integrating BPEL with BPMN using BPM Suite, presents an interesting new feature provided by Oracle Business Process Management Suite 11g (Oracle BPM Suite 11g) - the BPMN 2.0 service engine. It allows direct execution of BPMN 2.0 processes, without the need to transform them to BPEL. The chapter discusses Oracle BPM Suite architecture and features, and demonstrates how both, BPMN and BPEL processes can be used inside a single SOA composite application.
Appendix A, WS-BPEL 2.0 Syntax Reference, provides a syntax reference for the WS-BPEL Web Services Business Process Execution Language Version 2.0, OASIS Standard as defined in the specification dated April 11, 2007.
Appendix B, BPEL 1.1 Syntax Reference, provides a syntax reference for the BPEL (BPEL4WS) version 1.1 as defined in the specification dated May 5th, 2003.