This is a single archived entry from Stefan Tilkov’s blog. For more up-to-date content, check out my author page at INNOQ, which has more information about me and also contains a list of published talks, podcasts, and articles. Or you can check out the full archive.


Stefan Tilkov,

Radovan Janecek has a nice provocative post on “Anti-SOA”, featuring this “slide”:

  • Enterprise Service Bus
  • BPEL
  • Service intermediation
  • Service Oriented Infrastructure
  • Some WSM

Having discussed this with him many times before, I believe I know pretty well why he feels this way …

An Enterprise Services Bus (ESB) as advocated by most vendors is SOA’s archenemy. Intelligent infrastructure, in general, is just what one aims to get away from with SOA — otherwise, we just get EAI in disguise. I don’t want to rely on a centralized piece of infrastructure, no matter how federated its deployment may be, simply because once the next merger or acquisition happens, I’ll have two of them, and then three and so on. I don’t want to see all messages flow through the same channels — peer-to-peer communication between service provider and service consumer is not something to avoid, on the contrary — it’s exactly what one should aim for. If I want to enable a consumer to interact with a service, it should require nothing more than the service description, possibly augmented with some profile information. An ESB is perfectly fine if it’s used to support a service implementation (or for service enablement, if you prefer) — the fact that it’s used should not matter to the service consumer.

BPEL as supported via a central engine in the center of my enterprise IT, usually embedded in my ESB, is just as bad — what better way to put intelligence into your infrastructure than putting a programming language into it and create the illusion that programming graphically is somehow not programming? A BPEL engine as a runtime for a different way to implement services is fine, though.

“Service intermediation”, the idea of putting something smart between your consumer and your provider, sounds nice, except it falls into the same category — making your network intelligent instead of your endpoints. Service-oriented infrastructure … well, if it’s the same product category (intelligent infrastructure), I agree it’s anti-SOA. I use the term SOA Infrastructure differently, to refer to the sum of your technical decisions with regards to standards and the technical services you deploy … “Some WSM” falls into the same trap.

On August 31, 2007 10:38 AM, Mike Glendinning said:

Agreed, but in a provocative mood, one might also consider adding “Registry” to the “Anti-SOA” slide!

On August 31, 2007 12:11 PM, Stefan Tilkov said:

Yes, one could — but Radovan is not likely to do so for obivous reasons :-)

On August 31, 2007 3:56 PM, Pete Lacey said:

A-[expletive deleted]-men.

On August 31, 2007 6:37 PM, Jacek said:

Hi Stefan - any links to Radovan’s post? I’m going to forward your post here to some potentially interesting lists, so a link to the source might be useful. 8-)

And perhaps to save you a few clicks, it’s

On August 31, 2007 9:29 PM, Stefan Tilkov said:

Thanks Jacek. Just forgotten and added now.