Chapter 8 Building an Executable BPM: Managing Data and Choreography
You have an analysis or collaborative model for which you want to automate processes using an executable language. In this case, for each atomic process (activity), you have to indicate the way to implement it using operations and you have to manage data shared by the processes.
You may also have a WSDL that only describes the structural aspect of a given functionality, and you want to specify the sequence of operations to perform the global functionality.
Once you have defined your business process and the connections with business partners, you need to provide a mechanism to coordinate all the activities involved, in order to generate a reliable outcome.
An executable business process involves a number of Web services (represented by service providers) that work together to provide a common solution. Each of those services needs to be able to coordinate their activities in order for the whole process to succeed. Coordination occurs when you have each Web service share a bit of common information that can be used to link the individual activities to the overall process.
In analysis models, data are conveyed by flows coming into the process. On the other hand, data in executable models are shared with all the processes of a same level. Acquisition of data is performed by the reception of messages (designed as a process implemented by an operation). Data can be transformed in order to create other data that will be sent by the process. These data can be:
Information messages exchanged between Web services contain data that are essentially of two kinds:
Data are managed in the executable BPM using the following objects:
Coordination of Web services is also called choreography. It is a top-down view that describes Web services interactions. It allows you to understand the nature and order of messages exchanged between a Web service and its consumers or peers.
The following elements are used in the executable BPM to manage Web services choreography:
The following BPM objects are not supported in the executable BPM:
Copyright (C) 2007. Sybase Inc. All rights reserved. |