The danger of “automatic” service creation

Its funny how when something is pointed out to you to start spotting it all over the place.

I was reading Steve’s recent Insight entitled “Invest in SOA service design”. This highlights among other things the danger of attempting to automatically generate services from code. Then I saw a press release which made me choke.

To start with Steve’s point which I strongly agree with:

[the automatic approach to service generation] tends to result in hard-wired ties and dependencies significantly reducing the likelihood that the service will be reused

The press release which had the dramatic effect on me was IONA’s Enterprise Celtix launch press release from early December which includes the one liner:

JAX-WS standard to ease development of Java services by automatically converting Java code to Web services [my emphasis]

Now some people such as Ricard Monson-Haefel of the Burton Group knock this standard (previously known as JAX-RPC) because of its technical deficiencies with comments like

JAX-RPC was a grossly over engineered train wreck.

However, my gripe is more fundamental: The idea you could even consider generating any kind of service automatically from code must be the antithesis of SOA. To quote Steve again:

In many cases SOA is being implemented as a programmer-oriented technical exercise, but this approach ends up seriously impacting the value of SOA and is a major cause of failure to meet expectations. SOA is all about architecture, not programming—after all, this is what the ‘A’ stands for.

And in case anybody thinks I am picking on my old friends in IONA, I should point out that they certainly aren’t the only ones enabling this automated approach to service design. However, as a company which can justifiably claim to having had a service oriented view of the world longer than just about anybody else, I think they should know better!


Posted in Imported, SOA.


  1. Code-first services

    Most people who have been around distributed systems development for awhile recommend against code-first services. These are services where someone writes a normal programming language artifact, usually a Java or C++ object, and then turns it directly …

  2. “The Danger of Automatic Service Creation” Beef

    It’s always good to end the year with some sort of controversy, and thus one has sprung up. I’m talking about Ronan Bradly?s post about The danger of “automatic” service creation and how it’s counter productive to reuse….

Comments are closed.