State Model

Harel Statechart


    The state model describes the states and events in a system using a diagram or table. There are many different types of state diagrams and tables. Causal Loop Diagrams are used for System Models. A Flow Chart consists of nodes and lines that show how an algorithm or process works.

    In a structured analysis and design method, state models show the modes in a system and usually connect to data flow diagrams using control bars and control flows. In an object-oriented approach a state model is typically used to describe the lifecycle of a complex object. The Harel state model illustrated below has become popular in recent years due to its ability to express concurrency.


    State Transition Table (STT) Tables are also an effective way of expressing information about states and events as illustrated in 1 state transition table.

    Tables can be created with the table editor much like filling in cells of a spreadsheet. Tables can be generated automatically from information in a state diagram.

    Tables are often combined with data flow diagrams to control when processes are active or to generate output control flows from input control flows.

    Process Activation Table

Return to Software Models