Agreed
From: Chiusano Joseph
[mailto:]
Sent: Monday, April 11, 2005 11:27
AM
To: Christopher Bashioum; Ken Laskey; Hamid Ben
Malek
Cc: Smith, Martin;
Subject: RE: [soa-rm] Architectural
Scope of Reference Model
Since such a component does
not have to even be a bus configuration (there are other possible
configurations, such as a star), I think "infrastructure communications
component" (or similar) may be more abstract than using the term
"bus".
Joe
Kind Regards,
Joseph Chiusano
Booz Allen
Hamilton
Visit
us online@ http://www.boozallen.com
From: Christopher Bashioum
[mailto:]
Sent: Mon 4/11/2005 11:14
AM
To: 'Ken Laskey'; 'Hamid Ben Malek'
Cc: 'Smith,
Martin';
Subject: RE: [soa-rm]
Architectural Scope of Reference Model
Ken,
i don't have any problem staying away from the term
ESB. However, in light of one of your other messages (which I agree
with very much) that we capture the idea and then figure out what to call that
idea later, I would suggest that the idea of some kind of a communications
"bus" is inherent in an SOA. In other words, services
should plug into something to be a service in an SOA. The
bus defines the boundaries of the SOA. If you are on the bus,
you are "in", if you are not on the bus, you are "out". This
may be crossing into the concrete too much, but I think the RM
should probably reference something that is an abstract of a
bus.
From: Ken Laskey [mailto:]
Sent: Sunday, April 10, 2005 4:29 PM
To: Hamid Ben
Malek
Cc: Smith, Martin;
Subject: Re: [soa-rm] Architectural
Scope of Reference Model
I would strongly suggest we stay away from the term ESB. It has
become an ill-defined product offering from many vendors and it is not at
all clear what needs to be present in such a component. An ESB (or some
vendor's notion of an ESB) could be an implementation mechanism but such a
conglomeration is show be the output of design, not the conceptual
reference.
Ken
On Apr 4, 2005, at 7:03 PM, Hamid Ben Malek
wrote:
[Vikas]: However the point that is lost in this discussion is
the one the original email author made i.e. we need to have an
architectural element which discusses the “communication infrastructure”
in a SOA-RM.
[Hamid] Viaks, I agree with your last
sentence above. What you call “communication infrastructure” in your above
sentence, I call it ESB. Some people misunderstand the term ESB when they
look at it literally: the word “bus” suggests to them many connotations
that does not necessary exist in an ESB. The term ESB should be understood
in an abstract way. It is a technical term that should not be analyzed
through the words that makes it.
Martin,
ESB
is not exactly legacy adapter. It is true that most implementations of an
ESB incorporate data transformations and ESBs are used mostly for EAI.
However, this is only the current implementation of the concept of ESB.
Independently of the way an ESB may be implemented, the fact still remains
that there are profound concepts in the term ESB. Concerning the
peer-to-peer topology, that could be possible with an ESB, but to assume
that every transaction or call is peer-to-peer would be a very restrictive
design of what SOA is about. For example, a client application that is
connected to an ESB should be possible to invoke a service that it does
not even know about. The ESB finds the right service, based on various
criteria (that could also include the fees to pay for invoking such a
service), and the bus (ESB) makes the call on behalf of the application.
Or sometimes, the service invocation itself may involve multiple
invocations among a group of other services, orchestrated by some
important components within the
ESB.
Hamid.
From:
Smith, Martin [mailto:]
Sent: Monday, April
04, 2005 2:44 PM
To: Hamid Ben Malek
Cc:
Subject: RE: [soa-rm] Architectural
Scope of Reference Model
Hamid -
-
OK, this brings me out of my cave . .
.
What I hear people call an ESB seems to be a
“legacy adapter” (EAI - - protocol and data transform) plus various other
functions I would model as independent components, including BPM, reliable
messaging, and services location.
I think it’s
essential to separate out the “legacy adapter” functionality from the
rest. And I would prefer to model the separate functions as separate
entities/whatevers in our RM. The fact that the functions are
marketed in various combinations should not overly influence our
analytical decisions.
I’m very concerned that the use
of the term ESB suggests that every transaction in the system (meaning the
relevant collection of services and consumers) passes through the “bus.”
This seems very wrong to me.
The unifying
element in an SOA environment is the services catalog, which allows any
consumer or service to find and bind to others. After that, it’s
peer-to-peer unless “helper” or QOS services are
needed.
Whew - - I feel
better.
Martin
-----Original
Message-----
From: Hamid Ben Malek
[mailto:]
Sent: Monday, April 04, 2005 2:58
PM
To: ; 'Duane Nickull'; 'Schuldt, Ron
L'
Cc: 'Thomas Erl';
Subject: RE: [soa-rm] Architectural
Scope of Reference Model
Hi
all,
I have not been following the discussion on this
mailing list as I have not read all the messages yet (or should I say I
have read only two or three emails). But it just happened that I have read
this one, and I felt compelled to give my input to it. What Duane is
calling “binding mechanism” (namely the component(s) responsible for
receiving/sending and handling of messages) is actually part of a system
called “Enterprise Service Bus”. SOA Reference Model should try to define
the general principles of an ESB in a way that is independent of any
specific implementation of the ESB. The question whether a given service
by itself is an SOA service, does not make lot of sense. Any service could
become an SOA service if it is hooked up to an ESB. The real questions are
how to define an ESB in an abstract way, and how to define the adapters
that can hook up a given service to an ESB? The best analogy would be to
compare the ESB to the internet, a service to a computer, and the adapters
to the network cable and its accessories that allow a given computer to
hookup to the internet (to get connected). In regards to the feasibility
of defining a “ping” specification to SOA-test a service, I think that is
possible, but it will be defined within the specification of an
ESB.
Hamid.
-----Original
Message-----
From: Vikas Deolaliker
[mailto:]
Sent: Monday, April 04, 2005
11:27 AM
To: 'Duane Nickull'; 'Schuldt, Ron L'
Cc:
'Thomas Erl';
Subject: RE:
[soa-rm] Architectural Scope of Reference
Model
The
binding mechanism is transport related and IMHO would not
completely
specify the communication mechanisms need for
SOA-RM. We would still need to
have some "Hello Packets or
Ping" type specification which allows us to
answer the
question "Is that service
SOA?"
Vikas
-----Original
Message-----
From: Duane Nickull
[mailto:]
Sent: Wednesday, March 30,
2005 4:21 PM
To: Schuldt, Ron L
Cc: Thomas
Erl;
Subject: Re: [soa-rm]
Architectural Scope of Reference
Model
Ron:
I
will attempt to answer your question. If designing a service
oriented
architecture for an infratructure, yes - probably
none would exist
without messaging or messages. If
you use SOA principles to design a
single component (for
example - some sort of specialized services
server), it,
by itself, may not have any "messages" or mesage
generation
software, only a component of the service that
recevies messages from
other components (which I have been
calling a "binding mechanism"). So
if one were to
ask the question " is that services server SOA?",
the
answer would be yes if it had all the elements (which
we have not yet
defined) of
SOA.
I hope this makes some
sense?
Duane
Schuldt,
Ron L
wrote:
>Team,
>
>I
agree in principle with Thomas and Duane. For the reference model,
I
agree that we should not be defining messages. Message
design is clearly an
implementation architecture
artifact.
>
>However, is any
SOA possible if there are no communications? I can't
think
of any example and I'm not saying one doesn't exist.
If no example exists,
then don't we need a communications
element in the reference model? If so,
then there would be
a need for an artifact called a
communications
specification - although the reference
model would not define the content of
a communications
specification.
>
>Ron
>
>
>-----Original
Message-----
>From: Duane Nickull
[mailto:]
>Sent: Wednesday, March 30,
2005 7:45 AM
>To: Thomas Erl
>Cc:
>Subject: Re: [soa-rm]
Architectural Scope of Reference
Model
>
>
>Thomas:
>
>Thank
you for this very elegant
summary!
>
>I think the answer
may be in the definition of a "reference model"
vs.
>"architecture". I think case studies will
help clear up this
>confusion. A reference model
will normally not contain "messages" as
a
>component.
>
>1.
Please look at the OSI Reference model. This is a
communication
>stack yet it does not contain
messages:
>http://www.scit.wlv.ac.uk/~jphb/comms/std.7layer.html
>
>This
does not contain any "message" although messages will occur
in
>implementations using the reference
model
>
>2. The ITA Reference
Model likewise does not have
"messages":
>http://www.ewita.com/earlywork/itarefr.htm
>
>3.
RCS Reference
Model
>http://www.isd.mel.nist.gov/documents/messina/euro_cast.pdf
>
>Again
- no messages even though there is an element
marked
>"Communications" in figure
one.
>
>The reference
Model should not contain "messages" as a component.
That
>belongs in architecture or implementations based
on the reference
>model. I have never encountered
one reference model with concrete terms
>in it.
If it had such, it would not be
abstract.
>
>We must think
abstract, not
concrete.
>
>Duane
Nickull
>
>
>
>
>
>Thomas
Erl
wrote:
>
>
>
>>Some
thoughts regarding the on-going discussion of whether a
message
>>element should be part of our reference
model:
>>
>>As per our chosen
definition of architecture, in order to
describe
>>service-oriented architecture we need
to:
>>1. Define elements that comprise the structure
of a system.
>>2. Define external properties of
these elements.
>>3. Define relationships between
these elements.
>>4. Define the overall structure of
the system.
>>(not necessarily in this
order)
>>
>>Starting with the
first point, different element collections have
been
>>proposed in the two position papers submitted
so far. As has been
>>discussed, the
MacKenzie/Nickull paper does not identify a
message
>>element, whereas Kohring's
does.
>>
>>A related
difference I noticed when reviewing these papers is
that
>>Kohring's establishes a broader range of SOA
elements. Specifically,
>>both service provider and
requestor (consumer) roles are
separately
>>identified and described. As mentioned
in item #3 above, we are
>>required to define the
relationship between the elements we
define.
>>Therefore, it makes sense that this paper
includes a separate element
>>(message) that can be
used to help describe the relationship between
a
>>service and its
requestor.
>>
>>The elements
identified in the MacKenzie/Nickull paper are:
>>-
Service
>>- Service
Description
>>- A form of advertisement to
facilitate discoverability.
>>- Service
Contract
>>- Data
Model
>>These elements form a narrower architectural
scope, leading to a
>>proposed architecture that
revolves primarily around the service (or
a
>>service assuming the provider role). Because a
service requestor is
>>not explicitly identified as
a separate element, it makes sense that
>>an element
representing some unit of communication (message
or
>>otherwise) is also not identified. Within this
model's scope, the
>>definition of a relationship
between a service and its requestor
>>(beyond
details implied by description, contract, data model,
and
>>advertisement elements) is not a
requirement.
>>
>>I believe
that in order to address the issue of whether a message is
a
>>legitimate element within the reference model,
we should begin
>>by clearly defining the scope of
our abstract architecture. Given that
>>we are
establishing core elements that are expected to be present
in
>>all forms of SOA, this raises the question:
Does an architecture
>>require the presence of both
a service provider and a service
>>requestor (the
coffee shop and the patron) in order to be
classified
>>"service-oriented"? If yes, we must
define this relationship. To
>>properly do so, we
very well may need to further identify and define
a
>>separate element to represent an abstract unit
of communication passed
>>between
them.
>>
>>Thomas
>>
>>
>>
>>
>
>
>
>
--
***********
Senior
Standards Strategist - Adobe Systems, Inc. -
http://www.adobe.com
Vice Chair - UN/CEFACT Bureau Plenary
- http://www.unece.org/cefact/
Adobe Enterprise Developer
Resources
-
http://www.adobe.com/enterprise/developer/main.html
***********
------------------------------------------------------------------------------------------
Ken
Laskey
MITRE Corporation, M/S H305 phone: 703-883-7934
7515 Colshire
Drive fax: 703-883-1379
McLean VA
22102-7508