advising on IT-business alignment
IT-business alignment about us blog our services articles & reports resources your profile exposure
blog
blog
Wednesday, March 29, 2006

SOA, reuse and rabbit-holes

I've gradually become aware, over the past weeks, that I - and a lot of other people - have fallen down a bit of a rabbit-hole when it comes one aspect of SOA. I've been talking a lot about the value of SOA - and in my conversations with people about that, one of the key elements I've talked about is "reuse". I've seen a lot of other people talking about reuse in the context of SOA, too (see here and here for two blogospherical examples).

But last week I finally became convinced: reuse is the wrong word for what people think about when they think about how services get published and consumed in SOA. A much better word is sharing.

Why? Because reuse is a loaded term, which makes people think of object-orientation or component-based development. It's associated with replication of software. If I'm reusing an asset, I copy the code, the libraries, the package, whatever; and I use a copy of it in a new context (quite possibly altered a little bit, if I'm going for "white box" rather than "black box" reuse). But this is not what happens (or at least, it's not what should happen) in SOA. What should happen in SOA, is that an overall requirement is factored to draw out opportunities to implement common services that are used in multiple contexts.

More seriously than that, though, reuse is the wrong word because it's a term which allows us to be lazy, and focus exclusively on the technological and organisational details of how you build systems. [Let's face it, in the software industry we're all much more comfortable thinking about software development issues than we are thinking about other things (like how to make systems manageable, for example)].

Sharing is a better word because it forces you to think not only about the implications of SOA on developers - but the implications of SOA on the IT organisation, and indeed on companies as a whole.

Thinking about sharing makes you start thinking in a more holistic way about SOA, which is much healthier in the long run. In particular, it makes you think properly about one of the critical success factors of SOA initiatives: getting a governance model in place. Specifically, as soon as you think about sharing you realise that by having a consumer use an existing service, you are placing obligations on both the consumer and on the organisation as a whole. If I reuse your code, then we both have a copy. Lovely. But if I share your service, you need to know about that, because you need to ensure the service scales, and that your support for it can scale, too. I will probably need to be prepared to contribute to funding for these things. Sharing of a capability implies sharing of benefit; but also it implies sharing models for cost and risk.

Of course, I have my own legacy to deal with now. I'm just trying to decide whether to go back to all our existing articles, reports and blog entries which refer to "reuse" in the context of SOA, and update them...


Burn this feed
Burn this feed!

Creative Commons License
This work is licensed under a Creative Commons License.

Blog home

Previous posts

Web services management standards convergence
Enterprise mashups: save us from the hype
An interesting spin on user-centric identity
Breathless hyperbole
Higgins, InfoCard and conspiracy theories
Ecosystem vs egosystem
More on the 'P' word - back to basics
Insight on information security - well worth a read
Beware the 'P' word
Nick Carr isn't always right - but ignore him at y...

Blog archive

March 2005
April 2005
May 2005
June 2005
July 2005
August 2005
September 2005
October 2005
November 2005
December 2005
January 2006
February 2006
March 2006
April 2006
May 2006
June 2006
July 2006
August 2006
September 2006
October 2006
November 2006
December 2006
January 2007
February 2007
March 2007
April 2007
May 2007
June 2007
July 2007
August 2007
September 2007
October 2007
November 2007
December 2007
January 2008
February 2008
March 2008
April 2008
May 2008
June 2008
July 2008
August 2008
September 2008
October 2008
November 2008
December 2008
January 2009
February 2009
March 2009
April 2009
May 2009
June 2009
July 2009

Blogroll

Andrew McAfee
Andy Updegrove
Bob Sutor
Dare Obasanjo
Dave Orchard
Digital Identity
Don Box
Fred Chong's WebBlog
Inside Architecture
Irving Wladawsky-Berger
James Governor
Jon Udell
Kim Cameron
Nicholas Carr
Planet Identity
Radovan Janecek
Sandy Kemsley
Service Architecture - SOA
Todd Biske: Outside the Box

Powered by Blogger

Weblog Commenting and Trackback by HaloScan.com

Enter your email address to subscribe to updates:

Delivered by FeedBurner