Welcome Guest!
Create Account | Login
Locator+ Code:

Search:
FTPOnline Channels Conferences Resources Hot Topics Partner Sites Magazines About FTP RSS 2.0 Feed

email article
printer friendly
more resources

Hidden SOA Challenges
Architects must both enable and control the business need for interconnection.
by Paul S. Clarke

December 13, 2004

In the past, many enterprises integrated their businesses through data integration via shared data and document repositories. These efforts will certainly continue. Considerable effort has also gone into integrating software applications directly. Recently, focus is shifting to the notion of a fully integrated enterprise based on a service-oriented architecture (SOA).

The many compelling benefits of an SOA based on Web services have been discussed by various sources. However, as great as the benefits might be, there are also challenges involved in pursuing the SOA dream. Beyond the well-known performance penalty from using XML, there are numerous lesser-known challenges in using a Web services-oriented architecture (WSOA). This article focuses on several of the most significant.

ADVERTISEMENT

Seduction of the Loosely Coupled Mantra
Loose coupling has been heralded as one of the major advantages of WSOA over other technologies such as distributed objects. In fact, WSOA truly is less coupled than distributed objects because it uses programming language-less, data-oriented interfaces. In contrast, a distributed object's interface must be compiled into source code, equally for the object's implementation and for all of its clients. Reduced coupling is a tangible benefit of WSOA.

Nonetheless, belief in the loosely coupled WSOA mantra might lead you to believe that coupling is not an issue in WSOA. On the contrary, coupling remains an issue, and the real role of coupling in WSOA has been downplayed. Coupling comes from the quantities and types of connections in a system. Here are some coupling issues in WSOA:

  • Coupling occurs through the data passed among various services. The syntax and meaning of the data must be defined consistently across services; any change to the definition can affect any service that handles the data.
  • Data can be modified by the services it passes through; these modifications tie the services together into a business process, effectively coupling those services through the business process and the data.
  • The syntax and meaning of a service interface creates coupling because the service must be understood by the services that invoke it.
  • The number of different consumers of a service affects coupling. It is harder to change the interface of a service with a large number of consumers.
  • Long-distance coupling between a service's providers and consumers can negatively affect the provided quality of service (QoS).

I discuss several of these challenges in more detail later.

Hazards of the Highly Integrated Enterprise
The quest for a more integrated enterprise drives enterprise IT to be more interconnected. A more interconnected system is more difficult to understand, build, test, maintain, change, adapt, or improve. This greater coupling can dramatically increase complexity. An agile, integrated IT is more complex than independent IT processes. In contrast, segregating software functionality into independent pieces is primarily how reliable, maintainable systems are created. This is one reason why many enterprises have application silos in the first place.

Back to top

Printer-Friendly Version





Java Pro | .NET Magazine | Visual Studio Magazine | XML & Web Services Magazine
| | Discussions | Newsletters | FTP Home