Web Services: A Business Module Packaging Strategy
The World Wide Web (WWW) has created a rapidly expanding need for application-to-application communication. To promote interoperability and extensibility among these applications, as well as to allow them to be combined in order to perform more complex operations, a new standard was needed that was backed by the entire software industry. That standard is web services.
As web services become more mainstream and enterprises start adopting a service-oriented architecture (SOA) for their application infrastructure, we need to analyze best practices and/or guidelines with this approach. This article begins a series on the best practices for XML-based web services. Through this series, we will evolve a potential framework for web services that could be leveraged by an enterprise. In this first article, we explore the use of web services as a packaging strategy for a business logic module. We'll start by providing some background information on web services that leads us to the rationale behind having web services as a business module packaging step.
We assume that you're familiar with basic concepts in SOA and related web services technologies. For more in-depth discussion of these technologies, other articles are available on InformIT.
Web services provide a standard means of interoperating between different software applications, running on a variety of platforms and/or frameworks. Various other technologies have had the same goalenabling remote access for a software module such as CORBA, RMI, DCOM, IIOP, or RPC. Each of these technologies has inherent strengths in solving specific issues in specific scenarios. But they all have glaring drawbacks with interoperability; for example, inability to be constrained on the operating platform, or restrictions on the programming languages they support.
Web services is a new addition to the distributed technology family. The wide popularity of web services is based on the fact that web services are designed with interoperability as the core principle. Web services follows the success of HTML and the browser that has led the way in demonstrating how human-to-computer interaction can be facilitated seamlessly regardless of the platform, technology, or overall application environment. This success has created demand to improve computer-to-computer or application-to-application communication in the same way.