Book a Demo

Author Topic: Handling of enumeration Tagged Vlaues  (Read 10682 times)

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Handling of enumeration Tagged Vlaues
« on: April 14, 2016, 05:36:56 pm »
We've started using Enum(erated) Tagged Values in a big way recently.  If the Tagged Value has already been applied, then it's a simple matter to select it in the list and use the drop-down.

However, if you're manually creating it using the Add Tagged Value, once selected,  the default value is provided but the value can't be changed.  You have to create the value then go back in and change it.

Is it just me, or does this suck conceptually?  The word default value means (in this domain): "in the absence of any other input".  If there's no provision for input, it can't be a default, it's a const.

Should I put in a bug report to get the Enum type entry fixed?  If we can change it on the dialog, we can make better use of the facility to add multiple Tagged Values but selecting a group of diagram objects and using the <Context Menu>.  If we're going to fix it, then in the latter case there should be a mechanism to set the same value to all the objects, or select the value on a per-object basis.

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

ChB

  • EA User
  • **
  • Posts: 40
  • Karma: +4/-0
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #1 on: April 14, 2016, 06:33:12 pm »
However, if you're manually creating it using the Add Tagged Value, once selected,  the default value is provided but the value can't be changed.  You have to create the value then go back in and change it.
Is it just me, or does this suck conceptually? 

+1
Me too: I've been irritated by this and feel it could be improved.

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #2 on: April 15, 2016, 08:26:36 am »
It's not just enumerations. None of the predefined tagged value types allow for entry on the create tagged value dialog.

The reasons are implementation related rather than user focused.

It's irritated me over the years, but I've learned to live with it. It's only an extra couple of clicks.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #3 on: April 15, 2016, 09:37:27 am »
It's not just enumerations. None of the predefined tagged value types allow for entry on the create tagged value dialog.

The reasons are implementation related rather than user focused.

It's irritated me over the years, but I've learned to live with it. It's only an extra couple of clicks.
So it's not just the fact that a default value has been defined?

If you're inputting only one value, then it's "ONLY" an extra few clicks (but a cognitive dissonance each time - because it doesn't work the way it should).
If you're trying to attach to multiple elements it's a PITA.

I think I'll report it as a a bug.

The frog  has decided that the water is too hot and complaining...  ;D

Paolo
[Edit: Bug report submitted.  Show support by posting here...]
« Last Edit: April 15, 2016, 09:58:54 am by Paolo F Cantoni »
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

Glassboy

  • EA Practitioner
  • ***
  • Posts: 1367
  • Karma: +112/-75
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #4 on: April 15, 2016, 01:24:53 pm »
Yes the behaviour here is irritating.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Handling of enumeration Tagged Vlaues
« Reply #5 on: April 15, 2016, 04:16:33 pm »
I was just thinking: "Yes, that must be irritating", but then "why has it never bothered me?".
The reason is that I'm only using tagged values in combination with UML Profiles (like they should be used in fact  ;D).
So I never need to add a tagged value myself, they are already there.

Geert

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #6 on: April 15, 2016, 05:43:39 pm »
Like Simon: got used to it. Feels the real EA way. Can't imagine what it would be once they change it.

q.

ChB

  • EA User
  • **
  • Posts: 40
  • Karma: +4/-0
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #7 on: April 15, 2016, 06:19:53 pm »
I was just thinking: "Yes, that must be irritating", but then "why has it never bothered me?".
The reason is that I'm only using tagged values in combination with UML Profiles (like they should be used in fact  ;D).
So I never need to add a tagged value myself, they are already there.
Geert

Insightful, thanks Geert.
But bother (lol), I wish I was confident about setting up profiles.  I'm working with SysML <<blocks>> at the moment and I want everyone of them to have an enumerated tag that I've created.  I can only imagine how Geert's suggestion would work ;-)

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #8 on: April 15, 2016, 07:17:18 pm »
I was just thinking: "Yes, that must be irritating", but then "why has it never bothered me?".
The reason is that I'm only using tagged values in combination with UML Profiles (like they should be used in fact  ;D).
So I never need to add a tagged value myself, they are already there.

Geert
Indeed, but increasingly, we're coming across use cases where we need to be able to add special values.

Also, in Enterprise wide models you come across a scaling issue.  For our Boolean Tagged Values (principally), we've adopted the convention that where a Tagged value is sparsely true, then the absence of the tagged value implies false.  Therefore we don't create one unless we need one (for the true case).  Obviously, setting it to false also implies false, but we scavenge those in our overnight processing.

Unfortunately, as far as I know EA doesn't support these optional types of tagged values in profiles.  We currently have over 300,000 (t_object) tagged values "in play" and we've only just started enhancing our MDG.

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

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #9 on: April 18, 2016, 06:12:40 am »
I support this fully. I've always wondered why I could not add the value at the same time as adding the tag, since the value field is clearly present on the dialogue.

For example when adding the predefined RTFTemplate tag to a package that I want to generate documentation for. 
« Last Edit: April 18, 2016, 07:38:37 am by skiwi »
Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.

ChB

  • EA User
  • **
  • Posts: 40
  • Karma: +4/-0
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #10 on: April 18, 2016, 11:13:01 pm »
Earlier in this thread Geert suggested:
Quote
... I'm only using tagged values in combination with UML Profiles (like they should be used in fact  ;D).
So I never need to add a tagged value myself, they are already there.

I though that was a useful hint and I such I've learned a bit more about creating and using profiles.... and specifically using tags in profiles to help-with (not actually solve) the problem described in the Original Post.

Posting here in case it helps others:
The following white paper explains how to add default tags to a profiled element: http://sparxsystems.com/downloads/whitepapers/Requirements_Management_in_Enterprise_Architect.pdf (see last section before the glossary).  It was not obvious to me that I'd need to  use Attributes to create Tags when creating the extended element in a profile.  The example given in the white paper uses enumerations and as such adds the enumerations to the Profile Diagram.  I just needed tags with text and number values so I created some attributes to my profiled elements using the normal built in types.

So much more to learn!
ChB

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #11 on: April 19, 2016, 08:29:05 am »
For our Boolean Tagged Values (principally), we've adopted the convention that where a Tagged value is sparsely true, then the absence of the tagged value implies false.  Therefore we don't create one unless we need one (for the true case).  Obviously, setting it to false also implies false, but we scavenge those in our overnight processing.
If that's what you are modelling, why not set the default to true? Or even better, use 'Type=Const;' to ensure it's only used in the way you intend.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Handling of enumeration Tagged Vlaues
« Reply #12 on: April 19, 2016, 09:36:48 am »
For our Boolean Tagged Values (principally), we've adopted the convention that where a Tagged value is sparsely true, then the absence of the tagged value implies false.  Therefore we don't create one unless we need one (for the true case).  Obviously, setting it to false also implies false, but we scavenge those in our overnight processing.
If that's what you are modelling, why not set the default to true? Or even better, use 'Type=Const;' to ensure it's only used in the way you intend.
Hi Simon,


yes, that IS what we do: Type=Boolean, Default=True.  We considered Type=Const and decided that, from a User understanding point of view, allowing them to change the value rather than forcing them to delete the Tagged Value was more intuitive.


Speaking of Type=Const...  What happens if you synchronize tagged values, does the new const value get inserted?


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