B2B Integration-A Case Study

Web Services

Web Services is a distributed computing technology, which is defined by loosely coupled, dynamically located software components on the Web. These components break down the larger software system into smaller logical modules, or shared services. These services can reside on different systems and can be implemented by vastly different technologies, but they are packaged and transported using standard Web protocols, such as XML and HTTP, thus making them easily accessible by any user on the Web. Web Services typically work on the Register, Discover, and Invoke models.

Figure 4: Web services deployment model

Royal Wallace Company was skeptical about the Web services approach for its integration requirement. Although Web services are fast becoming a de-facto standard with support from industry heavyweights as Microsoft, IBM, HP, Sun, and Oracle, it is still not widely used for e-commerce–related transactions on the Web. The overhead of the maintenance of IT staff required to maintain the application and the inherent issues associated with Web applications such as availability made the company decide to do away with this cutting-edge technology.

Open standard for Application-to-Application communication. Based on standard protocols such as HTTP and XML

Supported by all the leading vendors. Hides complex implementation

Fast gaining acceptance in the world as a means of communication between applications

Cons

Not widely used yet

Higher transmission/processing costs because XML is verbose (at the benefit of being easier to understand and maintain)

Has all the issues associated with the Web in terms of availability, immutable interfaces, and so forth

Aspects such as guaranteed delivery, non-repudiation, security, and the like may not be built-in

Compare the three approaches considered here....

Approach

Timescale to Develop

Changes in H/W & S/W

Maintenance Effort

Cost of Option

EAI

Low

Yes

Low

High—licenses from Vendor

EDI

Low-Medium

Yes

Low-Medium

Medium-High

Web Services

High

Yes

Medium-High

Low (Based on s/w chosen

Feasible Solution: XML over HTTP

Extensible markup language (XML) is a specification developed by the W3C. XML is a pared-down version of Standard Generalised Mark-Up Language, designed especially for Web documents. XML is a programming language that enables designers to create their own tags to indicate specific information. It allows designers to create their own customized tags, enabling the definition, transmission, validation, and interpretation of data between applications and between organizations.

XML is similar to the language used for Web pages, the Hypertext Markup Language (HTML), in that both use markup codes (tags). Computer programs can automatically extract data from an XML document, using its associated DTD as a guide. XML represents complex structures easily and a number of parsers are available off the shelf, free of cost, to parse the XML data.

Advantages of using HTTP as an Interface Protocol

HTTP is based on open standard and used widely.

HTTP is simple and well understood.

HTTP can carry any data type.

Implementations of HTTP clients are available in various programming languages such as Java, VB, .NET, PL/SQL, and so forth.

Figure 6 shows the XML over HTTP implementation scenario in Royal Wallace Company.

Because Http clients are available in various programming languages, Royal Wallace Company could easily integrate with all the target applications with any changes at the Business Associate's end. The client sends out a request/message in the form of an XML document to the company. After validating the user with some third-party package at the company's end, Royal Wallace Company could generate the output in the form of an XML document and send it back to the requester (BA) along with the schema DTD. Thus, the company could finally achieve a low-cost, request-reply mode of integration with this approach.

Conclusion

The question that arises is 'Is the XML over HTTP solution a lightweight Web Service?' The following table gives a comparison of the two approaches:

Task

Web Services

XML over HTTP

Publishing

Services published to Service broker using UDDI

URLs directly published to Requester

Communication medium

HTTP, SMTP, FTP, JMS, IIOP, etc.

HTTP

Message format

SOAP

XML defined by Schemas

Descriptions

WSD

XML Schemas

Base technology

XML

XML

Accessibility

Synchronous and asynchronous

Synchronous

However, in this case study, XML over HTTP gained over other viable solutions in meeting the client requirements for B2B integration.

The XML over HTTP option was considered to be the best suited for implementation

Minimum overheads and faster rate of data transfer

The XML over HTTP solution can be extended to provide a full-featured Web service

The designer of the solution should keep all the pros and cons of each approach in mind and go for the best suited approach/implementation for their requirements.

References

Useful Links

About the Authors

Manoj Seth is a senior software engineer at Hewlett-Packard, India. He is a Post Graduate from the Indian Institute of Information Technology, Bangalore.

Manoj has been involved in designing and developing J2EE-based solutions over various platforms in the domains of Financial/Banking and Middleware for more than two years. He has good exposure to Web Services and their emerging standards in development/deployment and management space. He can be contacted at manoj_seth@hp.com.

Tarun Gupta is an Integration Analyst at Wipro Technologies, India. He is a Post Graduate from the Indian Institute of Information Technology, Bangalore.

Tarun has around four years of experience in the integration domain. He has used various tools such as WebMethods, Seebeyond, and TIBCO to provide solutions in manufacturing and telecomm domains. He can be contacted at gupta.tarun@wipro.com.