|
SYS-CON.TV Webcasts
Comments
Did you read today's front page stories & breaking news?
SYS-CON.TV
|
Top Links You Must Click On
Industry Commentary Critical Decisions for Service-Oriented Architecture
Critical Decisions for Service-Oriented Architecture
By: Walter Hurst
Jan. 21, 2003 12:00 AM
Services-oriented architecture (SOA) is quickly emerging as a strong technical foundation for enterprise applications. My company, involved in the development of application architecture solutions, has seen a growing emphasis on SOA to meet the integration, process-level reuse, and flexibility requirements of the dynamic enterprise environment. While simple Web services have educated the market on services, SOA is the implementation that most enterprises are adopting to achieve their goals. The W3C has a Web Services Architecture group that is working in this area. While the group is called Web Services Architecture, that term is used interchangeably with services-oriented architecture. The emergence of the W3C as a standards body working to bring some cohesiveness to this space can only be a good thing for the enterprise. By bringing clarity to the issues and requirements involved and then working to define standards, this will result in common interoperable foundations. This interoperability is key if the enterprise is to realize the long-term advantage of turning a heterogeneous IT environment into a corporate asset.
Four Key Decisions
If services-oriented architecture is to share that same success, common answers must be made, or at the minimum it should be realized when answers conflict so that some interoperability can be established where necessary. Recognize also that these decisions build on each other, similar to the OSI layers. The transport is the lowest layer and the interaction pattern the highest layer.
Service Transport
Service Protocol
Service Interface The service interface should also be definable outside of the implementation. Supporting service definitions is important for separating the implementation of a service (called a service provider) from the user of the service (called a service consumer). This service definition is often called a service contract. The service definition is a very important contributor to the workings of the service interaction.
Service Interaction Pattern Another powerful concept employed in service interactions is service leasing. Service leasing refers to the concept of providing the service consumer with a handle to a service provider, with the caveat that the service provider handle is only good for some period of time (or possibly until some external event or condition takes place), after which the service provider handle expires. Once the service provider handle expires, the service consumer would once again have to find a service provider. A useful analogy is DHCP (Dynamic Host Configuration Protocol), which is used for controlling IP address allocation (along with other networking configuration). In the old days of networking, every computer had its own IP address, which had to be allocated and tracked manually by the IT staff. As computers were added and removed, the IP address tracking could become quite an administrative task. Enter DHCP, which allows a central server to allocate IP addresses to client computers using a leasing mechanism. As computers join a network, they receive an IP address that is good for some amount of time. Once it expires, the DHCP server gets the address back and can reallocate it. There are no wasted IP addresses given to machines that have been removed from the network and if there are network changes that need to be made, the server will propagate them when the clients release their IP address. Answering these four critical questions will form the services-oriented architecture environment. These architecture decisions must be made in a consolidated effort in order to realize the full benefits of the SOA. Because of their interdependency and impact on each other, they cannot be made independently. While this will form the enterprise standard for typical services, it should not be constraining. Some services may deviate because of their unique requirements but those situations should be closely examined and noted. Referring to the adoption of the OSI Model, it can be seen that the more layers that have common answers (i.e., using TCP/IP vs Novell's IPX), the more interoperation will be possible, with the nice side effect of lower maintenance and administration costs.
Conclusion While it may seem that there is a lot to grapple with when adopting an SOA, don't be intimidated. Education is the first step - understand what the factors are for laying a successful SOA foundation. If the decision is made to adopt an SOA approach for constructing your business assets, you will encounter many build versus buy decisions. Remember to trust your experience and intuitions. SOA is a big step in the evolution of distributed computing but it is not a brand new invention or a silver bullet. Reader Feedback: Page 1 of 1
Enterprise Open Source Magazine Latest Stories . . .
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
|
SYS-CON Featured Whitepapers
Most Read This Week |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||