Parkomat vending machine/point of sales system is a very convenient example, almost academic in order to illustrate how does the state machine design process look like.
Parking ticket machine is known to every driver and state machine is arguably the best way to implement the parkomats software as a high level program structure.
Here is an image representing a state machine with states and events gathered to the right, to simplify an overview and following analysis of the software.
To further facilitate the analysis and verification, states and events have been marked with letters and digits respectively.
Transition Table of the resulting Finit State Machine is to be found on the image at the bottom right corner too.
With such a picture in mind it is easy to put up a state machine software together and quickly verify it.
In a comming post it will be demonstrated how to implement this state machine using OpalApps FSM library.