Matjaz B. Juric | Benny Mathew | Poornachandra Sarang
1 bpel by example
"Business Process Execution Language for Web Services" is a good tutorial and reference for BPEL. The authors state that the book is targeted towards current web services developers and architects. Appropriately, the book assumes knowledge of XML, UML, and of course, web services.
The book was written by three authors and the chapters are separated by author. One author wrote chapter one, which includes an overview of BPEL, concrete examples of workflow and how BPEL fits into the big picture. The main author wrote chapters two through four, which flow well and teach BPEL through a running example, along with describing Oracle's BPEL tools. The third author wrote chapter five, which describes Microsoft's BPEL tools. The book ends with a clear, concise syntax reference. While all the chapters provide valuable information, the first and last chapters seem disjointed from the remainder of the book.
There are plenty of diagrams to show architecture and flow, something very important in BPEL. The meat of the book teaches BPEL, something it does very well. The examples in chapters two and three gradually grow in complexity and build on each other. When describing Oracle and Microsoft's tools, appropriate screenshots are provided. I recommend this book for anyone starting out with BPEL or just looking to learn it.
2 Excellent guide
An excellent book for beginners and for those who want to get familiar with advanced BPEL features. First chapter is a little weak but chapters two and three are great. This book is also a must for everybody working with Oracle BPEL Process Manager (chapter four). The examples are great. Highly recommended.
3 A good start in expressing business logic
Why this language? That is, why another language? Just a few years ago, XML reached a fairly stable state. Then WSDL came along, to describe Web Services. But it turned out that WSDL is really best suited for describing a single Web Service, or a simple interaction between 2 such services. As the authors relate, business logic is far more complex. Especially for the main envisioned scenario of interactions between services scattered across a panoply of companies.
You might want an orchestration of services, built around a central co-ordinating service. Or in other cases, you might have a flow of business messages, without a central service. This is termed choreography. These are 2 extremes. You might have some combination of the two. And more complex cases can be imagined.
The book points out that WSDL basically ran out of steam. It lacks the expressive power to easily handle the above cases; if it can even do so. Hence, BPEL arose to describe such logic in a programmatic fashion. The authors then go on to flesh out BPEL as it currently exists. While some of the examples, written in XML, are fairly verbose, if you keep in mind the basic ideas, they should be understandable.
You might also note that the book only touches on the possible complexity and nuances of business logic. It's fair to predict that in a few years, BPEL will be heavily expanded.