If a recent column by Forrester analyst Randy Heffner is any indication, Forrester would really disagree with the tech leaders who think SOA's just about reuse and hype.
I'm not sure whether it's coincidence, but the CIO.com piece, titled "SOA: Think Business Transformation, Not Code Reuse," speaks directly to the issues I addressed earlier this week from an informal ITBE poll showing midmarket leaders weren't that keen on SOA. I also quoted two tech directors who basically said they thought SOA was hype and module programming repackaged. I've written about SOA for several years now, and I know all the reasons why it's so much more.
In fact, it hasn't generated nearly as much heat as I'd feared, probably because it's not really news. After all, SOA fans have been fighting this perception all along.
The real question isn't whether it is or isn't hype, the real question at this point is how to reconcile this disconnect between what analysts, experts and even companies who've implemented SOA say versus the popular view?
After all, there's some evidence that service orientation-if not service-oriented architecture per se-is just the way things are going. Many big vendors have built their applications and platforms this way. The cloud is certainly largely service-oriented. And as Heffner points out, a recent survey shows that 58 percent of enterprises-74 percent if you look only at Global 2000 organizations-use SOA now. And 68 percent said either they're using SOA now or plan to by the end of this year.
Not only are they trying it, but, just as Mikey and Life cereal, they like it, they really like it. Writes Heffner:
All this SOA usage is not just industry hype and experimentation, either. SOA has been delivering tangible results that make IT executives want more of it: 52 percent of current enterprise SOA users say it has delivered enough benefit that they plan to expand its use, while only 1 percent of SOA users say they are cutting back on SOA because they see little or no benefit. For the rest, it's either too early to tell or they are struggling to get the benefits - often because they approach it as only a technology.
How are we to reconcile this difference between SOA as a business alignment concept and SOA as hype? Reading Heffner's article, it's clear he believes some IT leaders are too focused on the technology aspects of SOA and too little focused on the business-basically, it's the whole IT/business alignment problem, redux.
While it is true that SOA is fundamentally an approach to software architecture and design, which makes it sound tech-oriented, the most important SOA concept is to design software around the business capabilities you need to run your organization. SOA is the foundation of a much broader shift in the future of business-focused IT architecture, which means that those who get SOA wrong will have a poor business foundation for many years to come.
The remainder of the article is dedicated to proving this thesis. But I can't help but think that many of the benefits he lists would appeal primarily to big businesses. Perhaps SOA is really a large organization initiative - unless, of course, you're running a small company that's based on delivering software or services online.
But even if you're not keen on SOA, perhaps you can still benefit from the concepts underlying SOA, argues ZD Net's SOA blogger, Joe McKendrick in a recent post. McKendrick contends every organization can benefit from enterprise architecture, of which SOA is a subset, and using the concept of services as much as possible-particularly if you think you might like to tap into cloud computing:
Still, the more a business of any size can service orient, the better. SOA is an extension of enterprise architecture, and EA is important at any level. ... enterprise archictecture is not about jumbo frameworks and rigid governance, it's about creating a set of values and practices for capability delivery. If anything, smaller companies may need a master plan to guide ongoing technology projects more than a large organization that can afford to waste money on shelfware or underutilized systems.