State Machines: Behavior in States (OnEntry/Exit/Do)

The article is intended at beginners and advanced users alike and discusses the possibilities to add behavior to states.

Context

In UML (and also SysML) an internal behavior can be defined at the states in state machines. This behavior can – according to UML Standard Version 2.5.1, Issue 17-12-05 – be divided into the categories entry, exit and do.

The corresponding UML meta-model defines the following:

It clearly shows that only one behavior per internal behavioral category can/may be defined.

Implementation in Enterprise Architect up to and including version 13

The Properties dialog for defining behavior on states used in the default behavior of the application does not adhere to the UML standard and offers the possibility to define more than one behavior per behavior category (entry, exit, do).

Implementation in Enterprise Architect from version 14

The Properties window used to define behavior on states in the default behavior of the application follows the UML standard exactly and only offers the possibility to define one behavior per behavior category (entry, exit, do). If you want to define more than one behavior, then you have to cascade within the respective behavior (for example, as an [Behavior] you can assign an activity model element, which in turn calls further behavior).

However, if the backward compatibility to the EA-13 is activated, more than one behavior per behavior category can be defined in the displayed modal properties dialog – which, however, does not conform to the UML standard!

Source and Literature References:

Posted in User Interface, Enterprise Architect, Modeling SysML, Modeling UML, Tips & Tricks
Tags: , , ,