MVP приложения для запуска и управления A/B тестами
Моя роль: Senior Product Designer.
Команда: iOS Team Lead, QA, Frontend, Backend.
Инструменты: Figma, ProtoPie, Confluence, Jira.
Год: 2023.
1. Краткое содержание
Разработали инструмент для контроля A/B тестов, который централизовал процессы их проведения. В результате компания получила более прозрачный и удобный способ тестирования гипотез. С его помощью мы провели множество экспериментов с статистически значимыми изменениями в метриках и затратили меньше времени на подготовку.
2. О проекте
В Ewa начались процессы оптимизации проведения A/B тестов. Вместе с iOS Team Lead и аналитиками мы начали разрабатывать наш собственный инструмент под рабочим названием A/B Toolkit для создания и мониторинга A/B тестов. Разработку возглавлял наш iOS Team Lead, а я участвовал в изменениях процессов тестирования и разработал дизайн для MVP.
3. Исследование и анализ
На начальном этапе проекта мы провели детальный анализ текущего процесса A/B тестирования. В ходе анализа удалось выявить основные проблемы, с которыми сталкивается команда, включая недостаточную эффективность некоторых методик и ограниченные ресурсы. Благодаря тщательному исследованию, мы также обнаружили пути развития и улучшения, которые позволят оптимизировать процесс тестирования и повысить его результативность в будущем.
3.1. Текущий процесс
Процесс проведения эксперимента включает множество участников. Из-за сложности в коммуникации возникают проблемы с определением ответственного за запуск эксперимента, что приводит к конфликтам между менеджерами и разработчиками.

3.1.1 Разрозненность источников A/B тестов
Тесты управляются разными компонентами: EWA App, EWA API, Firebase Remote Config. Это создает сложности в координации и управлении тестами, так как каждый компонент имеет свои особенности и требует отдельного подхода.
3.1.2 Отсутствует история изменений
Связи между участниками процесса (менеджеры, аналитики данных, разработчики, специалисты по качеству) не позволяют централизованно отслеживать изменения. Это приводит к проблемам с восстановлением удаленных тестов и усложняет анализ активности тестов за прошедшие периоды.
3.1.3 Высокая вероятность человеческой ошибки
Разнообразие участников и компонентов, отвечающих за тестирование, значительно увеличивает вероятность ошибок при вводе данных и настройке конфигураций. Запуск тестов часто требует ручного изменения JSON кода, что создает дополнительные риски, так как не все сотрудники могут хорошо владеть этим языком. Ошибки в структуре JSON могут привести к остановке тестов и выходу пользователей из тестов. В результате такие ошибки могут отбросить процесс A/B тестирования на 2-3 недели назад.

3.1.4 Децентрализация и различия в платформах
Тесты запускаются и управляются через различные платформы, такие как EWA App и Firebase Remote Config. Это требует от команд (особенно QA специалистов) учета всех различий, что усложняет их работу и увеличивает вероятность ошибок.
4. Решение
Одним из основных решений стало внедрение A/B Toolkit и Git для централизованного управления тестами и хранения истории изменений в одном месте. Это позволило автоматизировать публикацию локальных и облачных тестов, а также уведомлений об изменениях через Slack, что значительно уменьшило вероятность человеческой ошибки. Переход от ручного редактирования JSON файлов к использованию UI и валидация данных перед загрузкой также сократили количество возможных сбоев. Дополнительно была увеличена поддержка Android и начат постепенный отказ от использования Firebase, что улучшило совместимость и снизило риск ошибок из-за различий в платформах. Эти меры сделали процесс A/B тестирования более централизованным, автоматизированным и устойчивым к ошибкам, облегчив работу всех участников проекта.

4.1. Роудмап изменений
После согласования мы разбили процесс внедрения новых методов на несколько этапов. На первом этапе мы внедрили A/B Toolkit — приложение для macOS, которое централизовало управление локальными и облачными тестами. Оно автоматически выгружало локальные тесты в новый релиз, а облачные тесты — в EWA API. Приложение отправляет уведомления о всех изменениях в канал Slack. Мы также внедрили Git-репозиторий для хранения истории действий. Теперь все изменения производятся через графический интерфейс, вместо ручного редактирования JSON файлов.
5. Дизайн A/B Toolkit
Мы решили начать с разработки нативного приложения для macOS для MVP, так как это был наиболее экономичный вариант благодаря наличию достаточного количества iOS-разработчиков в компании. К сожалению, A/B Toolkit не могли использовать коллеги, у которых не было macOS или iOS устройств, но наличие первой версии помогло отладить продукт и собрать ценные отзывы для дальнейшего улучшения.
5.1. Дизайн v1
После согласования мы разбили процесс внедрения новых методов на несколько этапов. На первом этапе мы внедрили A/B Toolkit — приложение для macOS, которое централизовало управление локальными и облачными тестами. Оно автоматически выгружало локальные тесты в новый релиз, а облачные тесты — в EWA API. Приложение отправляет уведомления о всех изменениях в канал Slack. Мы также внедрили Git-репозиторий для хранения истории действий. Теперь все изменения производятся через графический интерфейс, вместо ручного редактирования JSON файлов.


5.2. Дизайн v2
Во второй итерации A/B Toolkit был переписан на Kotlin, что позволило создать кроссплатформенное приложение, работающее на любом устройстве, независимо от операционной системы и типа. Приложение адаптируется под любую диагональ и может использоваться как в десктопном виде, так и на смартфонах и планшетах.




6. Вывод
Внедрение A/B Toolkit и изменений в процессах тестирования улучшило контроль и управление A/B тестами, сократило ошибки и повысило эффективность команды. Автоматизация публикации тестов и уведомлений уменьшила риск человеческих ошибок и упростила процесс тестирования. Благодаря этим нововведениям мы провели множество успешных тестов, которые значительно повысили метрики компании.