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

К автору статьи, как на сегодняшний момент к эксперту в области разработки и управления коммерческими цифровыми продуктами, дополнительно имеющему глубокий опыт преподавания в высшем и среднем образовании, обратились представители продуктовой команды онлайн-школы «Тетрика» – сервиса подбора репетиторов, входящего в группу компаний VK (бывш. Mail), с просьбой решения проблемы их продукта, оказывающей сильное негативное влияние на возможности масштабирования бизнеса. Основная функция онлайн-школы «Тетрика» – фасилитировать взаимодействие двух сторон, «преподаватель» и «ученик».

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

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

Рис. 1. Спиральная модель жизненного цикла программного продукта

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

Постановка задачи

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

После заявки с учеником связывается менеджер отдела продаж (ОП) и через календарь (рис. 2) записывает на бесплатный пробный урок.

Рис. 2. Инструмент, которым пользуются менеджеры отдела продаж для поиска подходящих репетиторов и записи ученика на урок
Рис. 2. Инструмент, которым пользуются менеджеры отдела продаж для поиска подходящих репетиторов и записи ученика на урок

В этой воронке есть проблемное место: так как пробный урок у «Тетрики» бесплатный, то часть пользователей не приходит в назначенное время. Конверсия из назначения пробного урока в его посещение по оптимистичным прогнозам отдела продаж составляет 40%. Такая низкая явка влечёт за собой другую проблему: из 100 назначенных уроков только 40 состоится, а на остальных преподаватели просто будут сидеть в ожидании ученика. Это вызывает как негатив преподавателей, так и сложности с масштабированием, потому что для записи четырёх новых пользователей онлайн-школе нужно найти десять свободных слотов у преподавателей.

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

Синтез гипотез решения проблемы

Проблема неявки 60% учеников на пробные занятия происходит на следующем этапе воронки после успешного завершения базовой транзакции. Бизнес и преподаватели видят ее по-разному.

Бизнес

Пробный урок бесплатный, поэтому часть учеников не приходит в назначенное время.

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

  • Нужно внедрить механику, которая уменьшит проблему и освободит часть преподавателей от бесполезной нагрузки.

Преподаватель

Бизнес недостаточно эффективно обеспечивает явку учеников на пробное занятие.

  • Бизнес мог бы повысить конверсию из назначения пробного урока в его посещение.

  • Бизнес может оперативно предоставлять мне другого ученика в момент фиксации неявки уже назначенного. В текущее время я уже готов провести пробное занятие по данному предмету и с заданной целью.

Сформулируем следующие гипотезы для решения проблемы:

Гипотеза 1. Возможно повышение конверсии из назначения пробного урока в его посещение без негативного влияния на базовую транзакцию и нетворк-эффект для стороны ученика. На следующем этапе после успешного завершения базовой транзакции есть узкое место во взаимодействии с учеником с целью подтверждения его явки на пробное занятие. Явка подтверждается в момент звонка менеджера отдела продаж и назначения времени пробного урока, в назначенный день ученик получает уведомление, что у него сегодня урок, далее заходит в личный кабинет и переходит на урок с преподавателем. Вывод: декомпозиция бизнес-процесса между подтверждением явки в момент звонка и уведомлением ученика в день урока на промежуточные состояния поможет оптимизировать данный бизнес-процесс и увеличить его общую конверсию за счет повышения конверсий переходов между новыми промежуточными состояниями.

Гипотеза 2. Возможно избавление от бесполезной нагрузки для части преподавателей путем назначения полезной нагрузки в момент фиксации неявки. Преподаватель в текущее время уже готов к пробному занятию по заданной специализации предмет+цель. Часть учеников в момент подачи заявки на лэндинге и сразу же поступившего звонка от менеджера отдела продаж готова явиться на пробное занятие «здесь и сейчас». Вывод: механика, которая уменьшит проблему, должна инициализироваться в момент фиксации неявки и быть оперативно обработана платформой и отделом продаж [1], за счет чего освободившемуся преподавателю будет назначен новый «горячий» ученик из части готовых к проведению пробного урока «здесь и сейчас». Механика положительно повлияет на качество базовой транзакции и нетворк-эффект для стороны ученика («я отправил заявку и через 5 минут уже начал заниматься с репетитором»).

В качестве математической модели проблемы и для имитационного моделирования процесса могут быть использованы теория массового обслуживания (гипотеза 2) и марковские случайные процессы [2] (гипотеза 1). В целях данной задачи рассмотрим упрощенные модели марковского процесса с дискретным временем и систему массового обслуживания для 400 уроков ЕГЭ по математике, проходящих в одно и то же время.

