OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

soa-rm message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [soa-rm] Opacity calumny


How about this for a rule of thumb:

Anything that is an engineering tradeoff (opacity, loose coupling, etc) 
does not belong in a RM, but belongs in a RA.

Michael

At 09:47 AM 7/13/2005, Bashioum,Christopher D wrote:
>I agree with your assertion of a continuum that goes from uncoupled to
>tightly coupled.  However, I am not so sure that the concept of loose
>coupling does not belong in the RM (but not convinced it does, either).
>
>
>For example, if I take an existing client-server system and just
>advertise the interface to that server - does this give me SOA?  What if
>the client and the server are very tightly coupled - where the client
>sometimes sends messages to the server and sometimes just directly
>accesses the data store that the server is using?  What if the client
>and the server both share the data store, and only send messages to each
>other when the data store is updated?
>
>I am still struggling with this, as I am not sure how to "measure" the
>degree of coupling, and even if I did know how to measure it, I am not
>sure what the threshold would be for SOA.  But, just because it is hard,
>I would hate to not address it.  I think that the idea of loose coupling
>(however subjective that is) is inherent to SOA.  If you don't have it,
>you don't have SOA.
>
>Thoughts?
>
>-----Original Message-----
>From: Chiusano Joseph [mailto:chiusano_joseph@bah.com]
>Sent: Wednesday, July 13, 2005 9:32 AM
>To: soa-rm@lists.oasis-open.org
>Subject: RE: [soa-rm] Opacity calumny
>
>I believe that the degree of coupling is something outside the scope of
>an RM, as it is more of a concrete aspect. It does, however, belong in
>an RA and within concrete domain architectures.
>
>Joe (not Duane hijacking Joe's e-mail account;)
>
>Kind Regards,
>Joseph Chiusano
>Booz Allen Hamilton
>O: 703-902-6923
>C: 202-251-0731
>Visit us online@ http://www.boozallen.com
>
>
> > -----Original Message-----
> > From: Bashioum,Christopher D [mailto:CBASHIOUM@mitre.org]
> > Sent: Wednesday, July 13, 2005 9:14 AM
> > To: Michael Stiefel; soa-rm@lists.oasis-open.org
> > Subject: RE: [soa-rm] Opacity calumny
> >
> > Agreed - so is there something about the loose coupling and
> > the design of the interfaces that is peculiarly SOA (and thus
> > would fit in the RM), or is a tightly coupled interface still
> > ok?  I tend to think that we need to capture something in the
> > RM that focuses on loose coupling - which is similar to the
> > OO concept of public vs. private (Frank's earlier assertions).
> >
> > -----Original Message-----
> > From: Michael Stiefel [mailto:development@reliablesoftware.com]
> > Sent: Wednesday, July 13, 2005 9:01 AM
> > To: Bashioum,Christopher D; soa-rm@lists.oasis-open.org
> > Subject: RE: [soa-rm] Opacity calumny
> >
> > I agree.
> >
> > Access through interface does not, however, automatically get
> > you loose coupling. Poorly designed interfaces can produce
> > tight coupling.
> >
> > Michael
> >
> > At 09:37 PM 7/12/2005, Bashioum,Christopher D wrote:
> > >  Ken, et. Al.,
> > >
> > >I was reading your email thread and started thinking about opacity as
> > it
> > >relates to the concept of loose coupling.  It seems to me
> > that the real
> > >issue is loose coupling as opposed to opacity per se.  One could
> > publish
> > >all the specs related to a service, including the actual
> > code, as part
> > >of the service description.  As long as access to the
> > internals of the
> > >service is strictly via the interface, then you still have loose
> > >coupling (and, a service).  If, on the other hand, you don't tell
> > anyone
> > >about the internals of a service, but you still allow access to the
> > >internals via globals or back-door methods, you will not have loose
> > >coupling.
> > >
> > >I think opacity is really a surrogate for loose coupling.  In other
> > >words, its not about what you know of the service via its
> > metadata, its
> > >what you can access of the internals of the service (thus the
> > >private/public that Frank mentions).  Ken - I think this is
> > also what
> > >you were trying to say also (thus, the ever more violent agreements
> > >below).  So, that being said, we should probably address this more
> > >succinctly in the document.
> > >
> > >-----Original Message-----
> > >From: Ken Laskey [mailto:klaskey@mitre.org]
> > >Sent: Monday, July 11, 2005 5:24 PM
> > >To: Michael Stiefel; Frank McCabe
> > >Cc: soa-rm@lists.oasis-open.org
> > >Subject: Re: [soa-rm] Opacity calumny
> > >
> > >Agree, agree, agree.  This list is getting much too tame.
> > >
> > >I would suggest that the concept of opacity is relevant to
> > the RM, and
> > >the fact that there are tradeoffs and examples of tradeoffs
> > is relevant
> > >to the RM.  I also think relating this to a/c/p is relevant
> > to the RM.
> > >Being an engineer, it is difficult to list all the problems and not
> > >propose solutions, but alas that is not part of the RM.  So what of
> > >this is appropriate for the RA?
> > >
> > >Ken
> > >
> > >At 05:09 PM 7/11/2005, Michael Stiefel wrote:
> > > >I agree as well.
> > > >
> > > >Opacity is a design tradeoff and hence a concrete, not abstract
> > issue.
> > >All
> > > >other things being equal more opacity is better than less, but in
> > >reality
> > > >you are trading off opacity for other things such as how much
> > metadata
> > >you
> > > >publish and how much dependency you generate as a result.
> > > >
> > > >Michael
> > > >
> > > >At 04:31 PM 7/11/2005, Ken Laskey wrote:
> > > >>Frank,
> > > >>
> > > >>To agree even more violently, this raises (and I allude
> > to a little
> > in
> > >
> > > >>the draft) the question of how to provide a means to publish
> > metadata
> > >as
> > > >>it is found to be needed but in a way that supports a
> > consistent use
> > >of
> > > >>the metadata in evaluating an entity against unambiguously stated
> > >a/c/p,
> > > >>which themselves can be augmented and will evolve to meet business
> > >needs
> > > >>of the users (where if I am a design engineer, my business need is
> > to
> > > >>find the technically correct solution engine).
> > > >>
> > > >>This represents a much ignored need as well as a terrible run-on
> > > >>sentence. :-)
> > > >>
> > > >>Ken
> > > >>
> > > >>At 04:10 PM 7/11/2005, Frank McCabe wrote:
> > > >>>Ken:
> > > >>>
> > > >>>   I think we are in violent agreement. The essence of the Java
> > > >>>execution engine example is that it is precisely that the
> > > >>>implementation is important -- not whether or not its
> > good style!!
> > > >>>
> > > >>>   Incidentally, if it is important to know who wrote the
> > > >>>implementation, then that too should be part of the public
> > >description.
> > > >>>
> > > >>>   Perhaps another aspect concerns the on-the-wire vs. resource
> > model
> > > >>>of service semantics. In the resource pov, issues of
> > implementation
> > > >>>(transparent or otherwise) figure prominently. In the
> > on-the-wire
> > > >>>pov, you only look at the message traffic; and do not
> > even consider
> > > >>>the implementation.
> > > >>>
> > > >>>  They are related of course: a message is valid if it is well
> > formed
> > > >>>(in some communication language) and if the implied predicate is
> > > >>>satisfied (there really is money in your bank account).
> > > >>>
> > > >>>  But, a Service Oriented Semantics (SOS) would focus on the
> > on-the-
> > > >>> wire interpretation and require that the service participants
> > > >>>faithfully reflect the messages in their systems. I.e., it is
> > similar
> > > >>>to the model/proof theory distinction: provided that the service
> > > >>>implementation is a correct Interpretation of the communication,
> > the
> > > >>>participants can focus on the Formulae being communicated.
> > > >>>
> > > >>>That all being said, there are definite limits to descriptions.
> > I.e.,
> > > >>>there will always be unstated (unstateable?) assumptions
> > that are
> > > >>>required to be shared for successful interactions.
> > > >>>
> > > >>>Frank
> > > >>>
> > > >>>On Jul 11, 2005, at 12:49 PM, Ken Laskey wrote:
> > > >>>
> > > >>>>Frank,
> > > >>>>
> > > >>>>Opacity/transparency is not a dimension on which to distinguish
> > > >>>>services;  it is more of a fallacy that we may need to
> > explain our
> > > >>>>way around.  This ties in very much with what I've tried to say
> > > >>>>about metadata and how metadata characterizing an instance is
> > often
> > > >>>>the basis upon which the instance is evaluated in the
> > context of
> > > >>>>assumptions, constraints, and policies (a/c/p) of providers and
> > > >>>>consumers.  In some circumstances, the amount of
> > information that
> > > >>>>needs to be published about an entity may maintain
> > little in the
> > > >>>>way of its opacity, but that is more likely related to
> > a/c/p than
> > > >>>>it is to WSDL.
> > > >>>>
> > > >>>>See more inline.
> > > >>>>
> > > >>>>At 03:23 PM 7/11/2005, Frank McCabe wrote:
> > > >>>>
> > > >>>>>I read the revised section on services. And an issue
> > that made me
> > > >>>>>uneasy before has resurfaced -- about opacity.
> > > >>>>>
> > > >>>>>I think that the opacity/transparency dimension is not a good
> > basis
> > > >>>>>for distinguishing services. I am aware of the intuition: that
> > > >>>>>somehow when you use a service you should not have to
> > worry about
> > >the
> > > >>>>>implementation. But what does it mean to say: "the
> > implementation
> > >is
> > > >>>>>hidden from the service consumer"? If the service is
> > to add lists
> > >of
> > > >>>>>numbers then its implementation is hidden provided numbers are
> > >added
> > > >>>>>up correctly. (I.e., we should not care about whether
> > its in C++
> > or
> > > >>>>>C#; multi-threaded or federated).
> > > >>>>
> > > >>>>So here the service adds numbers and while we can
> > imagine what is
> > > >>>>happening, we care no more of the specific than we do when we
> > punch
> > > >>>>numbers into a calculator.
> > > >>>>
> > > >>>>
> > > >>>>>But, some services are explicitly about implementation issues:
> > > >>>>>security services, workload distribution services, java remote
> > > >>>>>execution engine services etc. etc. I.e., it is of the essence
> > that
> > > >>>>>to use a Java remote execution service, you have to send it a
> > java
> > > >>>>>class to execute. In that sense, the implementation is
> > critical.
> > > >>>>
> > > >>>>But you call a java remote execution engine when you have an
> > > >>>>appropriate java class to execute.  If it is a general service
> > that
> > > >>>>is implemented as a java remote execution then the WS interface
> > > >>>>should more likely be a collector of information that
> > (inside the
> > > >>>>service) is rewritten as the necessary java class.  You could
> > > >>>>require a java class as input but I'm not sure that would be
> > > >>>>considered "good style".
> > > >>>>
> > > >>>>
> > > >>>>>A clearer distinction is public/private. A service is
> > characterized
> > > >>>>>by a public description of its functionality. The public
> > >description
> > > >>>>>should be sufficient to be able to successfully
> > interact with the
> > > >>>>>service; and no additional information should be required.
> > > >>>>
> > > >>>>Not really because what you consider part of the private
> > > >>>>information I might consider very pertinent to deciding whether
> > > >>>>your service is suitable for my purposes, i.e. I need it to be
> > > >>>>public.  For an extreme example, I used to work for
> > your company
> > > >>>>and I know one of your developers is clearly
> > incompetent and I'd
> > > >>>>never use anything that idiot touched.
> > > >>>>
> > > >>>>The challenge is in defining "should be sufficient to
> > be able to
> > > >>>>successfully interact with the service".  I think we need to
> > > >>>>discuss opacity in these terms because it is strongly connected
> > > >>>>with SOA and may be more useful as a vague concept than as an
> > > >>>>absolute measure.
> > > >>>>
> > > >>>>
> > > >>>>>Frank
> > > >>>>
> > > >>>>Ken
> > > >>>>
> > > >>>>
> > > >>>>
> > > >>>>
> > > >>>>
> > > >>>>
> > > >>>>--
> > > >>>>
> > >
> > >>>>----------------------------------------------------------
> > ----------
> > >--
> > > >>>>-----------
> > > >>>>   /   Ken
> > > >>>>Laskey
> > > >>>>\
> > > >>>>  |    MITRE Corporation, M/S H305    phone:  703-983-7934   |
> > > >>>>  |    7515 Colshire Drive                    fax:
> > > >>>>703-983-1379   |
> > > >>>>   \   McLean VA
> > > >>>>22102-7508                                              /
> > > >>>>
> > >
> > >>>>----------------------------------------------------------
> > ----------
> > >--
> > > >>>>------------
> > > >>
> > > >>--
> > >
> > >>------------------------------------------------------------
> > ----------
> > >-----------
> > > >>   /   Ken
> > > >> Laskey
> > >\
> > > >>  |    MITRE Corporation, M/S H305    phone:  703-983-7934   |
> > > >>  |    7515 Colshire Drive                    fax:
> > 703-983-1379
> > >|
> > > >>   \   McLean VA 22102-7508
> > >/
> > >
> > >>------------------------------------------------------------
> > ----------
> > >------------
> > > >>
> > > >>
> > > >
> > > >
> > >
> > >--
> > >
> > >-------------------------------------------------------------
> > ----------
> > -
> > >---------
> > >    /   Ken
> > >Laskey
> >          \
> > >   |    MITRE Corporation, M/S H305    phone:  703-983-7934   |
> > >   |    7515 Colshire Drive                    fax:      703-983-1379
> > |
> > >    \   McLean VA 22102-7508
> > >/
> > >
> > >-------------------------------------------------------------
> > ----------
> > -
> > >----------
> >
> >
> >




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]