T

 

  About Us  |  Copyright  | Privacy Policy  |  Terms of Use  |  Contact Us  |  Site Map 

  
Trust Worthy Website Certification

 

 

 

 

Logo

 

 

 

 

 

 

 

 

 

TOPICS

 

Topics Index

 

Information Technology

Compulsary Controls

Data Recovery

e-Banking (Part 1)
Two-Factor Authentication

e-Banking (Part 2)
Strong Authentication

e-Banking (Part 3)
Strong Authentication

Email Netiquette

IT Value in Organisation

Let's go 'phishing'

Viruses,Trojans,Malware

WEB Services

 

Thank You

 

Don't Assume Your Data is Unrecoverable!

Ontrack Data Recovery

  Click Here for a Free Quote!

Top

Collaborative Technologies

By Mr. Joe Agius - Executive Head Network Infrastructure

Part-time lecturer at the University of Malta

 

Collaborative Technologies

From Web Pages to Web Services

                 

Introduction

It has been demonstrated that organisations can provide increased value by providing competitively superior:

  • Value as determined by customers;
  • Economics across the value chain;
  • Strategy execution via organisational alignment.

Organisations need to be more efficient and productive, more agile and more competitive.  Businesses of all sizes need an array of new tools to connect with customers and partners by providing (and preferably not producing):

  • The right quality service,
  • To the right customer,
  • Through the right channel,
  • At the right price,
  • At the right time.

Business value is created by humans leveraging the use of technology.  IBM is referring to this as dynamic e-business [1] which is:

    The next generation of e-business focusing on the integration and infrastructure complexities of B2B by leveraging the benefits of Internet standards and common infrastructure to produce optimal efficiencies for intra- and inter-enterprise computing.

The web has revolutionised business to consumer (B2C) with massive extensions of business opportunities, new business models and a dramatic reduction in infrastructure costs and complexity. The key was a universal server-to-client model based on open standards and industry support.  Due to the same compelling reasons web services promise to do the same for business to business (B2B).  A new business model based on the same foundations will emerge: a universal program-to-program model.

This short paper discusses some of the compelling reasons for moving to this new strategy.  It defines what web services are as well as the underlying open technologies that will enable this new business paradigm to succeed.  A few common concerns are briefly discussed. Although a company's business model must drive the quest for web services, this technology certainly impacts organisations in various ways, foremost in which are the training requirements.  This short report ends with a few concluding remarks.

What are web services?

According to Gartner's Magic Quadrant [2], IBM and Microsoft are leading developments in the foundations of this new technology; consequently definitions from both companies are quoted in this report.

According to Microsoft [3]:

    A web service is a programmable application logic access using standard Internet protocols.  Web services combine the best aspects of component-based development and the web.

A more formal definition of web services is given by IBM in a tutorial [4] on the topic:

    They are self-contained, self-describing, modular applications that can be published, located and invoked across the web. Web services perform functions, which can be anything, from simple requests to complicated business processes. Once a web service is deployed, other applications (and other web services) can discover and invoke the deployed services.

A few comments on these definitions are appropriate:

    1) Web services are reusable component-based development.  Rather than requiring developers to write one start-to-finish set of instructions after another, this development allows software engineers to re-use the building blocks of code created by others to assemble and extend them in new ways.  The concept is analogous to Lego blocks.

    2) These software components are loosely coupled, which require a much simpler level of coordination and allow for more flexible reconfiguration.

    3) A web service is a self-contained "applet" that performs a single task, where the component describes its own input and output in a way that other software components can determine what it does, i.e. self-describing.

    4) Unlike web sites, a web service can be invoked programmatically, as these components are not designed for direct human interactions.  Rather web services operate at the code level; they are called by and exchange data with other applications.

    5) Finally web services are distributed over the Internet, using the existing ubiquitous transport protocols such as HTTP and SMTP.

Typical examples

Web services perform encapsulated business functions: from simple request-reply to full business process interactions, for example:

  • A stock quote/charting service that returns the stock price/chart associated with a specified ticker symbol;
  • A credit card verification/payment processing service for a given consumer's card number;
  • A loan processing service which is richer in functionality and much more efficient;
  • An integrated travel service which returns an itinerary based on the traveller's personalised required information.

An Open Technical Platform

Intentionally, web services are not implemented in a monolithic way, but rather represent a collection of several related technologies. These offer a direct means for applications to interact with other applications through open standards. 

Open Technical Platform

Figure 0-1: Web Services Architecture [3]

