С помощью конечных автоматов можно успешно решать обширный класс задач. Это обстоятельство подмечено давно, поэтому в литературе по проектированию программного обеспечения часто приводятся рассуждения на тему примененения автоматов. Однако в процессе моделирования автомат рассамтривается с более высокого уровня, нежели это делается в момент его реализации с использованием конкретного языка программирования.