Web Services
A good analogy [1] is Hi-Fi stack with a number of
implementations such as CD player, tuner, amplifier, etc. Each of these components can be considered as
a service that serves a purpose and the technology that is used to build each
service may be different. For example
almost all the time an integral part of a CD player is a digital to analogue
converter and this technology is not used in turntables or tape players. Yet we see that these services happily integrate.
For example tuner and CD player could be connected to the tape recorder
if one wishes to record programmes. This
is off course because each service prepares its output signal according to
standards that all services adhere to. More
over, services within the stack do not have to be from the same manufacturer. This means that there is widespread consensus
among the vendors in relation to the standards.
Vendors actively promote the standards although they may well be in
competition for the market. In a sense
it is the competition for the market that prompts them to employ the standards.
To summarise, one could see a Hi-Fi stack as a number of services and a number
of connectors analogous to a number of boxes and RCA jacks.
Web services are a collection of standards, designed
to promote interoperability among services and applications that require use
of services. In other words Web services
are the connectors of services and not the actual services themselves.
Using the Human Resource application as an example, wage slip may be
a service. This service has a particular implementation,
using a particular technology, written for a platform or an operating system.
According to the principles of service-oriented architecture, an application
that requires the use of this service should be able to bind to it late and
at runtime. This means that the particular implementation
of the service should be of no concern to the application. This can only happen if there are wide-spread
standards for describing services and the communication between the two and
that the two adhere to these standards. In
relation to these standards, there is also consensus among all the major vendors
such as Microsoft, Sun, Oasis and IBM.
Web Services are an implementation of Service Oriented Architecture through
use of four technologies and standards in combination. These technologies are HTTP (HyperText Transfer Protocol) as the primary network protocol
(hence "Web" Services), SOAP (Simple Object Access Protocol)
as the messaging protocol (for the payload format), UDDI (Universal
Description Discovery and Integration) for service registry, and WSDL
(Web Services Description Language)
to describe the service interfaces.
The primary platform
for the delivery of SOAP messages is the WWW. Needless to say that at times HTTP is not appropriate
in case of the application and so other Internet tools and protocols are used
such as file transfer and email.
Information Technology is
about building solutions to problems using technology, expertise and tools
that one has available. Some of these
technologies and tools may not be used in the way in the beginning they were
intended to, nevertheless they become instrumental for the development of
the solution. A good example of this
is the WWW which was not originally designed and developed for E-Commerce,
B2B exchanges, etc. In fact WWW is
a lightweight platform with only two protocols: one for client and server
to communicate with each other (HTTP) and the other for the client to locate
a particular Web resource on the server (URL).
Reference:
1. Loosely
coupled: the missing pieces of Web Services,
For more on Web Services click on the following:
We say Web Services are platform independent. What
does this mean? How has this interoperability been achieved? |
|
Using Web Services, business applications could
be built quickly and at low cost by incorporating software functionality
that is hosted by a 3rd party service provider. What are the implications of this on mission critical
business applications? Is there a service contract? |
|
An example of use of Web Services could be an EC
application using a Credit Card validation service. What are the implications
in terms of security? How does the EC business ensure the scalability
and availability of the CC validation service? |
|
How can Web Services be used to orchestrate business
processes? What are WSFL and BPE4WS? What is ebXML? |
|