Recently I went on a 4 week hiking trip to Peru and Bolivia so I needed to read a book that would allow me to delve in and out at short notice. What better than a patterns book. So I took with me SOA Design Patterns.
I started in Lima, then spent a week in the rain forest, onto Cusco, 3 day hike to Machu Picchu, a home stay on Lake Titicaca, and finally La Paz in Bolivia.
This is my 3rd review of a book in this series and I had high expectations. There is a level of consistency in Thomas Erl’s books. Unfortunately heft is one of them, which is not conducive to a hiking trip. At an exhaustive 865 pages it did not take long before I wished I had bought an ebook reader.
Disclosure – I was asked by Thomas Erl to review this book for technical consistency before publication.
Fortunately this is not a book you read cover to cover. It is more of an encyclopedia of SOA Design patterns. There are over 400 illustrations so each pattern is explained in detailed – Why have 1 illustration when you can use 4 🙂
My first couple of nights the howler monkeys kept me up, so I got a good start on the book. What dawned on me very early on was that the reader would have a better understanding of this book if they had previously read the SOA books in this series, otherwise some of terms may be unknown to you.
In my last book review in this series I highlighted the need for a common SOA taxonomy. This book goes some way to addressing that need and with some nice icons as well. But as the old saying goes – it is easier to negotiate with a bank robber than a software architect. So I don’t expect everyone to be happy with the terms used in this book.
Patterns
This book is really reference material, and should be delved in to find a pattern for an occurring need you have. But you will have to read 100+ pages so that you can understand the terminology and the diagramming notation.
I did not manage to read much the next couple of weeks but after eating some empanadas from a street vendor in Bolivia I was laid up in bed for a couple of days which gave me plenty of opportunity to finish reading the book.
The patterns take a large set of inspiration from existing well known industry patterns such as Enterprise Integration Patterns from Gregor Hohpe and Bobby Woolf, and apply them to SOA. In addition depending on your SOA ecosystem some of the patterns may not apply.
This book was written by 10+ authors and I would have liked them to catalog some common SOA anti-patterns. Sometimes it is easier to know what to do when you understand the mistakes other enterprises have made.
But overall these patterns lay a good foundation for architects to utilize and developer their own SOA design patterns. Don’t take patterns at face value. Consider combining, modifying and take into consideration your own SOA ecosystem.
This was the quote that I finally submitted to the publisher.
“This obligatory almanac of SOA design patterns will become the foundation on which many organizations will build their successful SOA solutions. It will allow organizations to build their own focused SOA design patterns catalog in an expedited fashion knowing that it contains the wealth and expertise of proven SOA best practices.”
– Stephen Bennett, Director, Technology Business Unit, Oracle Corporation