The web services architecture is founded on the principles of connection, communication, description and discovery using open standards and a common infrastructure:

    1) A common language is required to connect and share information with others.  Extensible Markup Language (XML) [5] is the universal data format that makes connection possible by providing a standard format for data exchange that does not require business partners or customers to use a particular programming language, application or operating system to interact with each others' systems.

    2) Systems need to communicate and make requests. Simple Object Access Protocol (SOAP) [6] is an XML-based protocol that defines a framework for passing messages between systems over the Internet.  It is typically used for the execution of remote procedure calls (RPC). SOAP was originally intended and defined for use on top of HTTP to make SOAP more easily incorporated into web-based applications, but other transport protocols, such as SMTP, can also be used.

    3) Additionally, the functions the web service performs need to be described.  Web Services Description Language (WSDL) [7] is an XML document standard for describing a particular web service's details, including its input and output, the names and types of methods or functions that the service implements and the protocols (e.g. HTTP) to which the service is bound.

    4) Finally, businesses need a way to discover services on the Internet for consumption.  The Universal Description, Discovery and Integration (UDDI) [8] specification is a broad industry effort that creates a global, platform-independent, open framework to enable businesses to (a) discover each other, (b) define how to interact over the Internet, and (c) share information in a global registry that will more rapidly accelerate the global adoption of B2B e-Commerce.

Together, these technologies enable the organisation to deliver web services across the Internet or an intranet regardless of the operating system, programming language, computing device or back-end software that the application is using.

Issues of Concern

Several issues of concern have to be resolved for web services to succeed, many of which are related to the open, hostile environment in which they must survive.  Here are some of the issues [9]:

  • Although UDDI addresses the issue of discovery, what happens if the web service changes or moves, after it has been advertised?
  • Some web services hosts are more reliable than others.  How can this reliability be measured and communicated?
  • Security over the web is of paramount importance.  What security mechanisms should be provided?  How does a web service authenticate users?  What security granularity should be available?
  • Traditional transaction systems use a two-phase commit approach.  Although this works well for closed environments for short-lived transactions, transactions implemented in open environments that span hours or even days are much more challenging.
  • It should be possible to leverage the load-balancing and other scalability mechanisms that exist for Enterprise Java Beans exposed as web services.  However, are there unforeseen stumbling blocks along this course?
  • What kinds of mechanisms are required for managing such a highly distributed system?  Is it possible to out source the management of some web services to other web services?
  • Accountability.   How do companies charge for web services?  If a web service is sold, how is the change of ownership handled?
  • Testing and debugging is much more complex when a system comprises many web services whose location and qualities are dynamic.

Although these sound rather daunting, careful analysis indicates that there are already two example systems that solve these problems. These are the human society and biological organisms.  By following solutions from these systems, web services will be able to collaborate with each other to achieve their own individual goals.

Organisational Challenges

Web services provide a simple, flexible, standards-based model for integrating applications.  Developers can easily assemble new applications from existing and new code, regardless of the platform or development language used to implement any of the constituent services or applications.  This development framework translates into business agility by making it simple to integrate within the organisation and to link with business partners.

From a business standpoint, web services offer a new range of possibilities how organisations and their partners can develop business solutions.  Web services architectures define three distinct roles for organisations:

  • Providers, who define, publish, expose and manage the location and nature of a service. 
  • Brokers who maintain a registry of available services and their location.
  • Consumers who find and bind to an available service.  They must realise the real productivity gain and cost saving by out sourcing most of their non-core business functions.

Web services architectures represent a powerful new technology platform because of their ability to deliver more value with less investment. By harnessing the capabilities of web services [10], enterprises will be able to:

  • Escape being held hostage by proprietary interfaces of software providers
  • Source best of class technology resources for each business need
  • Evolve and tailor business processes much more cost-effectively and quickly
  • Access resources from other enterprises much more cost effectively and quickly

IDC forecasts that "in 2003, we will see people experimenting with web services architectures within the confines of the firewall and then having a gradual exploitation of that outside [the firewall] later on."  Reduced transaction costs will encourage the out sourcing of non-core functions through electronic links with key partners.  In fact, this architecture will generate the greatest business value in mission critical business processes, especially those spanning across multiple enterprises. Web services architectures will generate three broad waves of business opportunities [10]:

  • Service grid utilities - specialised business delivering the enabling services required to support mission critical business processes;
  • Application service businesses - a broad range of business focused on delivering applications as services;
  • Enterprise growth platforms - the opportunity for companies to harness the power of web services architectures to redefine their business and deploy aggressive growth strategies focused on leverage the resources of other organisations.

Long term winners will be those companies that exploit this architecture to deliver more value to consumers more quickly and at lower costs.

Training Implications

Web services offer a solid infrastructure technology for improving IT shops' in-house development productivity, integrating applications and otherwise simplifying a number of difficult technical tasks. 

The speed and reliability associated with using standardised components to process many functions will exponentially increase IT's value to the business.  Yet transforming IT from a handcrafted environment to a web services model is a huge challenge that will take years, because of the transition required. However, companies looking to implement the conceptually simple technology had better be prepared to do a lot of work.

