state-machine

State Machine is a model where a system can be in one of predefined states, and changes when specific event or inputs occur.