Author Topic: zxgypknly Association Ends (again)  (Read 1131 times)

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
zxgypknly Association Ends (again)
« on: March 06, 2007, 12:31:20 am »
Don't know if this rightly goes here or "General" or "UML" but...

Association Roles (Source|Target).Changeable atribute!
From the hemp help file ...
Quote
Changeable :  Specifies how this role is subject to change


So what do the three offered ^%$^%$ options mean 'zactly???

   "none"= is not now or ever changeable ??? (i.e. it can never even be set? ???
   "frozen"= ??? ??? ??? ??? ??? (is a fish finger? ???)
   "add only" = is only changeable by an accountant or actuary ???


What I want is to specify that the attribute is able to be set once and once only ...   at any time in the instances life cycle.  In fact,  :-/ :'( :'( :-X :-/ , what I am trying to do is specify that for this particular attribute, which is a collection, that you can only add thingo's to it.    You, she, he and not even the dog can't delete it once its added (and persisted).



perpetually confused & infuriated

bruce
"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.

thomaskilian

  • Guest
Re: zxgypknly Association Ends (again)
« Reply #1 on: March 06, 2007, 01:15:17 am »
Hi Bruce,
I found out several times that EA contains heritages far from being useful. I simply accepted that fact and do not use them. Nor do I ask questions. If I need something I try to model it with the "useful" EA tools (which are quite many).

mikewhit

  • EA User
  • **
  • Posts: 608
  • Karma: +0/-0
  • Accessing ....
    • View Profile
Re: zxgypknly Association Ends (again)
« Reply #2 on: March 06, 2007, 03:07:35 am »
"Once you have created a link between two elements, there may come a time when you want to change either the source or target. Instead of deleting and re-creating the link, EA lets you change either the source or target" - Quote from EA docs.

I guess this setting lets you set some policy on this ...?
« Last Edit: March 06, 2007, 06:54:59 am by mikewhit »

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 5905
  • Karma: +71/-80
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: zxgypknly Association Ends (again)
« Reply #3 on: March 06, 2007, 04:52:08 am »
The only way to read this, bruce, is:

Changeability actually should read:  
Changeability Restriction:
  none: there are no restrictions - you can change at will
  frozen:  once created, you can't change it - if initially null stays null
  add only: you can change (add) ONLY if the present is null

Just another part of EA's UI (Unique Interface)

It's an example of the violation of the Einsteinian dictum:  "Keep things as simple as possible - but NO simpler!"  - They went too far and removed the word Restriction to save space.

Paolo
Manage Complexity,
       Reduce Ambiguity,
               Eliminate Inconsistency!
TM
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: zxgypknly Association Ends (again)
« Reply #4 on: March 06, 2007, 05:12:58 am »
mikewhitney, after having been hit by a lightning bolt of reality said
Quote
"Once you have created a link between two elements, there may come a time when you want to change either the source or target. Instead of deleting and re-creating the link, EA lets you change either the source or target"
 
I guess this setting lets you set some policy on this ...?


AAAAAAAAAAAAAAAAAARRRRRRRRGGGHHHHHHHH   8) ??? ??? ??? 8)

So you are saying that these end attributes don't really have to do with the meaning of the end, they have to do with the the meta-"ness" of the end"ity" (to coin a phrase) element.

This is getting stupid.  No reflections on you, mike, or EA intended! An attribute of an endity MUST reflect the semantics of that endity, not the meta-semantics of the language or even the modelling tool.  

Maybe I'm old, maybe I'm stupid, maybe I'm naiave. (sp? ... IQ?)  But I'm looking at an association end's attributes and I am trying to express an (IMO) simple constraint,... [glb]Thou shall't create end instances on this relationship only.[/glb] ...Corollary: you can keep on creating such ends until the Dalmation's spots all  join up, but you're using a Texta(tm) - you can't erase 'em.

