Welcome to The Pragmatic Guide to State Machines! This guide will take you from the basics of state machines to advanced modeling techniques, all while keeping things practical and focused on real-world applications.

About This Guide

This guide is designed to be:

Each concept of state machines introduced in this guide is illustrated with an executable player.
Using the itemis CREATE Player, you can interactively raise events, inspect variable values, and observe the statechart executing step-by-step.
This hands-on experience is invaluable for developing a deeper understanding of how the system reacts, how transitions are triggered, and how variables evolve over time.
Seeing the statechart “in motion” helps bridge the gap between theory and practice, making it much easier to grasp the underlying semantics while executing real examples.

On the bottom left, you can see all variables and events that are defined in the statemachine. Try to raise the event buttonPressed and see the statemachine in action.

Getting Started

To get the most out of this guide:

  1. Start with Chapter 1 to understand the basics
  2. Work through each chapter in order
  3. Try the examples in your favorite statechart tool
  4. Apply what you learn to your own projects

Ready to begin? Head over to Chapter 1: What is a State Machine?