Information Technology Reference
In-Depth Information
the matching instances. Partner services and original messages dei ni-
tions, however, are not required to be altered in any way when correla-
tions are performed transparently on the other side of a conversation. In
our example, a job ID qualii es as a simple process identii er. Together
with the job status, it should be included in the callback message to distin-
guish a process instance. Given that it will be the same instance of the
monitor service that allocates the job ID, this will not be difi cult. As we
can see, message correlation is essential for maintaining application con-
sistency in extensive service interactions.
Lastly, we have not yet pointed this out explicitly, but any services
participating in a BPEL process, like the submission service or the monitor
service in the example, can themselves be BPEL processes as opposed to
implementations in Java, .net, or by other technologies. Thanks to the
intrinsic composability, BPEL processes deployed as Web services can be
seamlessly integrated into the Web-service architecture pretty much effort-
lessly. As a matter of fact, when a BPEL process becomes reasonably com-
plex in practice as one continues streamlining the initial design for
performance, scalability, deployment, and other reasons, the top-down
modeling approach usually ends up breaking down the process into sub-
process modules so that they themselves in turn can be further optimized
and mixed up with BPEL processes and normal services in coordination.
An in-production BPEL application is hence usually made up of a number
of workl ows that establish the hierarchical dependencies with each other
to enable sophisticated interaction modeling.
8.4
Process modeling is about structuring activities into proper control l ows
that map to an application process. BPEL supports common structure con-
trols similar to those found in modern programming languages, like while ,
repeat until , if , and so on. While is a notation of controlled looping, whose
enclosing process loops through all iterations one after another until
the condition is no longer held true. Repeat until is similar to while , only the
i rst iteration is always executed regardless of condition. If specii es how to
branch a workl ow on conditions, including an optional default branch.
Other BPEL controls like sequence and l ow prescribe the order in which
their containing activities should be executed.
Proper support for parallelization is fundamental in grid computing. Flow
allows the embedding of concurrent procedures in processes. Typical use
cases are found in business process modeling. Small business logic can be
rearranged in parallel to maximize the execution efi ciency of the overall
business process. Dependencies between sublogics can be synchronized
Flow Control
 
 
Search WWH ::




Custom Search