W3C home > Mailing lists > Public > www-ws-arch@w3.org > February 2003

RE: Snapshot of Web Services Glossary

From: David Booth <dbooth@w3.org>
Date: Fri, 21 Feb 2003 13:09:09 -0500
Message-Id: <5.1.0.14.2.20030221112722.032e1528@localhost>
To: "Martin Chapman" <martin.chapman@oracle.com>, <www-ws-arch@w3.org>
Cc: "'Hugo Haas'" <hugo@w3.org>

At 04:35 PM 2/20/2003 -0800, Martin Chapman wrote:
>hmmm don't like the defn of synchronous:

I struggled with this one, and I'm not sure my proposed wording is ideal, 
but what I was trying to do was more clearly differentiate between 
synchronous and asynchronous.   The old definition was very vague.

Somehow we need to convey the idea that with "synchronous" interactions the 
parties are synchronized in some way.  (!)  This could mean "at the same 
time", but in the case of two communicating parties it generally means the 
sending party waits for the receiving party to do something before the 
sending party continues.  Thus, they are "synchronized".  I couldn't figure 
out any better way to precisely capture this.  Any ideas?

> >10.  synchronous
> >[[
> >Property of an interaction whose results are directly following the
> >interaction.
> >]]
> >I suggest adding:
> >[[
> >An interaction between an initiator and a respondent is
> >synchronous if the
> >initiator blocks some further processing while it waits for a
> >corresponding
> >action, response or acknowledgement from the respondent.
> >]]
>
>who/what is doing the blocking?

The agent that initiated the interaction, whatever it is.

>This makes no senese in  a context where
>we don't talk about programming languages, middleware, OSs etc.

I agree that we don't want to talk about specific implementations, but I 
think we can refer generically to the two agents without regard to their 
implementations.  I think a key distinguishing feature of synchronous 
communication is that the two agents are somehow "synchronized" (in 
time).  So if one party is initiating the interaction, it must somehow wait 
for the other party to do something before it continues.  However, I didn't 
think we should imply that the agent must stop ALL processing while it 
waits.  That's why I phrased it as ". . . the initiator blocks *some* 
further processing . . . ."

>Properties of synchronous communications we can convey inthis space are
>direct communication (i.e. not through store and forward)

I agree that store-and-forward would NOT be synchronous, but I don't see 
store-and-forward as the opposite of direct communication.  Communication 
can certainly be indirect (i.e., go through intermediaries) but still be 
synchronous.  So although synchronous communication is often direct, I 
don't see that as a distinguishing characteristic.

>and
>the fact that the reply (if any) comes back on the same communication
>channel as the request.

Interesting thought.  Must that always be true?  I could certainly imagine 
an input-output operation in which the input uses one communication channel 
and the output uses another.  So again, I don't see this as a 
distinguishing characteristic of synchronous communication.

Anyone else have other suggestions for this definition?


-- 
David Booth
W3C Fellow / Hewlett-Packard
Telephone: +1.617.253.1273
Received on Friday, 21 February 2003 13:09:21 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 3 July 2007 12:25:15 GMT