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

Re: hasa in UML

From: Francis McCabe <fgm@fla.fujitsu.com>
Date: Mon, 2 Jun 2003 12:53:52 -0700
Cc: www-ws-arch@w3.org
To: Dave Hollander <dmh@contivo.com>
Message-Id: <EF993C13-9533-11D7-BBC0-000393A3327C@fla.fujitsu.com>

More-or-less, except that <<resource>> etc. may well be defined within 
our system.

Frank

On Monday, June 2, 2003, at 12:03  PM, Dave Hollander wrote:

>
> If I understand, it would look something like:
>
> A << resource >> << is-a >> network << thingy >> that
> can have an << identifier >>
>
> implying that resource, is-a, thingy, and identifier are defined
> outside of our project.
>
> Yes?
>
> dave
>
>
> -----Original Message-----
> From: Francis McCabe [mailto:fgm@fla.fujitsu.com]
> Sent: Monday, June 02, 2003 12:28 PM
> To: Cutler, Roger (RogerCutler)
> Cc: www-ws-arch@w3.org
> Subject: Re: hasa in UML
>
>
>
> Roger:
>    Thanks for the vote of confidence!
>
>    I apologize abut the guillemots.
>
>    It is a standard UML way of naming things. Its official name is
> stereotype. Essentially, if you want to have a standard relationship,
> or a standard class etc. (but its less common there), you can give an
> independent definition of it and then use it. Where you do use it, you
> enclose the name in guillemots (a kind of double chevron character) to
> signify that the name has an independent definition.
>
> Frank
>
> On Monday, June 2, 2003, at 11:12  AM, Cutler, Roger (RogerCutler)
> wrote:
>
>> Frank:
>>
>> Once again you have gone over my head -- what the heck is meant by
>> "guillemots" in this context?  It's come up previously in this thread,
>> but now it seems to be a serious suggestion. The only meaning for this
>> word that I can find is a bird -- a narrow billed auk, to be exact,
>> which is an arctic bird that looks pretty penguin-like to me but
>> apparently it flies.
>>
>> Although you have never in any way implied such, I am personally quite
>> willing to recognize you as an expert with core compentency somewhere
>> in
>> the area of these formal descriptions and let you get on with it.
>> Particularly since you seem to be willing not only to state opinions
>> but
>> also to spend a lot of time and effort actually DOING things that way.
>> That counts for a lot in my book.
>>
>> -----Original Message-----
>> From: Francis McCabe [mailto:fgm@fla.fujitsu.com]
>> Sent: Monday, June 02, 2003 12:44 PM
>> To: Cutler, Roger (RogerCutler)
>> Cc: www-ws-arch@w3.org
>> Subject: Re: hasa in UML
>>
>>
>> Roger:
>>
>> Just to answer the question about the origin of is-a and has-a...
>>
>> It turns out that properly defining these is pretty tricky. Chris's
>> defn found 14+ definitions of have, and even the first definition
>>
>>   To be in possession of: already had a car.
>>
>> is the subject of many PhD theses!
>>
>> I would say that 90+% of people would start with the taxonomic POV of
>> is-a; where the fundamental starting point is that there are a bunch 
>> of
>> `things' out there that need to be classified. However, the logic POV
>> also has a long history.
>>
>> A really good book on this is "knowledge representation" by John Sowa.
>> He is something of a maverick due to his passionate defense of a
>> British philosopher/logician John Pierce.
>>
>> My definitions were colored by my preferences, but my definition of
>> has-a was an attempt to rationally reconstruct the UML modeler's
>> concept of aggregation. As it happens, my PhD was in this area. It was
>> published by Prentice-Hall as "Logic and Objects".
>>
>> I have had a number of conversations about UML with Jim Odell, one of
>> the founders of the OO modeling movement. He was also a co-chair of 
>> the
>> OMG TC that steered the original UML through (I can't recall its 
>> name).
>> He recommends using guillemots for our purposes.
>>
>> My brief was to look at UML, and to see if we can use it straight. I
>> think the answer is that we can use it; but not 'straight'.
>>
>> Frank
>>
>>
>>
>>
>> On Friday, May 30, 2003, at 07:54  PM, Cutler, Roger (RogerCutler)
>> wrote:
>>
>>> Good grief.
>>>
>>> I had assumed from Martin's posting that aggregation is a well-known,
>>> standard term in UML.  If it is, and you have just missed it, perhaps
>>> he should chime in.  If not ...
>>>
>>> If not, perhaps somebody -- anybody -- could give us some rough idea
>>> what "has a" means to UML people?  I recall that the UML folk seemed
>>> to be real clear (well, at least Martin seemed to be real clear) that
>>> usages of "has a" consistent with your definition were inconsistent
>>> with UML usage -- so surely SOMEBODY must have some idea why or
>>> how????  If it is clearly different, could somebody give a hint in
>>> what way it is different?
>>>
>>> If not -- could we please just forget about it?
>>>
>>> On another tack -- did your definitions of "is-a" and "has-a" just
>>> come out of your imagination, or are they consistent with some
>>> standard usage in a discipline other than UML?  If the latter, would
>>> it be possible to provide citations?
>>>
>>> -----Original Message-----
>>> From: Francis McCabe [mailto:fgm@fla.fujitsu.com]
>>> Sent: Friday, May 30, 2003 4:42 PM
>>> To: www-ws-arch@w3.org
>>> Subject: hasa in UML
>>>
>>>
>>>
>>> UML does not, in fact, has a direct notion of aggregation.
>>>
>>> There are three concepts that might be pressed into the service of
>>> aggregation:
>>>
>>> Association (3.41 and following)
>>> Composite Object (3.40)
>>> Collaboration diagrams (3.65 and following)
>>>
>>> Association is simply a relationship. There is no additional 
>>> semantics
>>
>>> built-in. We can define our own form of association called has-a (but
>>> we are trying to avoid that right?)
>>>
>>> "A composite object represents a high-level object made of tightly
>>> bound parts. This is an instance of a composite class, which implies
>>> the composition aggregation between the class and its parts. A
>>> composite object is similar to (but simpler and more restricted than)
>>> a collaboration; ..."
>>>
>>> I do not think that this meets our needs. It is not accurate to say
>>> that a service is composed of X + an identifier.
>>>
>>> Collaborations on the other hand are not what is going on either:
>>>
>>> "A collaboration is used for describing the realization of an
>>> Operation or Classifier."
>>>
>>> Frank
>>>
>>> On Friday, May 30, 2003, at 02:10  PM, Cutler, Roger (RogerCutler)
>>> wrote:
>>>
>>>>
>>>> Well, that's progress of a sort.  Now what do "generalization" and
>>>> "aggregation" mean, and how does this differ from the current
>>>> definition?
>>>>
>>>
>>>
>>>
>>
>>
>>
>
Received on Monday, 2 June 2003 15:55:01 GMT

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