What exactly is SOA?
Bringing IT and business into closer alignment is the concern of every enterprise; more so large enterprises who operate in a highly competitive business environment and, therefore, are constantly looking to ways and means of becoming more agile.
Reduced application maintenance, greater flexibility in IT infrastructure, and reuse of existing technology to more closely align IT with business goals are some of the key long term benefits held out by vendors and evangelists for Service Oriented Architecture, SOA for short, one of industry’s latest buzzwords. But if you look for reliable information on the tangible benefits that organizations have derived in the wake of adopting SOA, you might end up with a somewhat confusing picture. There are literally dozens of surveys and reports that speak about how adoption of SOA is fast gaining ground among corporations, particularly the larger enterprises, and the mind-boiling sums that are being invested in it. Gartner, for instance, predicts that by 2008, more than 60% of enterprises will use SOA as a ‘guiding principle’ when creating mission-critical applications and processes. But, equally, you wouldn’t be hard put to find others that paint an opposite picture - that for every successful SOA implementation, there seems to be 10 that fall short of the desired benefits.
It all boils down, one supposes, to one’s interpretation of what exactly is SOA. Without a widely accepted definition of SOA, it has ended up meaning different things to different people. From the business side of the fence, the emphasis is on ‘Service Orientation’. Viewed from the technical perspective, though, the emphasis is clearly on the ‘A’ in SOA, meaning architecture - an architecture that allows user enterprises to use loosely coupled, interoperable components, or services that can be modified or re-used depending upon the service that’s sought to be provided.
Extending that logic would mean that a company using Web-services technology, for instance, can claim to have adopted SOA. Not everyone would agree, of course, arguing that SOA can’t be reduced to a bunch of Web services. Reason? While Web services are definitely the predominant enablers for SOA, it’s quite possible to achieve SOA without recourse to Web services. Unfortunately, a mish-mash of Web services implementations across organizations has only served to cloud the picture, creating confusion around SOA.
It’s time that big-league vendors in this space - IBM, Microsoft, and BEA - clear up the lingering confusion about SOA’s definition that’s leading to a lot misconceptions about what the technology stands for. Till then, it’s safer to take SOA as a combination of various pieces of software - that may include portals, ESB, and other middle ware - packaged as an SOA offering.