Newton was unaware that an apple can teach him gravity

Introduction to Web Services

Overview:

The label “web services,” as broadly applied, has two levels of meaning—one specific and one conceptual:

Specifically, web services are a stack of emerging standards that describe a service-oriented, component-based application architecture.

Conceptually, web services represent a model in which discrete tasks within e-business processes are distributed widely throughout a value net.

Web services are Loosely coupled, reusable software components that semantically encapsulate discrete functionality and are distributed and programmatically accessible over standard Internet protocols.

An examination of the definition

  1. First, web services are reusable software components. Web services continue the long ascension of object-oriented design in software development. Rather than requiring programmers to write one start-to-finish set of instructions after another, the component-based model allows developers to reuse the building blocks of code created by others to assemble and extend them in new ways.
  2. Second, these software components are loosely coupled. Traditional application design depends upon a tight interconnection of all subsidiary elements. The complexity of these connections requires that developers thoroughly understand and have control over both ends of the connection; moreover, once established, it is exceedingly difficult to extract one element and replace it with another. Loosely coupled systems, on the other hand, require a much simpler level of coordination and allow for more flexible reconfiguration.
  3. Third, web services semantically encapsulate discrete functionality. A web service is a self-contained “applet” that performs a single task. The component describes its own inputs and outputs in a way that other software can determine what it does, how to invoke its functionality, and what result to expect in return.
  4. Fourth, web services can be accessed programmatically. Unlike web sites and desktop applications, web services are not designed for direct human interaction, and they do not have a graphical user interface. Rather, web services operate at the code level; they are called by and exchange data with other software. Web services certainly will be incorporated into software designed for human interaction, however.
  5. Finally, web services are distributed over the Internet. Web services make use of existing, ubiquitous transport protocols like HTTP. Web services leverage existing infrastructure and can comply with current corporate firewall policies.

What are Web Services?

  • Web services are application components
  • Web services communicate using open protocols
  • Web services are self-contained and self-describing
  • Web services can be discovered using UDDI
  • Web services can be used by other applications
  • XML is the basis for Web services

How Does it Work?

The basic Web services platform is XML + HTTP.

The HTTP protocol is the most used Internet protocol.

XML provides a language which can be used between different platforms and programming languages and still express complex messages and functions.

Web services platform elements:

  • SOAP (Simple Object Access Protocol)
  • UDDI (Universal Description, Discovery and Integration)
  • WSDL (Web Services Description Language)

Core Layers of the Web Services Stack:

  • Common Internet Protocols – Although not specifically tied to any transport protocol, web services build on ubiquitous Internet connectivity and infrastructure to ensure nearly universal reach and support. In particular, web services take advantage of HTTP, the same connection protocol used by web servers and browsers.
  • Extensible Markup Language (XML) – XML is a widely accepted format for exchanging data and its corresponding semantics. It is a fundamental building block for nearly every other layer in the web services stack.
  • Simple Object Access Protocol (SOAP) – SOAP is a protocol for messaging and RPC-style communication between applications. It is based on XML and uses common Internet transport protocols like HTTP to carry its data. SOAP has been submitted to the World Wide Web Consortium (W3C) standards body and will emerge later this year as “XML Protocol (XP)”.

Higher-Level Layers of the Web Services Stack

  • Web Services Description Language (WSDL) – WSDL is an XML-based description of how to connect to a particular web service. A WSDL description abstracts a particular service’s various connection and messaging protocols into a high-level bundle and forms a key element of the UDDI directory.
  • Universal Description, Discovery, and Integration (UDDI) – UDDI represents a set of protocols and a public directory for the registration and rea<ime lookup of web services and other business processes. UDDI’s sponsors, chiefly IBM and Microsoft, officially released the first public version of UDDI in May 2001. A few more revisions to the specification are planned before UDDI is turned over to a standards organization some time during the next 12 months.
  • Web Services Flow Language (WSFL) – WSFL is the least developed of the current web services layers. Sponsored by IBM, the WSFL team hopes to define a framework that implementers of web services can use to describe the business logic required to assemble various services into an end-to-end business process.
  • Other Business Rules – Additional elements that support complex business rules must still be implemented before web services can automate truly critical business processes(example Security and authentication, contract management, quality of service).

Business Aspects of Web Services

Web Services in the business world, in the most simplistic fashion, provides a mechanism of communication between two remote systems, connected through the network of the Web Services. For example, in case of a merger or an acquisition, companies don’t have to invest large sums of money developing software to bring the systems of the different companies together. By extending the business applications as Web Services, the information systems of different companies can be linked. These business systems then can be accessed by using simple SOAP messages over the normal HTTP Web protocol. For example, a manufacturing company requires some raw materials to be supplied whenever the material in stock reaches the threshold levels. These levels can be constantly monitored by the business system of a trusted supplier, and promptly replenished, without having to wait for a supervisor to notice it and generate a work order.

There are many more important uses of Web Services. These, again, depend on the requirement of your company. Interested enough to find out more? In our next article, you will learn about the architecture of Web Services, the technology organization, the protocols used, and the basic steps involved in building a Web Services application.

Advertisements

Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

%d bloggers like this: