[Uml-devel] Association Patch (fwd)
Jonathan Riddell
jr at jriddell.org
Sat Jan 25 14:11:04 UTC 2003
Patch is at
http://www.cs.stir.ac.uk/~jri/umbrello/umbrello_1.1.1_association.patch
---------- Forwarded message ----------
Date: Fri, 24 Jan 2003 22:28:09 -0500
From: Brian Thomas <thomas at mail630.gsfc.nasa.gov>
To: umbrello-devel at kde.org
Subject: Association Patch
Resent-Date: Sat, 25 Jan 2003 14:02:07 -0800
Resent-From: <umbrello-devel-admin at kde.org>
Resent-To: jr at jriddell.org
Hi all,
Here is (finally) my association patch. It adds the following things
to umbrello UML associations:
- 2 role name attributes (instead of one, which was inappropriately used BTW)
- an association name attribute
- 2 role changeability attributes
- 2 role visibility attributes
Its taken me awhile because of a couple of things, namely:
1) I kept trying to add in more attributes to the associations (originally I was
only going to expand rolenames to 2 attributes). Other things started creeping
in, such as changing the editing popup dialog for associations (its more sophisticated
now) and spending nearly a day to get a reasonable (but not terrific) algorithm for
laying out the association attributes on the display screen.
and
2) The association code is badly abstracted and done IMO. Many attributes are repeated
throughout aggregated objects under the association. For example, RoleNameA may be
found in the association, associationwidgetdata and assocpage classes instead of pointing
to a single UMLAssociation object. A "synchronizeData" method in the associationwidget
class is used to keep the associationwidget and associationwidgetdata objs in order,
but this is suboptimal. At any rate, having dual (or triple) instances of the same
information sure does make code which is quite hard to read and even harder to hack on
(many bugs for each attribute I inserted. Not a simple process). I hope that the 2.0
rethink will completely redo this class (and associated child classes).
Well after a rest, I will now pull my javacodegenerator patch together. I now have all
the association attributes that I desire. Hopefully I can get something to the list for
that by end of next week.
The patch which follows was made against umbrello-1.1.1. You will need to rebuild the
configure/Makefiles before building (I use kdevelop) or it will (may?) fail to link
properly for new dialog/assocrolepage and dialog/assocgenpage classes I added.
Regards
=b.t.
More information about the umbrello-devel
mailing list