RE: Spec draft & EXTENDED architecture

At 01:59 PM 10/4/2002 -0400, Newcomer, Eric wrote:
>By the way I want to be sure everyone recognizes Heather Kreger for her 
>very significant contribution to the document, including the diagrams and 
>a large part of the text.

Eric (& Heather!),

That is a great start.  Thanks for doing it.    However, I think the 
concept of a "Discovery Role" or "Discovery Agent" belongs in an EXTENDED 
architecture -- not Basic.  There are many more implications involved in 
using a third-party "Discovery Agent" (trust, integrity, etc.) than are 
needed or desired for a BASIC Web Services architecture.

Consider this simple scenario:

FredCo buys widgets from Widgets-R-Us.  They have an established business 
relationship.  One day Widgets-R-Us calls FredCo on the phone and says 
"Hey, I think we can both save money if we automate your widget 
purchases.  We've just implemented a nifty Web Service.  Want to try 
it?"   FredCo says okay, and Widgets-R-Us emails FredCo two documents: (1) 
a WSDL document that describes the interface for Widgets-R-Us's cool new 
Web Service; and (2) a human-readable document that describes what their 
Web Service does and how to use it (i.e., the semantics).  FredCo uses the 
WSDL to generate its own client-side stub code and integrates that code 
with its existing inventory control system.  FredCo's engineers use the 
human-readable document to know the service's semantics, after a few more 
phone calls to Widgets-R-Us for clarification -- "Are you expecting payment 
before or after the widgets are shipped?" -- it works.

Observations:
1. This looks like a VERY likely scenario to me.
2. There is no "Discovery Agency" in the picture, and no act of "finding" a 
service description.  Any attempt to put one in would be an unnatural 
"force fit".  The parties know each other and they communicate directly -- 
not through a third party "Discovery Agency".  Their existing business 
relationship is what gives them enough trust to interact at all this way.
3. The WSDL is useless without its accompanying semantics.

In short, the use of a third party "Discovery Role" or "Discovery Agency" 
would only add significant complexity and issues that are not required or 
desired for the simple, common-place use of Web Services.  It should not be 
considered a part of the Basic Architecture.

Here is a small section from your draft that I've re-written to illustrate 
what I mean:

[[
The basic architecture includes Web services technologies capable of:
  - Describing services
  - Exchanging messages
The basic Web services architecture defines an interaction between software 
agents as an exchange of messages between service requesters and service 
providers. Requesters are software agents that request the execution of a 
service. Providers are software agents that provide a service. Agents can 
be both service requesters and providers. Providers are responsible for 
describing the service(s) they provide.  Requesters are responsible for 
interacting with the service(s) in accordance with the service 
description(s).
]]

Comments?


-- 
David Booth
W3C Fellow / Hewlett-Packard
Telephone: +1.617.253.1273

Received on Friday, 4 October 2002 19:31:23 UTC