Top.Mail.Ru
Разработка
Архитектура
Не FSM-ом единым. Как управлять продуктом с нелинейным жизненным циклом
4 октября
17.00-17.30
Green 7. Инфраструктура

Контроль жизненных циклов компонентов продукта – это непросто. На ранних стадиях разработки такие циклы – линейные, а реакция на события – практически мгновенная.

В подобных ситуациях классический конечный автомат (FSM) – надежный вариант.

Однако позднее, вместе с ростом требований бизнеса и количества внутренних сценариев, такое решение перестает работать: сценарии усложняются, архитектура становится запутанной, а жизненные циклы – нелинейными. Разработчику приходится писать много кода, описывая новый сложный сценарий. Архитектору становится труднее описывать продукт. Растет количество багов и время разработки.

Но есть и альтернативный вариант!

В докладе мы расскажем:

в чем кроется проблема FSM;

как мы искали альтернативный подход и нашли – StateChart Machine;

чем отличается жизненный цикл продукта в парадигме FSM и StateChart Machine;

преимущества такого подхода и подводные камни.

Покажем новый подход и на наших примерах из разработки продукта Kaspersky Thin Client, где мы выиграли, избрав путь StateChart. Разберем, как поменялась программная разработка нового сценария, и что изменилось в описании архитектуры в целом.