ESBs: useless as a human appendix?

Everyone likes ESBs; what harm can they do?

Here's a great new description of the Enterprise Service Bus, put forth by Bobby Woolf, WebSphere SOA and J2EE Consultant for IBM: The ESB is "the equivalent of a human appendix for the IT department, a vestigial organ within the topology of deployed applications."

Having had my appendix out when I was eight years old, I got an early lesson in life in the pains useless organs can create. (But it also got me out of school for a week or so.) What harm can a little ESB sitting in the corner do?

Vendors, for one, really like ESBs, because they're tangible products that can be packaged and sold. Service-oriented architecture, on the other hand, is impossible to sell, because it's a philosophy. For many end-users enterprises, ESB is an easier concept to grasp as well.

However, Bobby says ESBs do anything but produce business value:

"An ESB is a means to an end, not the end itself. An ESB is like the electrical wiring or plumbing of an SOA. Plumbing does not produce value; sinks with water coming out of their faucets do. Wiring does not produce value; lights, especially lights connected to switches, are valuable... An ESB without an SOA is like a road from someplace nobody is located going to other places nobody wants to be. People might eventually want to go to those places, but in the meantime, the road is all cost and no benefit."

The problem, Bobby states, is that people take the attitude that "If you build the bus, people will build SOA applications around the bus." However, in the end, people may ignore it altogether, or it may have to get rebuilt before it sees use.

Bobby calls this "ESB-oriented architecture," noting that it "builds connectivity no one might ever want to use. The business does not derive additional value until systems connect to each other and are working together. Until then, the ESB is just cost with no benefit."

(Thanks to SOA Digest for surfacing this blog post.)

UPDATE: Bobby Woolf has posted additional thoughts on the topic, and clarifying the point that "an ESB needs to be part of an SOA of services providing business value; without the SOA, the ESB is as useless as a human appendix."