Service Orientated Architecture - Two Years On!
I’ve been blogging for slightly over two years. After I wrote my SOA article earlier today, I realised that my second ever blog post was on SOA. Then, as now, I had been reading Savas’s blog.
Unfortunately, in the intervening time two things have happened:
- I have spent more and more time down the SOA hole, to the detriment of my Atmospheric Science, and
- I forgot this:
Share schema and contract, not type (avoid the baggage of explit type, allow the things on either end to implement them how they like).
This was in a discussion of distributed objects versus service orientated architectures. I should have reread that entry and the links within (especially this one) before wading into deep waters! It would have helped focus my argument.
Going back then we have from the original article that inspired my second blog:
The motivation behind service-orientation is to reduce the coupling between applications.
Well, I’m not so sure about that, I think it’s really about what Lesley Wyborn in her SEEGRID III presentation called “decomposition” - and the reason why we want decomposition is so that we can have “orchestration”. So it’s actually about reducing the coupling within applications so the components of application(s) can be reassembled to do new and interesting things - potentially across system and/or organisational boundaries. Having done so, we might still want strong typing (although this paints an interesting perspective on typing and the use of xml schema).
Anyway, I need to get back to thinking about other activities here for a while and forget about SOA details. Fortunately Simon Cox sent me a photo which puts SOA in a proper perspective, and he’s kindly allowed me to put it up here:
Whither service descriptions (from “Bryan’s Blog” on (on Tuesday 22 January, 2008))
… there is a long tail of activities for which the abilities of web services to open up interoperabilty is being hindered by the difficulty in both service and data description …
Allan Doyle (on Friday 08 December, 2006)
Some very incomplete thoughts about your posting.
SOA is very much oriented towards “enterprise”, not towards “mashup”. If we’re building for the enterprise, I suspect we may all have been better off sticking with CORBA and not relearning the same thing many different ways. Trouble is, personally, I’m not so interested in “enterprise”.
The more complex things are, the more strongly typed, the less you will see “reassembly to do new and interesting things”. That’s why there were no CORBA mashups, and I suspect there will be no SOA mashups.
Maybe strong typing is a form of avoiding the difficult task of making data more accessible. It’s easier to throw a complex schema at someone and say “here, do something with this” than it is to figure out how to distill things down to a more user friendly representation.
Allan Doyle (on Sunday 10 December, 2006)
In perhaps one of the strangest suggestions I’ve ever seen, this guy at ZDnet thinks Steve Jobs should step in and “make SOA a hit”.