-----Original Message-----
From: Chiusano Joseph [mailto:]=20
Sent: Wednesday, December 15, 2004 9:01 AM
To: Matthew MacKenzie; ebSOA OASIS TC
Subject: RE: [ebsoa] Does SOA Require Registry-Based Dynamic Discovery?
=09
=09
Thanks Matt. From that I take:
=20
- Discovery in general is required for SOA (cannot function without it)
- Whether it is (what I will call) "fundamental" discovery - meaning =
your first example below - or "registry-based" discovery depends on =
technical and business requirements.
=20
I just cannot foresee trying to convince a current or potential =
customer that they have to put up $XX,XXX for a registry product if the =
technical and business requirements do not call for it, just to comply =
with someone's definition of the term "SOA".
=20
Kind Regards,
Joseph Chiusano
Booz Allen Hamilton
Strategy and Technology Consultants to the World
=20
________________________________
From: Matthew MacKenzie [mailto:]=20
Sent: Wednesday, December 15, 2004 11:57 AM
To: Chiusano Joseph; 'ebSOA OASIS TC'
Subject: RE: [ebsoa] Does SOA Require Registry-Based Dynamic =
Discovery?
=09
=09
My opinion is that a registry is nothing more than a very explicit =
service discovery device.
=20
An SOA does need a method of discovering services, and consuming them, =
but this method may in some cases be subtle. For example, my SOA may =
operate on the premise that consumers all are aware of an enumeration of =
service types, and their port numbers (think /etc/services in the unix =
world), and allowable IP ranges for finding services. Clients may be =
configured something like:
=20
{
Services imap, http, ssh, daytime, pop3, portmap
IPRange 192.168.0.0/24
}
=20
A client with such a configuration does have a way of discovering =
services that are available to it, and of course, a way of binding to =
them.
=20
Contrast this with a registry driven SOA:
=20
{=20
ServiceRegistry http://foo/registry
}
=20
The only difference is in the implementation detail and verbosity of =
information available. Conceptually, they are the same.
=20
=20
--Matt MacKenzie
=09
________________________________
From: Chiusano Joseph [mailto:]=20
Sent: Wednesday, December 15, 2004 11:38 AM
To: ebSOA OASIS TC
Subject: [ebsoa] Does SOA Require Registry-Based Dynamic Discovery?
=20
What is the TC's opinion on the answer to the question of "does SOA =
require registry-based dynamic discovery"? I know that Discovery is a =
pattern in the .047 spec, which leads me to believe that the position is =
that SOA does not *require* registry-based discovery.
=20
For example, suppose that:
=20
- 2 organizations are using Web Services in a "SOA-like" manner =
(meaning shared services represented as Web Services, that are invoked =
by other Web Services).=20
=20
- There is no registry-based dynamic discovery, perhaps because the =
organizations agree that these service locations are completely (or =
relatively) stable, and that if the locations change, there will be some =
out-of-band mechanism for propagating updated WSDL documents
=20
Are these 2 organizations therefore *not* using a service-oriented =
architecture? That is, does the second point completely negate the =
first? Or, is it all really a matter of business and technical =
requirements?
=20
Kind Regards,
Joseph Chiusano
Booz Allen Hamilton
Strategy and Technology Consultants to the World
=20
------_=_NextPart_001_01C4E2C8.49BE5F56
Content-Type: text/html;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns=3D"http://www.w3.org/TR/REC-html40" xmlns:v =3D=20
"urn:schemas-microsoft-com:vml" xmlns:o =3D=20
"urn:schemas-microsoft-com:office:office" xmlns:w =3D=20
"urn:schemas-microsoft-com:office:word"><HEAD><TITLE>Message</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<META content=3D"MSHTML 6.00.2800.1479" name=3DGENERATOR><!--[if !mso]>
<STYLE>v\:* {
BEHAVIOR: url(#default#VML)
}
o\:* {
BEHAVIOR: url(#default#VML)
}
w\:* {
BEHAVIOR: url(#default#VML)
}
.shape {
BEHAVIOR: url(#default#VML)
}
</STYLE>
<![endif]-->
<STYLE>@font-face {
font-family: Tahoma;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
A:link {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
COLOR: purple; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
COLOR: purple; TEXT-DECORATION: underline
}
SPAN.EmailStyle17 {
COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal-reply
}
DIV.Section1 {
page: Section1
}
</STYLE>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></HEAD>
<BODY lang=3DEN-US vLink=3Dpurple link=3Dblue>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><SPAN =
class=3D642050217-15122004>From=20
my view the "registry requirement" is more a function of the =
distributed=20
nature of the participants, the number and type of services, and the =
amount of=20
change. A registry provides a method for decoupling "the use of an =
SOA"=20
from "direct communication of the participants about HOW to use the =
SOA".</SPAN></FONT></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><SPAN=20
class=3D642050217-15122004></SPAN></FONT> </DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><SPAN =
class=3D642050217-15122004>An SOA=20
without registry by definition is limited and =
private</SPAN></FONT></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><SPAN=20
class=3D642050217-15122004></SPAN></FONT> </DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><SPAN =
class=3D642050217-15122004>An SOA=20
with a registry is open and dynamic</SPAN></FONT></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><SPAN=20
class=3D642050217-15122004></SPAN></FONT> </DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><SPAN=20
class=3D642050217-15122004>John</SPAN></FONT></DIV>
<BLOCKQUOTE dir=3Dltr style=3D"MARGIN-RIGHT: 0px">
<DIV></DIV>
<DIV class=3DOutlookMessageHeader lang=3Den-us dir=3Dltr =
align=3Dleft><FONT=20
face=3DTahoma size=3D2>-----Original Message-----<BR><B>From:</B> =
Chiusano Joseph=20
[mailto:] <BR><B>Sent:</B> Wednesday, December =
15, 2004=20
9:01 AM<BR><B>To:</B> Matthew MacKenzie; ebSOA OASIS =
TC<BR><B>Subject:</B> RE:=20
[ebsoa] Does SOA Require Registry-Based Dynamic=20
Discovery?<BR><BR></FONT></DIV>
<DIV dir=3Dltr align=3Dleft><SPAN class=3D558335816-15122004><FONT =
face=3DArial=20
size=3D2>Thanks Matt. From that I take:</FONT></SPAN></DIV>
<DIV dir=3Dltr align=3Dleft><SPAN class=3D558335816-15122004><FONT =
face=3DArial=20
size=3D2></FONT></SPAN> </DIV>
<DIV dir=3Dltr align=3Dleft><SPAN class=3D558335816-15122004><FONT =
face=3DArial=20
size=3D2>- Discovery in general is required for SOA (cannot function =
without=20
it)</FONT></SPAN></DIV>
<DIV dir=3Dltr align=3Dleft><SPAN class=3D558335816-15122004><FONT =
face=3DArial=20
size=3D2>- Whether it is (what I will call) "fundamental" discovery - =
meaning=20
your first example below - or "registry-based" discovery depends on =
technical=20
and business requirements.</FONT></SPAN></DIV>
<DIV dir=3Dltr align=3Dleft><SPAN class=3D558335816-15122004><FONT =
face=3DArial=20
size=3D2></FONT></SPAN> </DIV>
<DIV dir=3Dltr align=3Dleft><SPAN class=3D558335816-15122004><FONT =
face=3DArial=20
size=3D2>I just cannot foresee trying to convince a current or =
potential=20
customer that they have to put up $XX,XXX for a registry product if =
the=20
technical and business requirements do not call for it, just to comply =
with=20
someone's definition of the term "SOA".</FONT></SPAN></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV align=3Dleft><FONT face=3DArial size=3D2>Kind =
Regards,</FONT></DIV>
<DIV align=3Dleft><FONT face=3DArial size=3D2>Joseph =
Chiusano</FONT></DIV>
<DIV align=3Dleft><FONT face=3DArial size=3D2>Booz Allen =
Hamilton</FONT></DIV>
<DIV align=3Dleft><FONT face=3DArial size=3D2>Strategy and Technology =
Consultants to=20
the World</FONT></DIV>
<DIV> </DIV><BR>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px =
solid; MARGIN-RIGHT: 0px">
<DIV class=3DOutlookMessageHeader lang=3Den-us dir=3Dltr =
align=3Dleft>
<HR tabIndex=3D-1>
<FONT face=3DTahoma size=3D2><B>From:</B> Matthew MacKenzie=20
[mailto:] <BR><B>Sent:</B> Wednesday, December 15, =
2004 11:57=20
AM<BR><B>To:</B> Chiusano Joseph; 'ebSOA OASIS =
TC'<BR><B>Subject:</B> RE:=20
[ebsoa] Does SOA Require Registry-Based Dynamic=20
Discovery?<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=3DSection1>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">My =
opinion is that=20
a registry is nothing more than a very explicit service discovery=20
device.<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">An SOA =
does need a=20
method of discovering services, and consuming them, but this method =
may in=20
some cases be subtle. For example, my SOA may operate on the =
premise=20
that consumers all are aware of an enumeration of service types, and =
their=20
port numbers (think /etc/services in the unix world), and allowable =
IP=20
ranges for finding services. Clients may be configured =
something=20
like:<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial">{<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"> =
=20
Services imap, http, ssh, daytime, pop3,=20
portmap<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"> =
=20
IPRange 192.168.0.0/24<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial">}<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">A client =
with such=20
a configuration does have a way of discovering services that are =
available=20
to it, and of course, a way of binding to =
them.<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Contrast =
this with=20
a registry driven SOA:<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">{=20
<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"> =
=20
ServiceRegistry http://foo/registry<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial">}<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">The only =
difference=20
is in the implementation detail and verbosity of information=20
available. Conceptually, they are the=20
same.<o:p></o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"><o:p> </o:p></SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">--Matt=20
MacKenzie<o:p></o:p></SPAN></FONT></P>
<DIV>
<DIV class=3DMsoNormal style=3D"TEXT-ALIGN: center" =
align=3Dcenter><FONT=20
face=3D"Times New Roman" size=3D3><SPAN style=3D"FONT-SIZE: 12pt">
<HR tabIndex=3D-1 align=3Dcenter width=3D"100%" SIZE=3D2>
</SPAN></FONT></DIV>
<P class=3DMsoNormal><B><FONT face=3DTahoma size=3D2><SPAN=20
style=3D"FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: =
Tahoma">From:</SPAN></FONT></B><FONT=20
face=3DTahoma size=3D2><SPAN style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Tahoma">=20
Chiusano Joseph [mailto:] <BR><B><SPAN=20
style=3D"FONT-WEIGHT: bold">Sent:</SPAN></B> Wednesday, December 15, =
2004=20
11:38 AM<BR><B><SPAN style=3D"FONT-WEIGHT: bold">To:</SPAN></B> =
ebSOA OASIS=20
TC<BR><B><SPAN style=3D"FONT-WEIGHT: bold">Subject:</SPAN></B> =
[ebsoa] Does=20
SOA Require Registry-Based Dynamic=20
Discovery?</SPAN></FONT><o:p></o:p></P></DIV>
<P class=3DMsoNormal><FONT face=3D"Times New Roman" size=3D3><SPAN=20
style=3D"FONT-SIZE: 12pt"><o:p> </o:p></SPAN></FONT></P>
<DIV>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">What is the TC's =
opinion on the=20
answer to the question of "does SOA require registry-based dynamic=20
discovery"? I know that Discovery is a pattern in the .047 spec, =
which leads=20
me to believe that the position is that SOA does not *require*=20
registry-based discovery.</SPAN></FONT><o:p></o:p></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3D"Times New Roman" size=3D3><SPAN=20
style=3D"FONT-SIZE: 12pt"> <o:p></o:p></SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">For example, suppose=20
that:</SPAN></FONT><o:p></o:p></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3D"Times New Roman" size=3D3><SPAN=20
style=3D"FONT-SIZE: 12pt"> <o:p></o:p></SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">- 2 organizations are =
using Web=20
Services in a "SOA-like" manner (meaning shared services represented =
as Web=20
Services, that are invoked by other Web Services).=20
</SPAN></FONT><o:p></o:p></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3D"Times New Roman" size=3D3><SPAN=20
style=3D"FONT-SIZE: 12pt"> <o:p></o:p></SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">- There is no =
registry-based=20
dynamic discovery, perhaps because the organizations agree that =
these=20
service locations are completely (or relatively) stable, and that if =
the=20
locations change, there will be some out-of-band mechanism for =
propagating=20
updated WSDL documents</SPAN></FONT><o:p></o:p></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3D"Times New Roman" size=3D3><SPAN=20
style=3D"FONT-SIZE: 12pt"> <o:p></o:p></SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Are these 2 =
organizations=20
therefore *not* using a service-oriented architecture? That is, does =
the=20
second point completely negate the first? Or, is it all really a =
matter of=20
business and technical =
requirements?</SPAN></FONT><o:p></o:p></P></DIV>
<DIV>
<P class=3DMsoNormal><FONT face=3D"Times New Roman" size=3D3><SPAN=20
style=3D"FONT-SIZE: 12pt"> <o:p></o:p></SPAN></FONT></P></DIV>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Kind=20
Regards,</SPAN></FONT><o:p></o:p></P>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Joseph=20
Chiusano</SPAN></FONT><o:p></o:p></P>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Booz Allen=20
Hamilton</SPAN></FONT><o:p></o:p></P>
<P class=3DMsoNormal><FONT face=3DArial size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Strategy and =
Technology=20
Consultants to the World</SPAN></FONT><o:p></o:p></P>
<DIV>
<P class=3DMsoNormal><FONT face=3D"Times New Roman" size=3D3><SPAN=20
style=3D"FONT-SIZE: =
12pt"> <o:p></o:p></SPAN></FONT></P></DIV></DIV></BLOCKQUOTE></BLOCK=
QUOTE></BODY></HTML>
=00
------_=_NextPart_001_01C4E2C8.49BE5F56--