IBM BPM, V8.0.1, All platforms > Get started with IBM BPM > Key concepts > BPEL processes and human tasks > BPEL processes overview

Invocation scenarios for BPEL processes

A BPEL process is a Service Component Architecture component implementation. It can expose services to other partners and consume services provided by other partners. A BPEL process can be a service provider that is made available by the Business Process Choreographer APIs, an SCA service provider for other SCA service components, or an SCA client that invokes other SCA service components, including other BPEL processes.

BPEL processes as service providers that are made available by the Business Process Choreographer APIs

You can use the Business Flow Manager API to instantiate BPEL processes. These client applications can create and start BPEL process instances, and query and work with existing process instances. The Business Flow Manager API is provided as an EJB, a web service, a JMS message interface, and a REST interface that you can use to design EJB, web service, JMS, and REST clients.

Business processes as SCA service providers for other SCA service components

In this invocation scenario, a business process represents an SCA component that can be invoked by other SCA components acting as clients. As an implementation of an SCA component, services provided by a BPEL process can be invoked from SCA clients. These mechanisms include:

  • Wires for connecting an SCA client (reference) and the interface of a component that represents a business process
  • SCA qualifier settings for component references and interfaces that determine aspects, such as interaction style, transaction behavior, and interaction reliability

BPEL processes as SCA clients that invoke other SCA service components

A BPEL process can call another business process. This can be done using SCA wiring within the same module or across modules. SCA wiring statically associates a caller with another service, also known as early binding. When invoking a service offered by another process, late binding can be used to select the version of the process that is currently valid. This is done using a specification at the partner link of the calling process.

BPEL processes as SCA clients that invoke other business processes

If both the SCA client and the SCA services are represented by BPEL processes, you can select both of them on the SCA level and on the BPEL process level. On the SCA level, you can use SCA wires to connect the SCA client to SCA services. On the business process level, you can associate partner links with the names of the business processes that act as service providers.


See

  1. Factors affecting BPEL process interactions
  2. Dynamic binding between BPEL processes and services
  3. Data exchange between BPEL processes and services

BPEL processes overview


Related concepts:
BPEL processes
Transactional behavior of BPEL processes


Related tasks:
Developing client applications for BPEL processes and tasks