acm - an acm publication


service provider

Ubiquity, Volume 2002 Issue January, January 1 - January 31, 2002 | BY S. Sadagopan 


Full citation in the ACM Digital Library

Using the Web to deliver IT infrastructure, application development, application hosting, application maintenance and user-end software.

Programmability is one of the key notions of computing. With every fundamental component of computer technology, there is programmability -- often paying huge dividends. It started with the programming of processors; it was followed by the ability to program operating systems. DBMS too saw programmability. Much of today's progress in routing networks would not have happened without the ability to program networks. More recently, scripting languages like PERL and JavaScript enabled programming of Web content. Without programmability, the Web would not be so exciting.

Quietly, another development is taking place in the form of Web Services -- the ability to program not just the content, but also the very behavior of the Web. Naturally, it will combine the accumulated ability to program content, connections, data delivery, operating system and processors -- all from within an application. This ability is known as Web Service. Microsoft calls it .NET initiative; Sun calls it "open network environment"; Oracle refers to it as "network services"; IBM, in my opinion, probably has done the most work in this area and calls it by the more comprehensive term, Web Services.

The reason why Web Services are of fundamental importance will be better appreciated if one studies the growth of the electric utility industry over the past 100-plus years. When Edison invented the light bulb and subsequently created the demand for electricity, the electric utility industry had a very different structure. Companies like GE (founded by Edison) quickly got into the generation business. It took several decades for power plants (thermal, hydroelectric and nuclear) and the electric utility industry to evolve. It further needed an efficient system of transmission and distribution of electricity to the end customers who were located far away. A plethora of appliances was developed to sustain a whole new industry.

In a sense, generation, transmission and distribution -- the three-tier architecture -- changed the electric industry from the cottage bulb and generator (product) industry to a giant electric utility industry (service) today. Likewise, the familiar three-level architecture in IT would subtly and surely change from a PC, server and router (product) industry into a much larger information utility (service) industry. Just as the transformation of electric utility industry needed a power grid, the information utility industry needs a grid on which the service would be delivered -- this is the future role of the World Wide Web.

A set of key technologies, notably, those built on solid standards would make this transformation possible. XML will be the "glue" that links all the applications. Object technology would mature and in fact go beyond. Objects took software beyond isolated programs to a set of related programs; yet, much of the current object technology -- APIs and methods -- are limited to exposing modules in a common and consistent system within a machine. We need to extend that to the network.

While "network is the computer" (a term coined by Sun Microsystems) has been around for more than a decade, programming is still built around a machine -- a server or a client at a point in time. We need programming interfaces that go beyond a corporate LAN, taking into account security issues. That is a clear challenge to be addressed over the years. SOAP (Simple Object Access Protocol) and UDDI (Universal Description, Discovery & Integration) are starting points that address these challenges. WSDL (Web Services Description Language) is another emerging standard that would take Web Services into a solid offering.

The first set of services would be authentication (the much-touted and equally controversial Passport service from Microsoft .NET), payment (credit-card-like service), time-stamping that is authentic and will stand proof of authority, peripheral access (printer, disk, camera, gate etc.,), file services, query services (smart yellow page), brokering services (beyond stock brokering, that would discover automatically a set of service providers for a specific request), and service fulfillment (authentication, brokering, page delivery, music delivery etc.,).

Much of the software would readily assume the availability of such services and service providers. A common system would emerge to identify such services and to offer them in an automated manner. Naturally, a set of intermediaries -- brokers -- would emerge to make available a set of service provider lists in a way that end-programs can automatically query and automate service delivery. This would be achieved by the brokers co-working with service providers and end customers. Web service architecture would provide such a delivery of software services.

Thus emerges a scenario where the IT infrastructure, application development, application hosting, application maintenance and the user-end software can ALL be delivered as a service!

S. Sadagopan is director of the Indian Institute of Information Technology (ITPL), Bangalore, India.


Leave this field empty