Марковский процесс с дискретным временем для моделирования конверсии в явку

Марковские процессы могут применяться для моделирования воронки конверсий и декомпозиции состояний на цепочки промежуточных состояний [3].

Пример: в ecommerce продуктах и интернет-магазинах большое значение имеет метрика конверсии посетителя сайта (или запуска приложения) в оформленный заказ. Цель бизнеса – увеличивать данную конверсию. Цель достигается за счет построения воронки, например, посещение -> просмотр карточки товара -> добавление товара в корзину -> переход в корзину -> завершение оформления заказа. За счет работы над повышением конверсии промежуточных переходов увеличивается общая конверсия цепочки.

На рисунке 3 представлен граф состояний процесса, который составлен из описания задачи. Причинами неявки ученика на пробное занятие могут быть:

  • ученик забыл про назначенный урок и не увидел вовремя уведомление,
  • у ученика изменились планы на выбранный день.
Рис. 3. Граф состояний марковского процесса явки на пробный урок
Рис. 3. Граф состояний марковского процесса явки на пробный урок

Зеленая стрелка на рисунке 3 показывает конверсию из назначения пробного урока в его посещение. Красная стрелка показывает вероятность неявки, а состояние неявки декомпозируется на два внутренних состояния («забыл/не увидел уведомление» и «поменялись планы»).

Добавив промежуточные состояния (дополнительные уведомления и возможность переноса/отказа от пробного занятия заранее) между звонком менеджера ОП и уведомлением в день урока, мы можем изменить процесс так, чтобы увеличить «зеленую» вероятность.

Рис. 4. Целевой процесс подтверждения явки на пробный урок
Рис. 4. Целевой процесс подтверждения явки на пробный урок

За счет прохождения на рисунке 4 «красного» пути через освобождение заранее слота в расписании преподавателя неявка становится прогнозируемой и с меньшей вероятностью происходит в момент начала пробного занятия. Внедрение данного процесса позволит:

  • снизить влияние причины «забыл или не увидел вовремя уведомление» на неявку за счет напоминаний и активного подтверждения учеником своей явки заранее,
  • заранее обрабатывать причину «поменялись планы на выбранный день» и назначать преподавателю другого ученика на освободившийся слот расписания.

При известных вероятностях всех переходов на рисунке 3 было проведено имитационное моделирование текущего процесса, на основе результатов которого выбирались различные наборы предполагаемых значений вероятностей всех переходов для рисунка 4. Эти наборы вероятностей составляют оптимистичный и пессимистичный сценарии [4], что позволило провести имитационное моделирование целевого процесса и спрогнозировать его влияние на бизнес до фактического внедрения. Полные результаты моделирования представляют собой коммерческую тайну онлайн-школы «Тетрика», поэтому в рамках данной статьи было решено ограничиться описанием применения методики имитационного моделирования для реального бизнес-процесса.

Вывод: гипотеза 1 может помочь снизить бесполезную нагрузку преподавателей вплоть до 0% (неявка прогнозируется заранее, подбирается новый ученик) и увеличить конверсию из назначенного пробного урока в его посещение (ученик получает больше напоминаний и уведомлений, активно подтверждает свою явку на пробный урок заранее).

Система массового обслуживания для моделирования занятости преподавателей

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

Схема СМО по условиям задачи изображена на рисунке 5.

Рис. 5. СМО проведения пробного урока с загрузкой преподавателей 40%
Рис. 5. СМО проведения пробного урока с загрузкой преподавателей 40%

Гипотеза 2 предполагает фиксацию платформой факта неявки, отображение освободившихся слотов в календаре для отдела продаж и назначение освободившимся преподавателям новых «горячих» учеников (добавление в СМО требований типа 2) из обрабатываемых менеджерами отдела продаж в настоящее время [5]. На рисунке 6 показан идеальный случай, когда поток «горячих» учеников позволит занять всех освободившихся преподавателей. Конечно, на практике этот поток обладает меньшей мощностью, чем 240 учеников, но он ненулевой и позволит освободить часть преподавателей от бесполезной нагрузки, а сегменту «горячих» учеников принести дополнительную ценность проведения пробного занятия сразу же после обращения в онлайн-школу.

Рис. 6 – Целевая СМО с добавленным входным потоком требований типа 2 («горячие» ученики)
Рис. 6 – Целевая СМО с добавленным входным потоком требований типа 2 («горячие» ученики)

