Vinnie Mirchandani is not one to mince words when it comes to examining the state of affairs with this growing beast we affectionately call SOA. His assessment on the state of SOA -- abandon ship. It's all too big, too weighty, too ungainly.
"...I am still hearing lots of fundamental questions - and hearing about multi-year projects, lots of external consulting services, more technology jargon," Mirchandani writes. "In the meantime, in the Valley, young (and old) kids, oblivious to all these weighty questions are writing their own SOA in very small letters - in mashup camps."
"So here are my questions to big, enterprise-wide SOA. Where's the revolution? And the alignment? We may need canoes to link our islands of applications and data. Instead we are building a big boat. The Titanic."
I agree with Vinnie that SOA has gotten out of hand, as the hype has seized the entire industry in a way that we haven't seen since the e-business/dot-com frenzy of the late 1990s. SOA may have jumped the shark the other week with IBM's mind-numbing announcement of 21 different SOA products and services. And every vendor with a piece of code to sell says it is 'SOA compliant.'
And, as a result, when the dust settles, and billions have been spent, many will be looking back to the current SOA frenzy with a sense of mockery and scorn. If SOA were to be successful and does what it's supposed to do, then we won't be talking about it at all, period.
And the vendors will have moved on to the next fad.
My point is that aside from the vendor hoopla and exploitation, there is no "there" there when it comes to service-oriented architecture. SOA is not an end in and of itself, but a methodology, or way of thinking about loosely coupling and aligning systems to meet business process requirements. SOA purists will point out that nobody really even has attained what can be considered "service-oriented architectures," and we'll probably never see it. It's like pure democracy -- a noble goal, and something to keep working toward.
In the days of client/server, we had something tangible -- 'here's software which runs on the server, and connects to this piece of software that runs on the PC.' Then the Internet came along -- 'here, use this universal browser instead of our proprietary client software.' Then e-business -- 'you can use your browser to buy stuff from our site.'
But SOA is intangible, and this may be the first time an entire industry is trying to push an intangible concept. It's going to take time. Web 2.0, on the other hand, has some very tangible deliverables, such as Google Maps-based applications and wikis. Fun stuff businesspeople can understand and can see right in front of them.
But, if SOA really is so abstract and elusive, what else is there? What's the alternative? Enterprise computing requires a very deliberate methodology of planning that extends out for years and numerous budget cycles. For companies saddled with patchwork portfolios of various vendors' incompatible legacy systems -- combined with home-grown systems -- service-oriented architecture and Web services offer a path of least resistance. Web services, at least in theory, offers a way to extend investments and surface various applications into a common abstraction layer of services accessible to the entire enterprise. And from that we start building toward SOA.
IT planners are under enormous pressure to improve the scalability and accessibility of their systems over the next five years, without adding to costs. Again, what's the alternative?