Since about 2003, service-oriented architecture (SOA) has been touted as the network-based, next-generation computing environment, replacing the client/server architecture of the 1990s.
Industry leaders like Bill Gates have made brave predictions about a future in which their applications will live across the Internet, and developers will meet specific needs by combining functions from these networked applications on an almost ad-hoc basis.
So what has happened in the past three or four years? On the surface it might seem very little. “Looking back, a lot of people were talking about this, and even among the vendors you hear a variety of interpretations as to what SOA will be and what you will need,” says Ettienne Reinecke, group CTO at global IT solutions provider Dimension Data.
He estimates that it may take a decade for SOA to become fully adopted by the majority of the industry, as architecture changes of this scale are a journey, and at this point even its proponents still don’t agree on a single vision of SOA.
The basic concept of that vision is that independent services will exist on the network — either the corporate intranet or the public Internet — that can be called by multiple applications and shared among them. A good example is identity management. In an SOA environment, a single identity management service will manage all identity profiles in an organization. Applications that need to match a profile to an individual, for instance to authorize a transaction or access to corporate resources, will call on that single identity management service. When someone’s file needs updating, for instance to reflect a change in job responsibilities, it can be done in a single instance instead of requiring changes in multiple applications.
If the organization forms work teams that stretch across corporate boundaries to include employees from business partners, its identity management service can be shared with the business partner’s applications, eliminating the complexities of establishing and maintaining identity files across corporate boundaries, increasing security while decreasing complexity and expense.
While progress toward that vision may seem slow, the groundwork is being laid at the standards level. In his white paper “Converged Communications,” (registration required) Reinecke lists 13 industry standards that range from Address Resolution Protocol (ARP) to Business Process Execution Language for Web Services (BPEL4WS) that form the basis of the architecture and are vital to the development of SOA.
According to Reinecke, one of the major reasons that object-oriented architecture, which, along with the Internet, can be viewed as the immediate progenitors of SOA, never succeeded outside some small, highly controlled environments, was the lack of an adequate base of industry standards.
This time, he says, the XML standards and the business process languages are established, and at the XML layer most presentation layers are set. “So we have a much better chance of getting it right.”
At the applications level, he says, “it is clear that the market will no longer accept the vendor-proprietary solutions of the past.” The replacement of proprietary software with standards-based applications is forming the basis for a converged network architecture.
“In the last 12 months, SOA has started to gain traction,” he says. “Cisco has a couple of elements, and Active Directory is gaining wide adoption as the de facto directory standard.” This is particularly important because the directory will be at the center of the SOA architecture, and Active Directory is becoming the catalyst for change.
And the early adopters are appearing. The large financial companies are involved in early SOA projects because they have the money and can see competitive advantage from SOA. One of the most ambitious projects is being built by the U.S government. Its aim is to replace all the accounting applications across the entire government with a single network-based, componentized solution that is integrated into the government’s human resources operations as well. Whether this very ambitious project will succeed is open to question, but even if it does not, it will advance SOA development tremendously.
However, Reinecke says, the largest trends are almost inadvertent. Standardization and virtualization are driving SOA forward in many organizations even though they may not be using the term or have a clear vision of the goal.
“I am amazed at the speed with which people are moving away from client/server without even knowing it. They are consolidating data centers, and changing from client/server to XML- and Web-based applications,” Reinecke says. This introduces a whole set of new protocols, with voice, data and video traffic sharing a single physical network layer. Reinecke defines four kinds of network traffic, each of which puts significantly different demands on network resources:
1. Non-real time traffic such as e-mail is the most tolerant of network interruptions and puts the least demand on network resources.
2. Near real-time traffic such as instant messaging needs a fast network connection but can tolerate some interruptions or congestion.
3. Real-time such as VOIP is intolerant of any network interruptions and requires high priority for its packets. It puts a heavier strain on network resources than the first two categories and has forced many corporations to upgrade their data networks significantly.
4. Video, both broadcast and unipoint/multipoint, places the largest load on network resources and basically demands its own VPN tunnel to operate effectively.
These resource demands have implications for the underlying network infrastructure. “If you are not changing your network in all this, you will start to reach the limits of TCP (transmission control protocol) as you push huge amounts of traffic of various types across it,” Reinecke says. “At some point you will get latency problems, and then you will have to go back to the architecture and look at what you are doing.” The last two categories above also require real-time switches throughout the network.
So what can IT organizations start to do now to build the foundations for SOA and prepare their infrastructure for the future? “Architecture is everything,” Reinecke says, so a strong architectural program is vital to the evolution of the network and the larger IT infrastructure.
Second, that architectural program must include a strong emphasis on both de jure and de facto standards. “The key thing is to use every project to drive SOA,” Reinecke says. “Set a basic framework and define standards, then live by them in every project. For example, when you do VOIP and you have to deal with IPT numbering plans, use the standard directory service you have defined — in many cases we see corporations using Active Directory as a standard — then add your IPT numbers to the directory in Active Directory.” And overall the IT community needs to develop a coherent vision of where it’s headed as it moves beyond client/server.
One thing is clear: The industry and its technology are rapidly evolving toward a new and exciting future, and the network will be at its center.
Like it or not, SOA is approaching rapidly, driven by the basic business need to improve efficiency, respond faster, and do more with less. And over the next decade nearly every application and technology used today will need to evolve rapidly to keep up.