Previous Topic: Entity Life-Cycle DiagramNext Topic: Process Logic Analysis


Entity State Change Matrix

The same level of information that is shown on the previous illustration of the entity life-cycle for the entity type ORDER can appear on a manually prepared Entity State Change Matrix too.

You prepare an Entity State Change Matrix for entity types with complex life-cycles. This helps to show which processes can include changes of state in their post-conditions, and which processes can reference entities in what states.

The matrix format also provides a good check on the completeness of process support for the life-cycle.

An example of this matrix, corresponding to the illustration of the entity life-cycle for the entity Type ORDER, appears in the following illustration.

Entity State Change Matrix

The horizontal axis of this matrix shows all possible entity states for the entity type.

The vertical axis contains all the elementary processes that reference the entity type.

Cells indicate whether the elementary process causes a change in state (Delete and Create), Updates an entity in a state without changing the state, or Reads an entity in a state.

Any column with no cell entries represents a termination state.

Any row with no cell entries represents an error—you either omitted cell entries or included processes that did not reference the entity type.

Some processes act on an entity type without changing its state. In this example, modify order changes the contents of a taken or scheduled order without changing its state. Such processes are not shown on the entity life-cycle diagram.

The matrix is easy to check whether possible transitions have been omitted. For example, can Receive Returned Goods execute for Shipped orders and Paid orders?

Other complex situations are more easily shown on a diagram. For example, where several processes cause transitions to the same state, and where different executions of a process lead to one destination state from several source states.

If a process can cause a number of transitions, the process definition explain the conditions that can cause each transition to occur.