State Model

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.

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.

Harel Statechart

Tables are also an effective way of expressing information about states and events as illustrated in the state transition table below. Tables can be created with the table editor much like filling in cells of a spreadsheet. Tables can also be generated automatically from information in a state diagram.

State Transition Table (STT)

A Flow Chart is a diagram consisting of nodes and lines that show how an algorithm or process works.

Return to Software Models