SOA Principles of Service Design

I’ve been learning a lot more about SOA and REST recently and so have been doing a lot of reading including SOA Principles of Service Design and I thought I should write a short review.

Short version, this is one of the worst technical books I’ve read and I wouldn’t recommend it to anyone. My main gripes are:

  • Style – Although there are lots of colour diagrams they don’t tell you much and don’t take away from the fact that the text is dry, repetitive and at times very boring. Since I’ve read one of Erl’s previous books, well read about half of it because I just couldn’t face the rest, I should have known what to expect but it was still a big big struggle to finish it.
  • Ideas – Reusable entity services (Customer/Order) shared throughout the enterprise might sound sensible but I’m not at all convinced by that approach and the focus on it has always blunted my interest in SOA. Unfortunately that style of layered SOA is key to this book so I found a lot of it pretty un-inspiring.
  • Single Viewpoint – There is more to SOA than RPC services but this book doesn’t really talk about anything else. REST gets no coverage (as an alternative to aspects of SOA), EDM/messaging doesn’t really come into it, business focused SOA (analysis/design with business experts) is hardly discussed…it just all feels too narrowly focused on the one approach the author uses and so there is little discussion of alternatives and tradeoffs.
  • Book Assembly Line Approach – Having one book on SOA principles and another on the patterns, with references from the principles book to the patterns one, seems overkill. I know SOA is a big topic but do we really need an eight book SOA series? In my view you could easily have cut 30% of the content in this book (including most of the diagrams) and merged it with the patterns book.

Some might take this as me saying I don’t rate SOA but that is not true at all, I just don’t rate this book and don’t think the ideas behind it are what I’m interested in. However I still think SOA has a lot of value and in fact the next two books I plan to read/finish are both about SOA:

  • SOA Patterns – Not the SOA patterns book by Erl (which I’ll admit from it’s site looks interesting), this one is by Arnon and from the Manning EAP version I’ve read it’s going to be superb.
  • Enterprise SOA Adoption Strategies – I learned about this book because I enjoyed reading Steve Jones’ posts on the SOA forum and it seems to focus on the business oriented side of SOA, something which doesn’t seem to get discussed nearly enough.

Since I’m far more interested in business focused services each wrapping one or more domain models and exposing multiple end-points, instead of entity services first approach, I’m looking forward to reading these two as from the looks of it  they’ll give me lots of new ideas.

This entry was posted in Uncategorized. Bookmark the permalink. Follow any comments here with the RSS feed for this post.

4 Responses to SOA Principles of Service Design

  1. Maybe we should get this online book club thing going for SOA patterns. I bought myself a couple of weeks ago. Currently reading another book, but will start on SOA patterns soon (like in a month or so ;-) ).

  2. colinjack says:

    Yeah sounds good, I’d be very interested in discussing SOA Patterns with others as its a book I think is going to be very important. Yeah great idea.

  3. I’ll get back to you as soon as I want to start reading it.

    Also for the European online ALT.NET tea gathering, I signed up for Office Live meeting but I couldn’t figure out how to host one (I suspect this part is being charged for). Any experience?

  4. colinjack says:

    None at all, but I have now got a rubbish and cheap Microphone set so I’m ready. Will have another look into it but it must be possible for a pair of nerds like us :P

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>