- From: Cutler, Roger (RogerCutler) <RogerCutler@chevrontexaco.com>
- Date: Mon, 2 Jun 2003 13:12:23 -0500
- To: "Francis McCabe" <fgm@fla.fujitsu.com>
- cc: www-ws-arch@w3.org
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 14:12:53 UTC