For quite some time, we’ve been promoting the image that what we’re mostly about at Zystems is plumbing. We even have a presentation called “Plumbing for SOA”. This would indicate that we draw the pipes but do not necessarily have much contact with genuine business value (such as sinks an faucets). I ran across this analogy in a most illuminating article by Bobby Woolf of IBM. I never really made the distinction between a Message Bus and an Enterprise Service Bus as such, but I think the definition Bob is making makes a whole lot of sense, and it is one that we’ve somehow implicitly managed to place firmly in the center of our concept model. One of the cornerstones of this model is the Service concept. The beauty of it is that we distinguish between public services and private services. Those customers who basically use the middleware (in our case mostly WebSphere MQ and Message Broker, but increasingly also WebSphere ESB) for traditional, technically oriented point-to-point integrations will do this using private services. Private services are exactly what Bob is referring to when he talks about the Message Bus. Private services are whatever technical goo we need to apply to pass the correct bits to the correct destination. What we manage to do is to offer our customers a seamless (from a technical point of view) migration path from a Message Bus to an ESB, by simply applying some sound design principles to the services, thereby creating public (SOA) services.
There is (unfortunately some might say) still a massive need for a well structured, well documented Message Bus. Our job is to make sure that it can mature together with the customer into an ESB that will truly be a technical linchpin of an SOA. So, yes, we’re plumbers, but when the customer is ready, magically there will appear sinks and faucets firmly (i.e. loosely 🙂 ) attached to the pipes.