~2~Решение и реализация
~3~Административное веб-приложение
~p~На фронтенде создавались новые экраны управления устройствами, обновлялись формы и сценарии настройки, модернизировалась библиотека компонентов.
~3~Сервис пользовательского доступа
~p~Работы на сервере были сосредоточены на сервисе прав пользователей. Инженеры изменили хранение данных и обработку запросов, улучшили взаимодействие с хранилищами платформы и компонентами обмена сообщениями.
~3~Постепенная модернизация
~p~Старые части продукта заменялись поэтапно, а не полной переписью, поэтому действующие рабочие процессы оставались доступными.
~3~Автоматизированные проверки качества
~p~UI-тесты проверяли административные действия, а API-тесты — серверные запросы и обмен между компонентами. Проверки встроили в процесс разработки для раннего обнаружения регрессий.
~2~Технические особенности
~3~Модернизация работающего продукта
~p~Платформа заказчика уже управляла корпоративными смартфонами, планшетами и терминалами сбора данных. Она поддерживала политики приложений, обновлений ОС, разрешений и удалённых действий. Полная замена интерфейса администрирования или серверной части нарушила бы эти сценарии, поэтому инженеры обновляли отдельные компоненты и сервисы по мере развития продукта.
~3~Отдельный сервис прав доступа
~p~Серверные работы были сосредоточены на сервисе пользовательского доступа, включая обработку запросов, организацию данных и сообщений. Сервис взаимодействует с Redis, PostgreSQL, ClickHouse и брокером сообщений. Такое сочетание требует внимания к обмену состоянием доступа и связанными данными между компонентами платформы, а не только к виду экранов настроек.
~3~Повторяемая проверка UI и API
~p~По мере появления новых элементов управления ручная регрессия стала тормозить релизы. Автоматизированные UI-сценарии теперь воспроизводят переходы по разделам, изменение конфигураций, фильтрацию записей и сохранение настроек. Серверные тесты на Pytest проверяют API-запросы и связь сервисов. Команда раньше получает обратную связь, когда изменение нарушает существующий сценарий администрирования.
~3~Особенности реализации
~p~Работа велась сразу по трем направлениям: административный интерфейс, серверный сервис прав доступа и автоматизированные проверки UI/API.
~p~Новые модули и библиотека компонентов вводились постепенно, поскольку система продолжала управлять устройствами и корпоративными политиками во время разработки.