Author Topic: Interaction State  (Read 3844 times)

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Interaction State
« on: February 23, 2012, 12:47:34 am »
When showing states in a sequence diagram you have the choice to either drag a state onto the diagram or to create InteractionStates elements. It seems obvious that there's a relation between both. You could say that InteractionState cite States verbally. You can only drag one single occurrence of a State onto a diagram. The "instance of an element" does not work. It's always copied as a link.

So my suggestion: an InteractionState is an instance of a state. When you ctrl-drag a state the "instance of an element" will create an InteractionState. For a start it would be sufficient if that element just receives the name of the state. However, it would be more logical if there's also a relation between both (a classifier) so you can trace back from the InteractionState to the State.

q.
« Last Edit: February 23, 2012, 12:49:17 am by qwerty »

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8607
  • Karma: +257/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Interaction State
« Reply #1 on: February 23, 2012, 02:18:22 pm »
Quote
[size=18]...[/size]
So my suggestion: an InteractionState is an instance of a state. When you ctrl-drag a state the "instance of an element" will create an InteractionState. For a start it would be sufficient if that element just receives the name of the state. However, it would be more logical if there's also a relation between both (a classifier) so you can trace back from the InteractionState to the State.

q.
Hi q,

Do I understand you correctly to suggest that when you make something an instance of something else, then EA should create a relationship (in t-connector) to also represent the relationship implied by the "InteractionState is an instance of State"?

If so, then that's an example of what I call an "expositional" arc.  That is the visible arc "exposes" the (internal) relationship such as:
  • The nesting between items and packages on the browser
  • The realization between the instance and its classifier
  • The relationship between a BPMN Data Object or Data Store and its reference
  • etc
Many other modelling products draw (some) of these automatically for you (but may not actually instantiate them as arcs).

So I would strongly agree with your suggestion (if I've understood it correctly)!

In my models, I create these relationships using automata and tag them "isExpositional" which causes the ShapeScript indicate their special nature.

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

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: Interaction State
« Reply #2 on: February 23, 2012, 07:31:37 pm »
Hi Paolo,
intentionally I meant a classifier which is not represented as relation but as a property of the element (i.e. t_object.classifierid). In this case it's more similar to the classifier/type of an operation than that of an element.

You are talking about creation of relations as a result of certain operations. I agree with your position but a) it's a different story and b) it would change the behaviour of EA quite much and thus I don't see much chances for an implementation.

q.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8607
  • Karma: +257/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Interaction State
« Reply #3 on: February 23, 2012, 11:08:29 pm »
Quote
Hi Paolo,
intentionally I meant a classifier which is not represented as relation but as a property of the element (i.e. t_object.classifierid). In this case it's more similar to the classifier/type of an operation than that of an element.
[size=18]...[/size]
That IS exactly my point.  The "relationship" between the instance element and the classifier element (embodied in the property of the element) can also be represented as an arc.  In effect the arc is a doppelganger for the property - in the same way as a class attribute is a doppelganger for the named association(end).

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

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: Interaction State
« Reply #4 on: February 24, 2012, 03:44:13 am »
Hi Paolo,
funny to see German words being used in English :-)

You're right with what you say. I guess it's the same thing with association (role) and property. IIRC the OMGuys are also not very clear about the semantic of both. You once had a nice word for it: meronym. Where association/role/property all are different (partial) views of the same thing.

However, again, in this case we have nothing at all. No relation where there should be one. I discusses this with a colleague and we came to the conclusion that InteractionState elements are (in EA: must be) instances of States from a state machine. Currently they are just "free text". When you change the State the InteractionState is not changed.

q.