On my planet, which is mainly populated by auditors, marketting consultants and telephone sanitiser's left over from someone else's (MHRIP) brilliant imagination, these issues are germaine.  I mean IKEA can do it!! No one in their right mind expects to be able to "unscrew" an IKEA "nail". ( Then again, "breathes there a man with a soul so dead that he has never" tried ... ever so gently ...ever eeevvveeerrr so gently ...more gently than ....   (anything, anything at all) ... ever ever ever tried to UNSCREW (sorry) anything more difficult than a piece of IKEA assembled incorrectly, or IN HASTE (sorry sorry) or worst of all, when your mind wasn't really ON THE JOB (I'm going to burn in hell for this
:'(  )

... suffice to say, the user in question ;D , having made the mistake of putting his "mouse" where it shouldn't have been, shall not (L.A.W.) be able to rescind such putting ;D  

Howthence, Ga`wain, shuld I model thus?

ripb
bruce
« Last Edit: March 06, 2007, 05:22:05 am by sargasso »
"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.

thomaskilian

  • Guest
Re: zxgypknly Association Ends (again)
« Reply #5 on: March 07, 2007, 12:57:04 am »
Someone should suggest this board for the next Pulitzer Price.

mikewhit

  • EA User
  • **
  • Posts: 608
  • Karma: +0/-0
  • Accessing ....
    • View Profile
Re: zxgypknly Association Ends (again)
« Reply #6 on: March 07, 2007, 02:56:39 am »
didn't think there was a "rant" category ...



PS on the subject of "models" saw a recent archive piece on fashion from the 1920's - referred to what we call "catwalk models" as "professional mannequins" - what a wonderful term ! So the next time you see an item on the latest tantrum of a "supermodel" just mentally substitute the old-fashioned term. Think it would do them a power of good to be renamed back to the old usage. end of digression
« Last Edit: March 07, 2007, 03:00:55 am by mikewhit »

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
Re: zxgypknly Association Ends (again)
« Reply #7 on: March 08, 2007, 01:33:16 am »
36 hours later and I'm still struggling with this.

I searched, researched and even threw both d*mn UML specs down the stairwell to see if a random search would work.

FACT THE FIRST: There is NO attribute on an Association or a Property called "Changeable", nor anything like it.

FACT THE SECOND AND THIRD: The word "frozen" doesn't appear in either the specs or OMG's website.

FACT THE IV (IMO): This, i.e. what I'm trying to specify is:


"common" "well-understood" behaviour



:P :P :P  Sour grapes


I went back on both Paolo's UI thoughts and mikes its-an-endity attribute thoughts and tried to do something from 1st principles.  It got me exactly nowhere.  Well, in fact it did get me somewhere....



It appears to me (ahem) that this property of an end is a tad confused about its own personality.  If the end is owned by a classifier, its an attribute of the classifier, therefore all its properties are (possibly, perhaps, maybe) defined by the classifiers attributes.  If its not owned (!!! [Sic] EA has the Owned attribute values of an end reversed !!!) then its a property of the endity (*)

Forgetting the latter, if the end has a multiplicity of 1 then :

  "none" appears to conform to Paolo's "the attribute is really 'Changeabilty Restriction' and 'none' means 'there is no restriction, feel free .. change the values, change the type even ... stick a blob on here instead of an integer if you really feel like it, in fact stick ANYBLOODYTHING in this attribute."

  "frozen" IMO ... possibly, maybe, could sorta go with Paolo's "set initally and stuck" scenario.  b-b-b-b-but I cant really see a use for this?

  "add-only" is meaningless (I have spoke)

OTOH 8) (possibly)

if the mulitplicity of the end is "not :1" then
   "none" conforms to the above.
   "frozen" may indicate the the set is fixed, but an instance of the set is manipulatable.  IOW "for any widget in the bag I can change its nature, but not its existence"
   "add only" means "I can shove more stuff in the bag but I can't change their nature"

(Having done that I will now set out to prove that zebra'a dont exist. ::) )

dribble, gurgle, dribble

bruce


(*) I have now discovered what an endity is.  Call me on (0088 61 2 0400 987654321) with you credit card details for  info!    
"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.

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
Re: zxgypknly Association Ends (again)
« Reply #8 on: March 08, 2007, 01:41:08 am »
p.s.  Sparxians, get me the name of the fool who put this field on the form.

bruce  ;D

p.p.s. Paolo, Consistency ... Beef hooked, I just want a meaning.
« Last Edit: March 08, 2007, 02:17:55 am by sargasso »
"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.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 5905
  • Karma: +71/-80
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: zxgypknly Association Ends (again)
« Reply #9 on: March 08, 2007, 04:06:07 am »
Quote
p.s. Sparxians, get me the name of the fool who put this field on the form.

bruce ;D

p.p.s. Paolo, Consistency ... Beef hooked, I just want a meaning.
To paraphrase Jack Nicholson (in a Few Good Men - I think)...

Meaning? You can't handle the meaning...

I think this has it's roots in the (very) old Optional-tending-to-Mandatory crap of early ER modelling. Essentially, the instances of a relationship could be optional early on in a business process, but had to be mandatory by the end. Remember that?

Total piffle promulgated by some ER practitioners.

However, there was the issue of how do you handle partial knowledge? Enter the Extrinsic value (also described by Fowler as Exceptional Value - I'm pretty certain he pinched it from me about 10-12 years ago) Anyway, for some situations, it is a business rule than once you link one instance via a relation to an instance at the other end of the relation, that's it. There should be no normal business process to subvert that.

Even with Extrinsic value, this rule needs to be enforced. That's where this property comes in. It defines under what circumstances you may later change an established linkage... That is, what restrictions can be placed on changing the link:
None: - there are none... The linkage just represents the fact at that point in time. A different fact may be applicable at a different time. You may add and remove links to limits of the multiplicity maxima and minima.
Frozen: - Set it and forget it... The linkage just represents the fact at object creation time and is true for all time. If the multiplicity is more than one, then you'd better create all the ones you need at creation - because you can't add any more.
Add Only: - The optional-tending-mandatory... Until the limit of multiplicity - you may add links. But once created, the link is frozen.

Meaning enough for you? It's NOT a UML concept. But useful (in this form) nonetheless.

HTH,
Paolo
[size=0]2007 Paolo Cantoni, -Semantica-[/size]

« Last Edit: March 08, 2007, 04:07:47 am by PaoloFCantoni »
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!