Companies must also change the way they address collaboration, governance and legacy systems, and this will not happen overnight.

  • Collaboration facilitates reuse of components, but it is rare.  A company's executive team must establish a collaborative work environment and build it into the corporate culture and governance structure.  This may mean changing how IT works with business units, how the units work with one another and how a company works with business partners.
  • Billions of lines of legacy code perform key business functions, so identifying, extracting, consolidating and redeploying them are prerequisites to building a viable set of reusable components.

Tying together web services require a new breed of application architecture and development tools.  Companies must build the organisational and IT capabilities to operate in the web services world by investing in training initiatives:

  • In an era of shrinking budgets, IT managers need to train their application developers to adapt to this new way of building systems by becoming integrators of several web services rather than developing new components from scratch.
  • Companies should learn to consume web services provided by third parties so that they can concentrate on their core business.  However such applications need to be flexible enough to allow interchangeability of web services, preferably deferring selection decisions to run time. This will enable IT departments to reduce inefficiencies, out source more easily and deliver solutions more rapidly, while focusing their efforts on building new IT-based businesses. Once applications such as inventory control are out sourced, IT staff focus more on partner relationships and development of new on-line skills within the company.
  • IT managers need to upgrade the skill set of employees to include enterprise application architecture and integration using these new core foundations discussed above such as XML, SOAP and the other enabling technologies.  Skills in security and IT operations assume higher level of importance at which training investment must be directed to. However, companies can still continue to draw on most of the developers' pool as they are not limited to using a single programming language, whilst gradually re-training them in the new skills required for the future.
  • Although greater benefits are achieved by being a consumer of these services, returns also accrue from being a publisher of a web service.  There will be granular components that require in-house development; however application developers must learn to keep in mind, that by designing distinctive web services they can generate additional revenue for the company. However these services need to be able to scale well, meet very high flexibility requirements, be easy to manage and guarantee a high degree of reliability. Requirements which may not be most evident for in-house applications.  Once IT is trained to fully leverage the use of application servers and related tools, it will be relative simple to enterprises to expose and sell web services to other consumer companies. Such will enable a new outlook for IT shops as potential revenue generators adding business value.

This new technical model gives the potential of creating new business models through more tightly coupled collaboration.  Such will also enable proximity relationships between business partners which will untimely benefit the consumers.

Concluding Remarks

Although there are some concerns, such as security, the reliability and availability of the Internet connection, quality of service and management of each layer of the web services stack, as much as the web has revolutionised B2C, web services will transform B2B in the years ahead.

The Web Services architecture provides several benefits, including:

  • Promoting interoperability by minimising the requirements for shared understanding
  • Enabling interoperability of legacy applications by letting disparate applications platforms interact more smoothly than ever before
  • Enabling just-in-time integration over the web
  • Cut the amount of time and money needed for systems integration, the single biggest IT expense of most companies
  • Reducing complexity by encapsulation
  • Ubiquity by using open communication standards such as HTTP and XML
  • Low barrier to entry, with the major players providing free toolkits allowing developers to quickly create and deploy web services
  • Industry support from major vendors.

All of this technology is built on existing Web standards, meaning that aspects of Web applications that seemed exciting not too long ago will now be taken for granted.  When one considers the backing that this technology is getting from industry giants, e.g. IBM, Microsoft, Oracle, BEA and SUN to mention a few, success is inevitable.  Web services must be in every CIO's strategy for the coming years.

 

Bibliography

[1] http://www-106.ibm.com/developerworks/library/ws-arc1.html

[2] http://www.gartner.com/webletter/microsoft/article1/article1.html

[3] http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwebsrv/html/websvcs_platform.asp

[4] http://www6.software.ibm.com/developerworks/education/wsbasics/wsbasics-1-1.html

[5] http://www-4.ibm.com/software/webservers/appserv/doc/v20dcadv/dac/whatis/icxml4j.html

[6] http://www.w3.org/TR/SOAP

[7] http://msdn.microsoft.com/library/?url=/library/en-us/dnwebsrv/html/wsdl.asp?frame=true

[8] www.uddi.org

[9] http://www-106.ibm.com/developerworks/webservices/library/ws-peer1.html

[10] http://www.hbsp.harvard.edu/products/hbr/oct01/R0109G.html

 

Acronym Key

B2B      Business to Business

B2C      Business to Consumer

CIO   Chief Information Officer

EJB      Enterprise Java Beans

HTTP  Hyper Text Transfer Protocol

RPC   Remote Procedure Call

SMTP  Simple Mail Transfer Protocol

SOAP  Simple Object Access Protocol

UDDI      Universal Description, Discovery and Integration

WDSL  Web Services Description Language

XML      eXtensible Mark-up Language

Top of Page