[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