Contents > C: List of Design Rules > C.16 Statemachine Rules

C.16 Statemachine Rules

Rule: RegularTransitionCategory: Correctness
Severity: 1-highApplies to: all areas
The protocol state machine contains a transition that is not a protocol transition.

Protocol state machines can only contain protocol transitions. Check the transitions and make sure they are all protocol transitions.

  • This is a WFR of the UML.
  • Value returned: name of the source and target states of the transition.

Rule: ProtocolTransitionCategory: Correctness
Severity: 1-highApplies to: all areas
The state machine contains a protocol transition.

Protocol transitions can only occur in protocol state machines. Check the transitions and make sure they are all regular transitions.

  • This is a WFR of the UML.
  • Value returned: name of the source and target states of the transition.


Rule: HistoryStateCategory: Correctness
Severity: 1-highApplies to: all areas
The protocol state machine contains a history state.

Protocol state machine cannot have deep or shallow history states. Check the state machine and remove all history states.

  • This is a WFR of the UML.
  • Value returned: name of the history state.


Rule: StatesWithActivitiesCategory: Correctness
Severity: 1-highApplies to: all areas
The protocol state machine contains states with entry/exit/doactivities.

States in protocol state machines must not have any entry, exit, or do activities. Check the states and remove the activities.

  • This is a WFR of the UML.
  • Value returned: the name of the state with activities.


Rule: TransWithEffectsCategory: Correctness
Severity: 1-highApplies to: all areas
The protocol state machine contains transitions with effects.

Transitions in protocol state machines must not have any effects. Check the transitions and remove the effects.

  • This is a WFR of the UML.
  • Value returned: name of the source and target states of the transition.