<pre>Author/s : Matjaz Juric, Benny Mathew, Poornachandra Sarang Publisher : Packt Publishing Category :Web Services and SOAP Review by : Jeanne Boyarsky Rating : 8 horseshoes</pre> "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.
<pre>Category :Web Services and SOAP Review by : Ulf Dittmer Rating : 6 horseshoes</pre> The book starts off with a couple of chapters giving the motivation for why one might want to use BPEL, and an overview of the complete Web Services stack that supports it. As a number of those standards are not in widespread use, this provides some helpful context.
The heart of the book are two chapters that explain BPELs capabilities, and show them in action in an example that gets expanded step by step to make use of all those features. This is a sensible approach, as each step introduces just a bit more new stuff than the previous one covered.
Almost half of the book is taken up by introductions to two commercial BPEL servers from Oracle and Microsoft. This may be helpful for a reader who happens to run those products, but doesn't further the insight into BPEL itself.
The final chapter provides a reference to all BPEL features and constructs, which were introduced earlier in the book.
After reading the book, this reviewer had a much better feeling for what BPEL can and can not do. The lasting impression, though, is that BPEL sits on top of a large stack of WS-* standards, most of which struggle for adoption themselves, and that use of it should be considered carefully, as there may be simpler ways of achieving what it strives for.
The overall style is dry and technical, and a more thorough editing might have done some good, but the book is quite readable nonetheless.