SOA Principles of Service Design book review

I am currently involved in a project that is part of our larger SOA strategy. SOA and related topics is a massive area and I am currently reading everything I can get my hands on to learn more about this complex area.

Sometime ago I was recommended Thomas Erl’s SOA Principles of Service Design (I’m going to shorten this to POSD to avoid RSI) as a good overview/introduction by a consultant I was working with (thanks Dave S!).

It is also worth noting that POSD has a brother/sister book called SOA Design Patterns which is apparently designed to complement & follow on from POSD. I haven’t read it so cannot comment much about this.

soaPOSD

POSD weighs in at just under 600 pages & claims to introduce the reader to SOA principles and concepts, explain design approaches, techniques for maximizing reliability and much more – sign me up!

Despite its length POSD is a straight forward read & the text is broken up with frequent full colour diagrams. The use of colour is actually really nice in a heavy book such as POSD.

In many places the diagrams do a great job of explaining important concepts but I couldn’t help thinking that many were unnecessary and conveyed very little or the data/concepts would be better represented in tabular format. Having content broken up with an unnecessary diagram was a bit frustrating & I found myself flicking through them quickly as say you might those songs/poems in a Tolkien classic.

The book does an excellent job of introducing core concepts & some of the advantages/disadvantages of this style of architecture.

Subjects such as contracts. Schemas etc are given a thorough treatment. I guess at times some of the focus on XML related technologies & approaches can make it feel dated but it certainly doesn’t distract too much from the core concepts/principles.

For me at times the book felt like a school or university text book & I couldn’t help feel the content could be distilled into say a quarter of the size without losing anything. Maybe it’s arrogant to say but I think I could get the important stuff down to around 100-150 pages and lose very little.

A case study is used throughout the book with issues that will be very familiar to any developers/architects currently working with SOA.

I really wish the author has used the case study more and gone into more depth (say similar to Vaughn Vernon’s implementing domain driven design). The case study forms a tiny part of the book in relation to lengthy explanations of abstract principles which would benefit from further pairing with a solid example.

Overall for those new to SOA this book does an excellent job of covering the core concepts, it is easy to read despite its length & the colour diagrams make it nice to read.

I suspect an experienced practitioner probably wouldn’t learn so much from the book – I was familiar with much of the content (which is probably partly be due to some of the awesome people I work with).

Despite some of my concerns I have yet to find a clear introduction to SOA concepts so if you are new to this area you probably won’t do much better.

Overall 6.5/10.

Advertisements