| By Andrew Astor | Article Rating: |
|
| February 1, 2002 12:00 AM EST | Reads: |
11,995 |
In many respects, Web services are nothing new. They are just a natural evolution of an approach to building systems that dates back 40 years. On the other hand, they hold the promise of truly transforming computing in the same way that client/server computing did over the past 15 years. This article tries to address the question, "What's all the excitement about?"
What is a Service?
Let's begin by defining the term "service." A service is a reusable
piece of self-contained logic that knows how to do a task, but does
not know why it is being called upon. A water fountain is a good
example of a service: it is quite skilled at providing drinking
water, but it has no idea that its client is thirsty.
Software developers long ago recognized the need for services. Without reusable and self-contained programming logic, they had to write the same code multiple times, and then maintain each of these multiple instances. In the early days of computing, when systems were limited to a single host platform, reusable services were called subroutines or external program calls. Regardless of the name, though, these were early versions of services.
As computing spread across multiple computers, the need arose for reusable services that could operate across machine boundaries. An entire industry evolved around this need, which became known as client/server (i.e.,client/service) computing. Fortunes were made by companies that built tools to help programmers build systems that interoperated across machine boundaries. Note that the concept of a service had not changed at all. Only the underlying environment had changed - transitioning from single to multiple machines.
Web Services
The evolving maturity of the Web takes the notion of a service to yet
another level. In the world of client/server computing, service
invocations are typically made within a single, private network, or
at least within a pre-established network of partners. In addition,
client/server components are generally "tightly coupled," which means
that the client needs to have registered to use the service in
advance. (This is analogous to a water fountain working for you only
if you have registered in advance for its use.)
Web services, on the other hand, are typically invoked across the Internet or an intranet, and are always loosely coupled. In other words, there is no technical requirement for a Web service to know in advance which clients will access it. Indeed, new clients can "add themselves" simply by using the correct calling parameters and demonstrating proper authorization.
Since Web services can be made publicly available so easily, they promise to bring new possibilities to the way organizations work with each other, transforming B2B commerce over the next few years. This is the most common view of Web services, and is what most of the excitement is about.
Interestingly, though, Web services are emerging even more quickly as an integration mechanism within individual organizations for Application-to-Application communications (A2A). The loosely coupled architecture of Web services delivers a flexible, extensible architecture for companies trying to integrate disparate systems. Important companies in this space include webMethods, Tibco Software, SeeBeyond Technology, and Vitria Technology.
For externally-accessed Web services, the idea is that a service can be placed onto the Web, where any organization's applications can find it and use it easily - much like a drinking fountain. Once again, there has been no change to the concept of a service. Rather, the underlying environment in which services operate has changed fundamentally. And these changes in turn fundamentally transform the way we do business.
Some Examples
Let's take a look at how Web services are already beginning to change
the face of computing to get a taste of this new technology's power:
An early example of Web services is Dun & Bradstreet's Global Access Toolkit (reviewed in WSJ, Vol. 1, issue 1). D&B provides creditworthiness and other information about businesses worldwide. Last year they implemented a Web services system (Global Access) that allows authorized customers to access D&B data across the Internet as if that data was local to their own system. For example, a commercial bank's loan application system might call out to Global Access with a client company's key identification information (name, address, etc.) while the rest of the loan application is still being entered by a user. Within seconds, the loan system receives D&B's credit rating, enabling a credit decision to be rendered even before the application is completed.
A much more broad-reaching Web services example is Microsoft's .NET My Services formerly code-named Hailstorm. Based on Microsoft's .NET platform, My Services promises to put many individual services into Web service form, including management systems for contact lists, calendars, inboxes (both e-mail and voice mail), money, and far more. Web services are so fundamental to Microsoft's strategy that they openly speak about redefining the company over the next five years as a provider of Internet software-based services, rather than a software producer.
In truth, nearly every developer-centric software company has jumped onto the Web services bandwagon. Major platforms include Microsoft's NET, Sun's Open Net Environment (Sun ONE), IBM's WebSphere, BEA's WebLogic, Cape Clear, Iona, SilverStream, OASIS, Apache, Borland, and many others.
Buzzwords -
Four Key Technologies
Now that we understand the conceptual definition of a Web service,
I'll mention the key underlying technology standards upon which Web
services are based. The technologies listed below reflect current
thinking, and are widely supported. Bear in mind, however, that other
variants exist; this is a fast-changing world. That said, following
are the key technologies behind Web services today:
- XML (eXtensible Markup Language): An extension to the HTML language that allows data definitions to be transmitted along with the data itself. Prior to XML's development, it was difficult to write software that would interpret the contents of a Web page because the pages simply contained text and graphics. XML allows the individual fields in a page to be described, so that a piece of software can understand them. XML is by far the most universally accepted standard for Web service enablement.
- SOAP (Simple Object Access Protocol): A standardized way of using the XML language to call a Web service. Just as the English language needs grammatical rules to be understood, SOAP is a "grammar" that uses XML to call a Web service.
- UDDI (Universal Description, Discovery, and Integration): A central directory of Web services where services can be registered, much like the Yellow Pages. This permits potential customers (i.e., automated programs) to browse available services, and identify the location of these services and what information they require. For example, a system looking to purchase 100 tons of steel can browse a UDDI directory, find the services that vend steel, and submit price queries instantly and automatically.
- WSDL (Web Services Description Language): A standardized way in which the interfaces (i.e., inputs and outputs) of Web services are described. A WSDL file is generally part of a UDDI directory entry, and thus enables the client software to determine how to use the published service.
The power of Web services is no longer in question. Over the next few years, they will fundamentally change the way most companies build and use software. Of course, as with any important new technology, Web services also raise new challenges. I will touch on just a couple in the following paragraphs. Each of these items could easily fill a complete introductory article in its own right, but it is worthwhile to at least mention them here.
- Security: When we open our services to the world, all sorts of security issues arise. Some obvious examples include authentication, authorization, and bill/payment processing. Every situation is different, but all require a security analysis.
- Discovery: A Yellow Pages for Web services is very powerful, but also complex. There is a large difference between publishing phone numbers categorized by business and publishing the very mechanisms for doing business with companies. Standards are not yet firm in this area, and they have a long way to go before reaching universal acceptance. In addition, there is a real question as to how popular UDDI or other methods will be beyond a certain class of universal services.
My hope is that this article has communicated two key messages that might at first seem contradictory. First, Web services are nothing new; they are simply the next step in service-oriented computing, which has been evolving for more than 30 years. There is no great mystery here, and they are not the solution to world hunger.
The second key point is that Web services change everything. They provide the mechanisms to automate the Web, and to bring enormous efficiencies to the marketplace. All technology leaders should begin now to look for the B2B initiatives within their organizations that can benefit from this key technology. Web services may become the most significant new technology category for many companies during the next several years.
Many of us are excited about Web services. But be cautious: they do not solve all of your problems. Do not let your over-enthusiastic developers make them the answer to all things IT. If it doesn't make sense to you, don't do it. Also, remember that Web services are in their infancy and it would be unwise to over-commit. Put a toe in the water. Get some experience. Experiment. Don't lock into a single vendor until you understand the domain.
Published February 1, 2002 Reads 11,995
Copyright © 2002 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Andrew Astor
Andy Astor is co-founder, president and CEO of EnterpriseDB. Prior to EDB, he was a vice president at webMethods, Inc., where he was responsible for technical marketing, corporate acquisition integration and standards leadership and evangelism. While at webMethods, he was elected twice to the Board of Directors of the Web Services Interoperability Organization (WS-I), and he served as that organization's Marketing Chair. A frequent speaker at industry conferences, Andy is also on the International Advisory Board for SOA Web Services Journal.
- The Top 150 Players in Cloud Computing
- SYS-CON.TV: Cloud Computing Expo Power Panel
- Why IBM’s Server Chief Got Busted
- SOA World Power Panel on SYS-CON.TV
- 1st Annual GovIT Expo: Letter from the Technical Chair
- Deputy CIO of the CIA to Keynote 1st Annual GovIT Expo
- Stock in Focus: Dragon Capital
- 1st Annual Government IT Conference & Expo: Themes & Topics
- CIA was Headed to an Enterprise Cloud All Along: Jill Tummler Singer
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- The Top 150 Players in Cloud Computing
- SOA in the Cloud - Monitoring and Management for Reliability
- How to Diagnose Java Resource Starvation
- SYS-CON.TV: Cloud Computing Expo Power Panel
- Software AG Named "Gold Sponsor" of SOA World Conference & Expo 2009 East
- Why IBM’s Server Chief Got Busted
- IBM & Cloud Computing: How "SOA in the Cloud" Can Produce Real Change
- SYS-CON's Cloud Expo Adds Two New Tracks
- SOA World Power Panel on SYS-CON.TV
- 1st Annual GovIT Expo: Letter from the Technical Chair
- The i-Technology Right Stuff
- Who Are The All-Time Heroes of i-Technology?
- Get the Message
- Where Are RIA Technologies Headed in 2008?
- Success, Arrogance, Rise and Fall
- i-Technology Viewpoint: Is Web 2.0 the Global SOA?
- i-Technology Viewpoint: Thinking Outside the VC Box
- ESB Myth Busters: 10 Enterprise Service Bus Myths Debunked
- i-Technology Viewpoint: When to Leave Your First IT Job
- SOA Web Services Edge Conference Coverage on SYS-CON.TV









The new widgetry features multi-cluster suppo...

























