ABSTRACT

State machine diagrams are part of the Object Management Group Unified Modeling Language (OMG UML) (Object Management Group 2010). UML state machine diagrams, which were previously called statechart diagrams in UML 1, are an object-based variation of Harel’s statecharts (Harel 1987) with the addition of activity diagram notations. David Harel introduced statecharts as an extension to state machines (Hopcroft et al. 2006). The aim was to represent the behavior of complex systems in a clear and understandable form without suffering from explosion in the number of states and edges. The main originality of statecharts was in the introduction of orthogonality and hierarchy.