Previous Section Next Section

Trends in e-business

It is clear that the network economy is currently driving the evolution of business. Businesses must respond to increasingly dynamic marketplaces. Within corporate departments, application integration has been a major issue in the last few years. Traditional architectures are brittle, and this brittleness is being exposed as the scale, demand level, transaction volume, and rate of change of transaction volume increases.

Interoperability, particularly between heterogeneous distributed systems components, has been one of the major themes in software engineering in general, and EAI in particular, for the last decade. It's unfortunate that the seamless interoperability vision is still a dream. Brittleness in all current architectures is preventing software from achieving this vision. Brittleness comes from tightly coupled systems that generate dependencies at every level in the system. One of the most important lessons we learned as developers and architects is that systems need to be able to find resources (software or otherwise) automatically, when and as needed, without human intervention. This ability frees business people to concentrate on their business and customers rather than worry about IT complexities. At the same time, it frees system developers to concentrate on enabling their business and their customers rather than deal with interoperability headaches by writing glue code and patching systems together. More than any technical consideration, this concept of implicit, seamless integration as a major business benefit is one of the main drivers for service orientation. In other words, the time has come for "just in time" integration!

Trends in application design are moving from rigid structures to flexible architectures. Trends in business partner interactions are moving from static agreements to more dynamic agreements. Trends in B2B integration are moving from technology-based integration to business process-based integration. There is a corresponding shift in programming and architecture models to enable these trends: from tightly coupled applications to loosely coupled services.

On the technical side, major shifts have occurred toward flexibility and interoperability, through open and widely accepted standards. The first major shift happened two decades ago with the advent of TCP/IP as an open platform for networking. This step enabled such important and pervasive architectures as client-server computing. It took the advent of the World Wide Web for the next major shift, with HTML and HTTP providing the first truly universal open and portable user interface. Next, Java gave us truly open portable programming, and finally XML brought with it open portable data exchange. The next step in this evolution of open standards is the integration step. How do all these ingredients come together to facilitate the next evolution of e-business? Web services.

One aspect of more loosely coupled systems is reflected in the move from Remote Procedure Call (RPC) interfaces towards a messaging or document-centric graphics/book.gif model of distributed computing interface. With a document-centric approach, the interface to the Web service becomes much more simple and flexible. An RPC interface presenting a fixed set of parameters in a fixed order is quite brittle. Small changes to information required—for example, a new requirement for an expiration date on a credit card—require a new interface to be created, published, and understood by the service requestor. With a document-centric approach, the new information can be added to the document schema defined in the Web service interface. Programs that use the older schema don't necessarily break when the new XML element is added (this is a property of XML namespaces that you will see in Chapter 2, "XML Primer"). This approach yields Web services interfaces that are much more flexible, resulting in systems that are much more adaptive.

Web Services Market Dynamics

Most major software companies and many smaller software vendors have embraced the concept of Web services in one form or another. Some might just be giving it lip service, hedging on whether it's just another fad, or using it as a buzzword to generate marketing fodder. Others have staked their future on it. Here is a brief examination of the Web services initiatives from a few major players:

  • IBM: Dynamic e-business—IBM provides a broad collection of Web services technology, including a SOAP stack as part of WebSphere (derived from Apache SOAP 2.2), WSDL tooling in the Web Services Toolkit, and a UDDI implementation. Many major products within IBM are incorporating the Web services approach in some fashion.

  • Microsoft: .NET—It can be argued that Microsoft is "betting the business" on the success of .NET. Although .NET is based on Web services technologies, the .NET initiative is much broader than Web services, including a new programming language, C#, and a common runtime layer upon which implementations of multiple programming languages can be built. We will look at .NET in more detail in Chapter 8, "Interoperability, Tools, and Middleware Products."

  • Sun: SunOne (Open Net Environment)— Sun declared the notion of smart Web services that can somehow understand the context in which they were deployed or invoked (such as user identity, type of client device and privacy policy, and so on). Smart Web services includes a standard for sharing this notion of "context" and an infrastructure SunONE upon which to deploy it.

    Sun's approach to Web services is fairly similar to the approach taken by the other major IT vendors, in that Sun bases its Web services technology on the core XML, SOAP, WSDL, UDDI technology set. Sun also augments these technologies with technologies derived from ebXML. The details are not clear as to how these technologies merge together.

    Sun's sponsorship of the Java Community Process and its definition of Java specifications related to Web services is also a major component of the company's Web services initiative.

  • Oracle: Oracle 9i Web Services Broker— The Oracle approach to Web services also follows the traditional SOAP, WSDL, UDDI perspective. Oracle emphasizes the role of its database technology as a service registry (broker) providing security and other value added services as an intermediary between service requestor and service provider.

  • Macromedia: Macromedia platform— Macromedia has embraced Web services throughout its mass-enterprise platform. Its rich clients can display information retrieved through Web services, its application servers make building Web services possible for developers at all skill levels, and its tools provide high-level support for building applications that leverage Web services.

It is exciting to see so many software vendors active in Web services. With multiple vendors, there is a risk of incompatibility of implementations. Unless Web services from different vendors can interoperate, Web services will fail to attain critical mass of adoption. Happily, there is significant focus among the various Web services implementations to develop and maintain interoperability.

Chapter 8 will look at a collection of Web services implementations in the industry, from large software vendors to smaller boutique Web services infrastructure providers.

    Previous Section Next Section