Sparx Systems Forum

Enterprise Architect => Suggestions and Requests => Topic started by: Geert Bellekens on October 08, 2009, 06:17:30 pm

Title: More UML items in treeview + filtering
Post by: Geert Bellekens on October 08, 2009, 06:17:30 pm
As a result about a bug regarding Constraints getting http://www.sparxsystems.com/cgi-bin/yabb/YaBB.cgi?num=1248948104 deleted we came to the conclusion that we needed a real solution for this.

This is a request with three related parts, which have to be developed together to ensure a consistent, workable solution.

1. UML items should never be owned by Diagrams
Currently some UML defined items such as notes and constraints are considered to be owned by the diagram they are displayed on. If you delete the diagram then the note or constraint gets deleted as well.
This is a BUG. In UML diagrams cannot own anything. A diagram is a VIEW on the model (much like a window, see Roy for more (surrealistic) thoughts about this). Deleting a view should never change anything the model behind it. The only things that a diagram should own are purely graphical things like free textboxes, rectangles etc..

2. All UML items should be shown int he model tree view
Everything that is defined by UML should is part of the model and should be shown in the model tree view. This includes relation, notes, constraints etc... This becomes especially important when part 1 is implemented since otherwise things like notes and constraint can not be deleted anymore.
Showing these items in the model tree view also allows us to re-use notes and constraints on other diagrams reducing the need for redundant information.

3. Add a filter to the project tree view
In a large model the tree view can now already become difficult to work with because of the sheer volume of items displayed.
If we are going to add even more items to the treeview then a filter will be needed in order to keep the treeview usable.
I suggest an option to be able to filter on type of element (class, note, relation, ...)
The suggestion from Paolo to be able to save filters would be a nice addition.

I've sent this as a Feature Request to Sparx.

Geert
Title: Re: More UML items in treeview + filtering
Post by: Paolo F Cantoni on October 08, 2009, 06:37:14 pm
Quote
[size=18]...[/size]
This is a request with three related parts, which have to be developed together to ensure a consistent, workable solution.
In principle, I agree with what Geert, has said, but there are some observations I want to make:
Quote
1. UML items should never be owned by Diagrams
[size=18]...[/size]
The only things that a diagram should own are purely graphical things like free text boxes, rectangles etc..
Even these can often be re-used on multiple diagrams!  The ONLY thing that a diagram should own is the Title Block (aka Diagram Note Element).  If the text, boundary etc element is anonymous, it should be filtered out (see below) since, by default, anonymous elements shouldn't be displayed.  However, Geert implies (I think) that if you purge a diagram and an anonymous element is solely present in that one diagram , it should automatically be purged.  I think that's a good idea.  That would be a default option on the rather anaemic [Ctrl+Del] dialog at present.
Quote
2. All UML items should be shown in the model tree view
[size=18]...[/size]
Showing these items in the model tree view also allows us to re-use notes and constraints on other diagrams reducing the need for redundant information.
Its actually notionally duplicate - not just redundant.  Thus you have the possibility inconsistencies (between the so-called duplicates)...
Quote
3. Add a filter to the project tree view
[size=18]...[/size]
I think it would be productive to discuss the nature and form of such a filtering mechanism.

Paolo