Service-Oriented Architecture (SOA) is big business and its getting even bigger. Heavyweight vendors like IBM and Accenture are promoting it intensely. Forward-looking enterprises are moving to adopt SOA into their business plans.
In the view of SOAs proponents, Service-Oriented Architecture has the potential to create a revolution in IT departments. It will blur the line between software and service, radically changing the software industry. It will save companies money, greatly increase productivity, and empower network architects to envision brillant new services.
The only thing it cant do, apparently, is cook an egg in under two minutes. And with time SOA might even develop that capacity.
But amid the growing interest in SOA and the grand claims about it plenty of businesses are still wondering: should we get on board? And what exactly is SOA?
Their confusion is understandable. SOA is a buzzword that is defined using buzzwords. The jargon is so deep you need boots to walk through it.
For example, try to decipher this clear-as-mud definition from Wikipedia:
Service-Oriented Architecture expresses a perspective of software architecture that defines the use of services to support the requirements of software users.
Huh? Can you put that in English?
Given that SOA vendors are still working to explain this concept to potential clients, a clear, plain language definition is needed. One of the best experts to provide that is Marianne Hedin, an IDC analyst who tracks SOA.
So, Marianne, what is SOA?
Its not a technology, and its not something you can buy off the shelf, she tells Datamation. Its a paradigm, its a shift, its an architectural concept. Its a new way in which you architect your IT environment.
But what, she asks, with a laugh, does all that mean?
Good question. So what exactly is SOA?
Interoperability and Integration
SOAs greatest value is that it allows enormous interoperability between software, information, and processes.
SOA enables a network architect to mix and match existing elements (software, data, or processes) to create custom-made composites to better serve the businesss needs.
Enterprise managers can create new services for their clients by taking a component from this application and combining it with a component from another application, Hedin explains. In doing so, They can create a new type of service, or a new kind of application, that can serve their clients much, much better.
With SOA, the divisions between proprietary software start to blur. For instance, a network architect can allow users to combine functionality from software by Oracle and Microsoft and Sun all into one composite application. The name of the game is interoperability, Hedin says.
The services offered by these various applications become one composite service. Hence the name Service-Oriented Architecture.
(IDC will host a forum in September demonstrating that SOA allows interoperability between .NET, BEAs Web Logic, and Suns Java.)
SOAs ability to combine disparate elements also applies to legacy software and data. So, for example, SOA can help an insurance company more easily tap data thats stored in outdated 1980s-vintage software.
In fact, SOA enables companies to avoid constant software upgrades, as well as that once-a-decade software overhaul, by allowing employees to more effectively work with legacy applications.
The architecture allows you to do a lot of integration of disparate systems, regardless of the age, Hedin says.
Related to (But Separate from) Web Services
Say a Web site wants to sell airfares from many airlines. The site allows users to book a hotel room, rent a car, and buy concert tickets in the destination city.
In order to be able to provide that kind of service to the client, that Web site had to be able to integrate multiple applications together, and many pieces of information from disparate systems, Hedin says. They have all kinds of technology they want to take advantage of there.
With SOA Even if the [the data streams and software] are all different, different codes, etc, they can all talk to each other. They can be combined and integrated.
(Note: This functionality can be combined without SOA, but its much easier to combine disparate data and applications using SOA.)
The standards that have been adopted for Web services, like SOAP and REST, enhance and expand SOAs capability.
However, You can have an SOA architecture without Web services, she notes. But with Web services you can leverage SOA much more effectively because you have the interfaces that help you with the integration.
In sum, SOA really does create something of a revolution in the data center. SOA turns a network comprised of discrete elements purchased over several years, held together by rubber bands and band-aids into a refreshed and ever-flexible source of business solutions.