A data model used to show the valid states of an object and allowed transitions between them. All states are modeled as both a column and row in a table and systemic consideration is given to determine whether each potential state transition is permitted.