Slightly updated executable uml metamodels & new discussion

6 views
Skip to first unread message

Leon Starr

unread,
Oct 12, 2009, 5:28:19 PM10/12/09
to miUML
Hi Everyone!

As you may or may not know (or care!) I contributed my attempt at an
Executable UML metamodel back in 2002. In fact, I had been toying
around with the modeling problem as early as 1986, but started getting
serious about it in 2002 to help make sense of the migration from
Shlaer-Mellor to UML. It gathered dust for a bit until 2006 when I
decided it would be fun to learn Python and build a command line
editor to populate the metamodel. In the process I made a few
changes, but never got around to posting these updated models to the
Model Integration website. Notably, I had to add a polymorphism
subsystem to complete my editor. Sadly, I did not write up the
descriptions, so this is on my todo list.

During the Python project (the code is up on sourceforge, by the way)
I wanted to name my particular branch of UML to distinguish it from
various other, better known xUML's out there. It seemed easiest to
call it *UML (pronounced "starr uml"). It made for a neat logo and
coffee mug design, so I went with it. Unfortunately, it seems someone
has built a draw tool called star uml, and I've decided to take
another stab at the name. So, I am rolling with miUML (model
integration's UML) as the new, and permanent title, pronounced "my
uml". It is open source under the GPL3 license. So I have no problem
if anyone wants to branch it in their own weird way and make it theirs
as long as the original copyright stays in place as the license
describes. So miUML can, in fact, be yourUML too.

The 2006 updated diagrams and 2002 descriptions (somewhat out of sync,
but not too terribly, I hope) are in this group's file section. Let
me know if you have any trouble finding/downloading them.

I would also like to entertain any comments, issues, discussions with
regard to these models in this group. The models are not perfect and
changes will be made in the coming weeks and months. I am embarking
on a new project, to updated my Python code and combine it with an
Objective-C/Cocoa interface on top of apples Core Data framework. (I
recently learned from my old college roomate, longtime friend, and
past VP of Dev Tools at Apple - Ted Goldstein - that all those Shlaer-
Mellor models I kept showing him back in late 80's and early 90's
inspired him to add object modeling into the tool kit which is why
they are using Shlaer-Mellor relationship notation!) This is a fact
that I, only recently, discovered. I've got to do a better job of
staying in touch with people!

The guiding principles of miUML are rooted in Shlaer-Mellor's OOA96
report. I've been a bit concerned, in particular, about the abuse of
static statecharts/attributes. miUML currently supports class based
statecharts, but I am seriously considering going back to the original
idea of assigners on relationships, as an example. In particular,
miUML is NOT intended to embrace all that is UML. The goal is to get
back to the roots of the relational model of data and supporting
efficient translation, platform independent execution applications
and, most importantly, supporting analysis and modeling instead of
java/c++ code browsing.

Lastly, this latest burst of activity on my part was triggered by an e-
mail from Lee Riemenscheider with several comments about the
metamodel. I will post those comments and my responses separately in
this forum. I encourage similar comments and discussion. Also,
Andrew Mangogna had some interesting ideas about how to handle
association perspectives that I am pondering. More about that later.

Thanks for the support!

- Leon


Reply all
Reply to author
Forward
0 new messages