Enterprise buses and dirt roads. Jon Udell (blog and Infoworld column) picks up on Cape Clear’s Annrai O’Toole‘s memorable characteristic of web service-oriented architecture, “the information bus runs on a dirt road!”. Cape Clear’s hilarious Switch video introduced the dirt road bus a while ago. Now, Udell sees a fleet of buses in the SOA-debates, I’m hearing names such as enterprise service bus, universal Web services information bus, enterprise information bus, and message bus.
The “dirt road” is our protocols, SMTP and HTTP, and how they’re routable, cacheable, and proxy-able in ways that we’ve yet to fully exploit. As Udell writes:
The idea of dirt roads also evokes, for me, Larry Wall’s famous anecdote about the University of California’s approach to designing walkways. At the Irvine campus, according to Larry, planners just sowed grass everywhere and let the paths that emerged define where to put the sidewalks. I wonder about this a lot, lately, when thinking about the differences between LAMP (Linux/Apache/MySQL/Perl|Python|PHP) and .NET/COM or J2EE/EJB. Where’s the inflection point between these two styles? When you harden an architecture for robust transactions, how do you preserve the fluidity that the agile enterprise requires?
Excellent questions. Great metaphors. In my experience, the bus metaphor is not unproblematic. The rumours about a global middleware mafia might be exaggerated, but I get suspicious whenever I hear people talk about the bus as if it was an “omnibus”, an omnipotent bus, i.e., a miracle cure/silver bullet. Although it may be a “polybus”, a polypotent bus, one that, as Darren’s video says, …and it’s like a bus that can go on a lot of different surfaces, like, you know, ice and snow…, but, and that’s what the video doesn’t say, that it might not be appropriate for everything. This is BTW a classic argument in technology policy studies (from Dick Schlove, see my PhD). What I’m trying to say here is that as SOA moves into the mainstream, it’s getting critical to check its limitations. What is it good at? And what is it not good at?
Here I’m not just thinking of the ROI-stuff, which is emerging everywhere these days. My overall impression is that we could really use a good SOA anthropologist or perhaps a WS ethnographer, because we really need to see SOA as a long (cultural) revolution, perhaps especially when we talk about it in government.
Hmm. Robust agility. Why not?