RE: [soa-rm] Architectural Scope of Reference Model

From
Chiusano Joseph <>
Date
2005-04-11T15:27:47+00:00
ID
Thread
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