1. Is used to
    1. Where some aspect of the system can be described in a finite state machine
    2. ISTQB: to test the ability of the software to enter into and exit from defined states via valid and invalid transitions.
  2. LEARN theory
    1. Model-based testing
    2. Finite-state machine
    3. Transition system
    4. Directed graph
    5. A Practitioner's Guide to Software Test Design
      1. Chapter 7: State-Transition Testing
  3. Сan be used at any level of testing
  4. Ideal
    1. For testing any type of transactions and workflows
    2. For early testing
    3. For requirements testing
  5. Difficulties
    1. Determining all possible the states
  6. Advice: to draw the diagram
    1. All states
    2. All transitions from one state to another
    3. Any events that cause a transition
    4. The actions that result from a transition
  7. Automation tools is possible for test cases generation
    1. GraphWalker
  8. Allow to find gaps, omissions, errors