RE: hasa in UML

I'm not sure whether I agree with all the details of Chris Ferris'
posting on this a while back, but I certainly agree with his central
point -- which seemed to me to be "GET A LIFE!"  [VERY rough translation
-- sorry, Chris].  Let's get this behind us.  It is just not worth the
time and energy we are putting into this.

Let me summarize, again, what I think happened at the Rennes meeting.
Frank previously put clear and rather formal definitions of "is-a" and
"has-a" into the document and proceeded to use the terms in that way.  I
and probably others also used the terms that way in the course of the
meeting.  Martin Chapman, and possibly others, objected that these
meanings were not the same as "standard UML meanings" and insisted that
we use the UML meanings because that was "standard" to a substantial
community.  The WG pretty much agreed to use the terms as in UML, but
with the proviso that a handy reference to the easily-found standard
definition from UML would be included.  It now seems clear that no
easily-found reference exists, at least as far as anyone in this WG can
determine.  Given that the predicate has not been satisfied, I
personally consider the agreement to use the UML definitions to be
nulled.  I have nothing against the UML definitions -- except their
non-existence in our WG.  That is, there are no such definitions on the
table.  There is no question of the use of those definitions having
"failed" -- nobody has explained what the words mean in UML.  It cannot
have failed -- it never started.  Nobody has defined the words
consistently with UML usage, nobody has created significant verbiage in
the document consistent with such an understanding, even an
understanding that is understood by only one person.

So can we PLEASE just use the words in SOME sense and GET ON WITH IT??
It seems to me that the most important thing is that we are all on the
same page as to how the terms are being used.

I personally find the way Frank used the words initially to be quite
acceptable.  I probably would find the way Chris suggests using them
quite acceptable -- I say "probably" subject to actually seeing somebody
DO IT in a reasonable and consistent way.  I'm sure there are other
senses that I would find perfectly acceptable.  But please, let's stop
implying that we are abandoning some valued child when, in fact, nothing
like that has actually been done in this WG.

-----Original Message-----
From: Walden Mathews [mailto:waldenm@optonline.net] 
Sent: Monday, June 02, 2003 4:54 PM
To: Francis McCabe; Cutler, Roger (RogerCutler)
Cc: www-ws-arch@w3.org
Subject: Re: hasa in UML


All,

I'm not sure if from Frank's description it's clear when you use those
"birds" in UML and when you don't.  It's my understanding that by using
them, you are extending the basic modeling capability of the language,
which means you've found the basics to be deficient for your special
purpose.

In my ever humble opinion, you'd want to actually see a standard
modeling effort *fail* (and have people agree on that failure) before
you go off and invent your own modeling semantics under the wide
umbrella of the UML.

I'm sure the UML amigos put those guillemots in there so as not to lose
market share in fringe cases. That doesn't mean every case that comes
down the highway is a fringe case, and jumping early to a higher level
of sophistication has the unfortunate side-effect of short-circuiting
critical review of the design being modeled.  It kills the delicate
question "Is this stuff already too complicated?" in the crib.

Good luck, amigos.

--Walden


----- Original Message ----- 
From: "Francis McCabe" <fgm@fla.fujitsu.com>
To: "Cutler, Roger (RogerCutler)" <RogerCutler@chevrontexaco.com>
Cc: <www-ws-arch@w3.org>
Sent: Monday, June 02, 2003 2:27 PM
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 19:57:24 UTC