Перейти к основному содержимому

UML Activity

Пример Activity Diagram с цветовой маркировкой зон ответственности. Диаграмма описывает жизненный цикл задачи от создания в AtolCloud до выполнения в кассовом ПО Frontol, включая обработку таймаутов и retry. Основано на реальном проекте АТОЛ.

Легенда цветов:

  • Зелёный — AtolCloud (серверная часть)
  • Оранжевый — Frontol (кассовое ПО)
  • Красный — обработка ошибок

Диаграмма процесса

PlantUML диаграмма

Что показано на диаграмме

Ключевые элементы UML Activity:

  • Start / Stop — точки входа и завершения процесса.
  • If/else (ромбики) — точки принятия решений: есть ли задачи, валиден ли токен, выполнилась ли команда, исчерпаны ли попытки retry.
  • Fork / Join — параллельные действия: обновление настроек, запись во временные таблицы и обновление кэша идут одновременно.
  • Цветовые зоны — принадлежность каждого шага к системе видна по цвету активности, без узких колонок.

Технические детали, которые отражены

  • Polling каждые 30 секунд — Frontol сам опрашивает AtolCloud, а не наоборот (из соображений безопасности кассовой сети).
  • JWT-токены с ротацией — при невалидном токене Frontol запрашивает новый, а не падает с ошибкой.
  • Retry-механизм до 3 попыток при ошибках выполнения команды.
  • Промежуточные таблицы БД для хранения состояний задач на стороне Frontol.
  • JSON-контракты на вход и выход, логирование таймингов для метрик.