Enterprise Architect has a full and rigorous implementation of the Unified Modeling Language static and dynamic diagrams including the State Diagram. Any entity in the system can have a State Machine Diagram and these can be conveniently located under the entity in the Project Browser. The tool has rich support for many of the powerful aspects of these machines including the ability to generate code directly from the diagrams. The state machine diagrams can also be automatically converted into a State Table.
State Machine Diagram
A State Machine Diagram is a powerful way of presenting information about the lifetime of a business or technical entity. It can be used to describe the important conditions (states) that occur in an entity's lifetime or cycles. Typically only entities that have important stages in their lifetime are modeled with State Machine Diagrams. The entity is said to transition from one state to another as specified by the State Machine. Triggers and Events can be described that allow the state transition to occur and Guards can be defined that restrict the change of state. Each State can define the behaviors that occur on entry, during and exit from the state.
Enterprise Architect allows the State Machine Diagram to be automatically converted to a State Table. The state table editor is often a more intuitive way of working with the state machine for some users.
The state machine can be exported to a Spreadsheet file allowing the States and Transitions to be anlayzed.
There is also support for simulation of the State Machine and the Creation of an Executable State Machine that can be used to generate a language specific behavioral 'engine' for multiple software products on multiple platforms.
Learn More: State Machine Diagram
Visual Filters can be used to hide or dim parts of the diagram so that other parts can be emphasized. This is particularly useful when presenting the State Machine diagram to a team in a meeting or demonstration. Context Filtering is easy to setup and will emphasize the currently selected diagram element and its directly connected elements.
Learn More: Visual Filters