PSSM 1.0 FTF Avatar
  1. OMG Issue

PSSM_ — "Join 003" test case state machine diagram appears to be invalid

  • Key: PSSM_-8
  • Status: closed  
  • Source: AGI ( Daniel Yankowsky)
  • Summary:

    According to the UML 2.5.1 spec, join pseudostates have a constraint `join_vertex` that ensures that joins have exactly one outgoing transition. Similarly, fork pseudostates have a constraint `fork_vertex` that ensures that forks have exactly one incoming transition. The state machine in "Join 003" includes a heavy bar (which could be interpreted as either a fork or join) that has two incoming transitions and two outgoing transitions. But due to the constraints, it can't be either. In the notation section of the UML 2.5.1 spec, there doesn't seem to be any affordance for a single drawn symbol in the state machine diagram to represent both a fork AND a join instance from the metamodel.

    This diagram appears to violate the `join_vertex` constraint of the metamodel.

  • Reported: PSSM 1.0b1 — Wed, 29 Aug 2018 19:22 GMT
  • Disposition: Resolved — PSSM 1.0
  • Disposition Summary:

    Resolution of issues PSSM_-8 and PSSM_-11

    Agreed. Join003_Test violates constraints join_segment_guards (see subclause 14.5.11.8 in [UML 2.5.1]) and join_vertex (see subclause 14.5.6.7 in [UML 2.5.1]).

    • join_segment_guards implies that a transition targeting a join pseudostate cannot have a guard and trigger.
    • join_vertex implies that a join pseudo state can only have a single outgoing transition.

    Hence, the state machine specifying the test behavior shall be updated as well as the description provided in the subclause 9.3.12.4 of [PSSM 1.0b].

  • Updated: Mon, 1 Apr 2019 18:19 GMT
  • Attachments: