Chapter 6 Building an Executable BPM: Working with Service Description Objects


Executable BPM Basics

The executable BPM allows you to retrieve the work performed at the analysis level and to refine it by specifying the implementation of atomic processes.

The executable BPM focuses on the implementation of one side of the collaboration in a collaborative BPM. It focuses on the execution of distributed components. You use the executable BPM to design a process internal to an organization.

The executable BPM is a choreography of different activities. The main activity is the invocation of external services that can be:

The executable BPM can help you reduce implementation time. It is a bridge to your choice of implementation environment, as it allows you to generate XML formats or code artifacts for specific process engines. You will not have to redefine the BPM again within the target process engine. The BPM can be executed using generation targets that describe the business process in a way the required engine can process it.

Executable business process diagram objects

You can create the following objects in an executable business process diagram, in additon to those that are available in an Analysis diagram:

Objects Tool Description
Top-level process Global service that does not belong to a graph but describes its behavior in a sub-graph.
Service provider Object that gathers a set of service interfaces, for which it represents a namespace. See Service Providers (Executable BPM).
Service interface Object that gathers a set of operations, for which it represents a namespace. See Service Interfaces (Executable BPM).
Operation Implementation for an atomic process (activity). See Operations (Executable BPM).
XSD document Defines the data schema handled by a service provider. See XSD Documents (Executable BPM).
Data transformation
Used to copy data from one variable to another.
Variable Data container local to a process.
Correlation key Ordered list of variables.
Event Manages interruptions in the normal execution of the process.

For more information about objects designed for executable diagrams that are not described in this chapter, see the Building an Executable BPM: Managing Data and Choreography chapter.

Supported generation targets

In the executable BPM, the following generation targets are supported:

Generation target Description
BPEL4WS 1.1 (Business Process Execution Language for Web services) Public XML-based workflow definition language that allows businesses to describe processes that can both consume and provide Web services. Essentially, BPEL4WS is a common construct for addressing business process semantics within a heterogeneous enterprise and among diverse external business partners. For more information about this generation target, see the Working with BPEL4WS chapter.
Sybase Unwired Orchestrator 4.3 Proprietary assembling tool for application integration and Web services. With this tool, companies rapidly integrate systems and can access, analyze and act-upon information from a variety of sources. For more information about this generation target, see the Working with Sybase Unwired Orchestrator chapter.
Sybase WorkSpace Business Process 1.5 Unified application development environment, which is the first to bridge the gap between the vision of a service-oriented architecture (SOA) and the reality of traditional development tools .For more information about this generation target, see the Working with Sybase WorkSpace Business Process chapter.
SOA (Service Oriented Architecture) Logical executable process language that allows you to orchestrate your processes without being linked to any platform or language. For more information about this generation target, see the Working with Service Oriented Architecture (SOA) chapter

Why building an executable BPM?

It allows you to easily integrate your business activities with those of your partners, disregarding the specific development platform each party has chosen to use and to focus on business solution.

The executable BPM corresponds to the implementation phase of the business process modeling. This phase occurs once your BPM is validated, optimized, and that you know exactly what to do to implement the process.

Each step within the process corresponds to a single business activity that is implemented as an interaction with a Web service. For each given activity, you need to check whether you can reuse an existing distributed component to accomplish it.


For more information about how to retrieve web services in a BPM, see section Importing WSDL (Executable BPM).

You can then represent the retrieved Web services using service description objects. These objects do not have any graphical symbol in the diagram.

For more information about service description objects, see sections Service Providers (Executable BPM), Service Interfaces (Executable BPM), and Operations (Executable BPM).

For the Web service to be properly used by the process (or activity) that calls it, you have to define specific properties in the process property sheet and orchestration elements.

For more information about the call of a Web service by a process, see section Defining processes in an executable BPM in chapter Building an executable BPM: Managing Data and Orchestration.

 


Copyright (C) 2007. Sybase Inc. All rights reserved.