Book a Demo

Author Topic: BUG: Changeability rendering failure  (Read 2628 times)

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
BUG: Changeability rendering failure
« on: March 27, 2007, 10:26:51 pm »
Elsewhere ([size=13]Re: zxgypknly Association Ends (again)[/size]), there is a discussion of what the Changeable: property of the AssociationEnd.

Notwithstanding any disagreement about the meaning, the value (at least for those values other than none) should be rendered.  And surprise surprise, if you create an association and set the value in the end to other than none AND you don't set rendering to one of the database notations - it will be displayed.

It's the bolded clause that gets you!  If you then set the notation to one of the database ones, the (end)Bottom Label (where the Changeable: value is stored) is hidden.  If you want to see it, you have to manually restore it.  

Because of EA's UI (Unique Interface) you have to do this on EACH edge individually!

NOW... Here's the clincher...  If you have defined a multiplicity for that end, you CANNOT reset the (end)Bottom Label.

Talk about violating the "Principle of Least Astonishment"!

This behaviour is defective.

Thoughts? Votes?
Paolo
« Last Edit: March 27, 2007, 10:36:11 pm by PaoloFCantoni »
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
Re: BUG: Changeability rendering failure
« Reply #1 on: March 28, 2007, 01:41:30 am »
Sheer panic on my behalf.
"It is not so expressed, but what of that?
'Twere good you do so much for charity."

Oh I forgot, we aren't doing him are we.

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: BUG: Changeability rendering failure
« Reply #2 on: March 28, 2007, 02:40:45 am »
This is not unique, it's bizarre.

IMHO it needs to be repaired.

Of course, having some way to control the default (at diagram level at least) display of connector labels is a biggie, oft mentioned and staunchly ignored.

David
No, you can't have it!

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: BUG: Changeability rendering failure
« Reply #3 on: March 28, 2007, 06:04:03 pm »
We've had feedback from Sparx (in black) and responsed...

It seems to me that there are two commands here that have been designed to work in isolation. Firstly, there's the command to set the diagram to IDEF1X notation: this command hides all labels that conflict with the IDEF1X notation, not unreasonable behaviour for a self-contained command. Secondly, there is the command to set the diagram to UML notation: this doesn't change the show/hide status of any labels, again not unreasonable behaviour for a self-contained command. The problem is that the two commands weren't designed to round-trip: executing one command doesn't undo the other.

I'm OK with that, per se... My problem is with the notion that the Changeable: item conflicts with IDEF1X...  I don't think it does.  It's orthogonal to it.  It isn't UML yet it is displayed in that notation regardless.  I want the same for IDEF1X and IE.  (This notion should be true for all such orthogonal properties that EA maintains)

I think the solution probably lies in the much requested feature to show or hide multiple connector labels (e.g. show all labels on a diagram/on multiply-selected connectors). I have no information on if or when that functionality might be added to EA.

That's part of it...  However, I don't actually think it's a labelling problem per se...

PS you wrote " NOW... Here's the clincher...  If you have defined a multiplicity for that end, you CANNOT reset the (end)Bottom Label."  I don't understand this statement. Multiplicity and changeability share the same label, which is an inconvenience for display purposes, but I don't see any defective behaviour associated with that fact.

From a (or at least, this) user perspective, the defect is the inability to restore the bottom label.  Conceding that (by default) the conversion from UML to IE (or IDEF1X) changes some things, the user should be warned that this will happen and should be allowed to customize the result.  It's not up to EA to force that on me.

Now to the fact that multiplicity and changeability share the same label - that is, frankly, Sparx's problem not the user's.  From a (or at least, this) user perspective, if we change notation (and by the way, the notation should be changeable on a per-edge basis), multiplicity should/should not be rendered into the label (depending on whether the multiplicity is rendered by glyph or not). Merely hiding the label is a hack (or even cruft)...

Paolo (and Darren)

Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!