Выпуск новой версии мобильного приложения требует длительного времени, и это сильно усложняет задачи экспериментировать, пробовать что-то новое или оптимизировать ряд заранее неизвестных переменных в вашем приложении (например, баланс в игре). В отличии от веба, где изменения выкатываются в считанные секунды, в случае с мобильными приложениями вам необходимо пройти длительный цикл от сабмита в стор до момента, когда ваши пользователи обновятся до новой версии.

Описанную проблему решает возможность A/B тестирования в вашем мобильном приложении. Для A/B тестирования существуют специальные сервисы (Swrve, Arise и другие), но они стоят немалых денег и требуют времени для добавления их SDK, настройки и изучения.

Я хочу рассказать о простом способе, как можно реализовать A/B тестирование в вашем мобильном приложении (а заодно и возможность настраивать ваше приложение под определенные группы пользователей) всего за несколько часов без денежных затрат и необходимости вкручивать сторонние SDK.

А/Б тестирование мобильных приложений

Что вам потребуется для реализации A/B тестирования в мобильном приложении

  1. Гибкая система аналитики внутри приложения (Mixpanel, Kissmetriks);
  2. четкий список переменных, с которыми вы хотите экспериментировать (цвета кнопок, количество результатов поиска на одной странице, переменные баланса в игре);
  3. специальный xml-файл на сервере, в котором будут храниться настройки А/Б теста;
  4. пару часов вашего времени.

Клиент

Теперь необходимо реализовать следующую логику на клиенте:

  1. каждому новому пользователю присваивается случайное число от 0 до 9;
  2. каждому новому пользователю присваивается номер дня (уникальное значение для каждого дня), когда он пришел в приложение;
  3. после присваивания этих значений приложение должно обратиться на сервер и проверить, есть ли для полученной пары значений (случайное число и день) специальные настройки;
  4. если настройки есть, то установить их, если нет (или нет интернета), то использовать дефолтные.

Осталось настроить систему нашей мобильной аналитики, чтобы для каждого пользователя к каждому его ивенту дополнительно передавались два параметра: день прихода в приложение и его случайное число (в Mixpanel это реализуется через глобальные параметры).

Сервер

Теперь пришло время создать xml-файл на сервере, к которому будет обращаться приложение.

В этом файле мы для конкретных групп пользователей (группа пользователей определяется днем прихода в приложение и случайным числом) задаем специальные настройки приложения.

Теперь мы можем проводить эксперименты на небольшой части аудитории и при необходимости раскатывать их на всех наших пользователей. Результаты мы моментально видим в нашей системе статистики (Mixpanel, например, работает в real-time). Важно: не забудьте перед принятием решений на основе полученных данных проверить статистическую значимость результатов.

При желании описанный подход можно углубить. Например, вы можете передавать и другие переменные при обращении на сервер (источник трафика, операционную систему, страну пользователя) и настраивать отдельные эксперименты для каждой из групп пользователей.