Для имитационного моделирования систем массового обслуживания были использованы инструменты GPSS (Global Purpose Simulation System) и MATLAB [6], однако, простота структурных схем рассмотренных СМО позволяет видеть загруженность преподавателей напрямую в зависимости от доступной мощности входного потока «горячих» учеников. Для практической реализации формирования потока типа требований 2 возможно использовать генетические алгоритмы [7] или обучаемые модели нейронных сетей.

Вывод: назначение новых «горячих» учеников в момент фиксации неявки позволит полезно нагрузить внезапно освободившихся преподавателей.

Заключение

По результатам анализа гипотез 1 и 2 и проведенной серии экспериментов имитационного моделирования для решения проблемы онлайн-школы «Тетрика» были предложены механика 1 (повышение конверсии в явку за счет активного подтверждения) и механика 2 (назначение «горячих» учеников в момент фиксации неявки) с подробными описаниями, как они выглядят для всех трех сторон-участников процесса (бизнес, ученик, преподаватель). Предложенные механики 1 и 2 можно комбинировать, внедрив обе вместе, или выбрать для внедрения одну из них.

Онлайн школе «Тетрика» рекомендовано провести A/B тестирование каждой механики по-отдельности, предварительно промоделировав их предложенными методами имитационного моделирования. Риск механики 1 заключается в возможном росте числа переносов/отказов от пробного урока, поэтому внедрение рекомендуется начинать с механики 2. Результаты A/B тестирования каждой из двух механик далее можно использовать для нового моделирования их общего эффекта с целью выявления скрытых рисков. Далее провести общий A/B тест внедрения обеих механик одновременно. После этого продуктовый инкремент можно будет считать завершенным и продукт с увеличенной ценностью перейдет на новый виток спирали жизненного цикла.

Список литературы

1. Minitaeva A.M. Analysis of the multi-criteria decision-making problem under conditions of heterogeneous interval uncertainty // Proceedings of the 4th International Conference on Control Systems, Mathematical Modeling, Automation and Energy Efficiency (SUMMA). - Lipetsk: IEEE, 2022. - pp. 42-45.

2. Kravets O.Ja., Shaytura S.V., Minitaeva A.M., Atlasov I.V. Аnalysis of routing processes in telecommunication networks with unsteady flows using markov processes. В сборнике: IOP Conference Series: Materials Science and Engineering. Krasnoyarsk Science and Technology City Hall of the Russian Union of Scientific and Engineering Associations. 2020, 862(5), 052005

3. Пролетарский А.В., Гуренко В.В., Сюзев В.В., Неусыпин К.А. Методы представления и имитации дискретных случайных сигналов в рамках обобщенной корреляционной теории // Динамика сложных систем - XXI век. – 2019. – Т. 13. – № 1. – С. 17-24. – DOI 10.18127/j19997493-201901-03. – EDN ZDIBZZ.

4. Минитаева А.М. Многомодельный подход к прогнозированию нелинейных нестационарных процессов в задачах оптимального управления // Сборник трудов двенадцатой Всероссийской конференции «Необратимые процессы в природе и технике» : Т. 1. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2023. - С. 438-447.

5. Минитаева А.М. Принятие решений в условиях интервального задания предпочтений лиц, принимающих решения // Сборник материалов конференции «Информационные технологии в управлении» (ИТУ-2022) : 15-я мультиконференция по проблемам управления. - СПб.: ГНЦ РФ АО «Концерн «ЦНИИ «Электроприбор», 2022. - С. 197-200.

6. Бычков Б.И., Сюзев В.В., Гуренко В.В. Применение MATLAB для исследования алгоритмов имитации сигналов // Будущее машиностроения России : сборник докладов: в 2 томах, Москва, 22–25 сентября 2020 года / Союз машиностроителей России, Московский государственный технический университет имени Н.Э. Баумана (национальный исследовательский университет). Том 2. – Москва: Издательство МГТУ им. Н.Э. Баумана, 2020. – С. 95-98. – EDN NQKOSV.

7. Минитаева А.М., Векшин Р.Д., Шатилов А.А. Анализ различных видов генетических алгоритмов в задачах оптимизации // Технологии инженерных и информационных систем. - 2022. - №1. - С. 21-34.

Ссылка для цитирования

Шайхутдинов А.А. Применение методов имитационного моделирования в спиральном жизненном цикле программных продуктов для улучшения продуктовых метрик на примере онлайн сервиса подбора репетиторов // Искусственный интеллект в автоматизированных системах управления и обработки данных : сборник статей II Всероссийской научной конференции, Москва, 27–28 апреля 2023 года. – Москва: КДУ, 2023. – С. 237-244. – EDN UQQTNL.

11
Начать дискуссию