[Top] [All Lists]

Re: [ontolog-forum] UML Meta-Model and Notation

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: Ed Barkmeyer <edbark@xxxxxxxx>
Date: Fri, 26 Feb 2010 12:50:36 -0500
Message-id: <4B8809EC.6000302@xxxxxxxx>

Randall wrote:
>  > UML is a language for modeling systems. The diagrammatic portion,
>  > as popular as it is, is really not the essence of UML.
>       (01)

Ian wrote:
>  > I'm afraid I've got to disagree with you. When you look at how
>  > UML is actually *used* all you can really say about it is that
>  > it's a notation. The diagrams *are* the essence of UML because UML
>  > is used for so many different purposes (e.g. data modelling,
>  > software modelling, system modelling, military architecture,
>  > services, ontologies, etc.) there is little in the way of common
>  > semantic across the various uses of the language. For particular
>  > uses of it (e.g. UPMS, MODAF M3, SysML, etc.), there may be
>  > formal semantics, and even some ontological commitments (e.g.
>  > SysML and MODAF M3 commit to physical entities in the real world),
>  > but for UML in general, you'd be struggling to find a common thread.
>       (02)

John wrote:
> I agree with Ian on this point.  Any notation can be used in an open-
> ended number of ways, and it's essential to distinguish the notation
> from the way it is being used.  That is one of the main themes of the
> note below.
>       (03)

This is true, but it misses Randall's point.  It more important to 
distinguish the specified semantics of the notation from the way it is 
being used.    (04)

The UML standard defines a "metamodel" of all the modeling concepts in 
the language, and a UML "model" is a collection of those concepts -- a 
population of the metamodel.  A UML "model" is _not_ a collection of 
diagrams.  UML also defines a graphical representation for some of the 
modeling concepts.  (Most of the others may be represented by additional 
text juxtposed to the labels on the graphical elements.)  A UML tool 
maintains a UML model, and it supports diagrams that are graphical 
_views_ of the model.  A UML tool exports and imports UML models via a 
standard XML exchange form; there is as yet no standard exchange form 
for the graphical views.  If you move models between tools, as I often 
do, you are keenly aware of the difference between the model and the 
diagrams.  The essence of UML is the model.    (05)

As Ian says, UML is _used_ both as defined and with implicit mappings to 
implementation concepts that are only vaguely related to the model 
elements that are the UML meaning of the symbols.  For example, a 
diagram that intends a UML class box to be interpreted as an XML element 
definition, without actually placing any "stereotype" markup on the 
class, is a specialized (and marginally valid) interpretation of the 
notational element that cannot be gleaned from the UML standard.  That 
people routinely do this has nothing to do with UML-the-standard.  Many 
people make bad UML diagrams and give them interpretations that are not 
supported by the standard.  Such folk represent different speech 
communities that use the same set of signs with different meanings.  If 
you use UML as Visio, it is not UML and it is not the fault of the 
specification.  As Doug Schenck (one of the authors of EXPRESS) once 
said, "a Pepsi bottle can be used as a hammer, but that isn't the intent 
of its specification."    (06)

That said, OMG has canonized the idea of "UML Profiles", which are 
essentially alternative uses of UML diagram elements to represent marked 
up model elements with interpretations specified outside of UML itself.  
This is an "extension" capability defined in the UML specification and 
supported by UML tools.  It gives rise to instantly supported languages 
with a standard export form (XMI), allowing for the creation of 
standards whose specification contains the implementation (much like XML 
schemas).  As Ian points out, there is a SOA profile, a DODAF/MODAF 
profile, an OWL profile, and several others.  It is to everyone's 
advantage to associate these things with UML and with UML tools, but 
they are _different_ languages; they are not UML.  In the same way, ORM 
is not Visio, even though one of the most common supporting 
implementations is the Visio profile.    (07)

If we are going to talk about what UML is, then you have to get past 
what your next door neighbor thinks it is, or what he uses it for, and 
look at the content of the standard itself, or at authoritative 
writeups.  OMG is very much in the business of capturing modeling 
concepts and representations of them.  UML is a specification of one set 
of each.  OMG has also standardized others, in some cases by extending 
the UML graphics using features of the UML standard.  Other communities 
have internally adopted their own, and in some cases confused them with UML.    (08)

UML tool vendors are in the business of making as many of those as 
possible easy to do with their tools, so as to expand their market.  
They don't care if you use UML class boxes to represent XML elements or 
hog pens, as long as you buy their tool to make the drawings.  But that 
is a different mindset.  They are selling a model management tool and a 
drawing tool in the same box.  The only interpretations they make of 
your model are the required consistencies with the rules of the 
metamodel (which is the conceptual schema for their internal database of 
model elements).  They are happy if you want to call it UML and even 
happier if you brand your drawing with their tool's name.    (09)

(I will leave to John and Randall the discussion of human-computer 
interface factors.  That is not my thing.)    (010)

-Ed    (011)

P.S.  Lest there be any doubt, I am the NIST voting representative to 
the OMG, and model specification is why we are members.  UML is a 
critical part of our knowledge engineering programs, and part of the 
text of the standard was written by our experts.  It ain't perfect by 
any means, but it has become an important tool.     (012)

P.P.S.  On the other side of the "use of a notation" coin, at one of the 
Ontolog Summits Natasha Noy commented that many published OWL models are 
just UML models written in OWL -- all the classes and properties are 
primitive.     (013)

Edward J. Barkmeyer                        Email: edbark@xxxxxxxx
National Institute of Standards & Technology
Manufacturing Systems Integration Division
100 Bureau Drive, Stop 8263                Tel: +1 301-975-3528
Gaithersburg, MD 20899-8263                FAX: +1 301-975-4694    (014)

"The opinions expressed above do not reflect consensus of NIST, 
 and have not been reviewed by any Government authority."    (015)

Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (016)

<Prev in Thread] Current Thread [Next in Thread>