Conclusion
We have seen that BPEL is an efficient language for describing business processes. It provides support for the complexities of real-world business process implementations but is still relatively easy to learn and use. In this chapter we have become familiar with the advanced concepts of BPEL, such as loops, process termination, delays, and deadline and duration expressions. We have addressed fault handling, which is a very important aspect of each business process. Particularly in BPEL processes, which use loosely coupled web services for partner operations, faults can occur quite often. We have discussed scopes, which enable us to break the process into several parts. Each part or scope can have its own variables, correlation sets, fault handlers, compensation handlers, and event handlers. In addition scopes can provide concurrency control through serialization.
Another very important aspect of business processes is compensation. In business processes consistency has to be preserved...