Types of States

There are different type of states a concept instance passes though in the state model.

Note:
  • Except for the concurrent state, all state types allow only exclusive-or (XOR) transitions, which go to one state only. To allow a state to go from one state to multiple states, use a concurrent state.
  • You can set timeout expressions and timeout actions on all types of states except start and end states, and Call State Model nodes.
Start and End States
Each state model begins with a start state and ends with one or more end states. A start state has an exit action, but no entry action. An end state has an entry action but no exit action.

Composite and concurrent states also contain start and end states. You can delete the end state in a composite state, as it is optional. However, you cannot delete the end states in a concurrent state as they are mandatory.

Simple States   
A simple state can include an entry action and an exit action.
Composite States
 Composite states are like nested folders: they contain other states.

Composite states can contain simple states, other composite states, and concurrent states.

By default a composite state has a start and end state. However you can delete the end state if it is not needed.

Use a composite state to treat a group of states as a unit. For example, consider a state model for an order instance. The order instance may need to travel through complex credit check and fulfillment processes. You can group the complex credit-check process in one composite state and the order-fulfillment process in another composite state.

For information about composite state transition rules, see Transitions.

Concurrent State
 A concurrent state allows multiple state flows to operate at the same time. By default, a concurrent state has two processing lanes, called regions. A region can contain simple states, other concurrent states, and composite states. You can add multiple regions to a concurrent state.

A state machine instance cannot exit a concurrent state until all its regions have finished processing, unless a timeout occurs.

For information about concurrent state transition rules, see Transitions.