VunderKids - Образовательно-игровая платформа

...

VunderKids - Образовательно-игровая платформа
INGELLO / BUSINESS0229
Связаться с нами

VunderKids: главная страница онлайн-школы по математике и английскому языку

Детская образовательная платформа живёт, пока в ней появляются новые уроки. Если каждую игру программировать отдельно, контент становится самой дорогой статьёй бюджета, а запуск нового предмета упирается в разработчиков. VunderKids, онлайн-школа по математике и английскому языку для детей, где уроки проходят в форме игр. Главный технический вызов: огромное количество разных игр по разным предметам, и каждая должна собираться как конструктор.

Ребёнок выполняет задание по математике

Для кого это и что видно сразу

У платформы две аудитории. Ребёнок видит детский интерфейс с персонажем-львом, уроки по предметам и классам, баллы, знаки отличия и сертификаты. Родитель регистрирует аккаунт, добавляет детей, выбирает предмет и класс, ставит учебную цель на неделю и получает напоминания о занятиях.

Игры-уроки как конструктор

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

Игра-урок VunderKids: выбрать правильную цифру

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

Игра-урок: одинаковое ли количество фишек

Игра-урок: перенести синие цветы в прямоугольник

С чего начинался проект: ТЗ с «хотелками»

Заказчик пришёл с готовым техническим заданием: список пожеланий и примеры интерфейса из другого приложения. Мы взяли его в работу как есть, без доработки, и быстро увидели цену такого решения. Страница «Вопрос-ответ» в ТЗ была проиллюстрирована чужим экраном.

Иллюстрация страницы из исходного ТЗ: экран другого приложения

Страница рейтинга тоже была показана картинкой из другого продукта.

Страница рейтинга в исходном ТЗ

А описана она была парой строк, из которых логика не понятна: за счёт каких баллов строится рейтинг и за какой период? Слабо была расписана и админка. Картинка есть, а правил, по которым система считает и показывает данные, нет. Как превратить пожелания в проверяемые требования, мы разбираем в статье про этап технического задания.

Текстовое описание кабинета и рейтинга в исходном ТЗ

Как мы разложили работу: этапы, задачи, WBS

Мы сделали документ «Этапы разработки» и разделили требования на 5 этапов, у каждого своя цель и проверяемый результат. Первый этап: проектирование архитектуры и реляционной базы данных, регистрация и авторизация по токену, развёртывание на Docker и сервер для демонстрации. Второй: функциональный прототип с демонстрационными играми-уроками, баллами за правильные ответы, подтверждением почты, целями и выбором дней обучения, уведомлениями на почту и системой языков и переводов.

Этап 1: проектирование архитектуры и разработка базы данных

Этап 2: разработка функционального прототипа приложения

Дальше каждое требование расписывалось задачей в трекере Asana. Страница «Вопрос-ответ» для программиста описана как сценарий: пользователь видит список вопросов, ответ раскрывается и скрывается по клику, при выборе английской локали меняются заголовок и вопросы, ниже форма с обязательными полями «Имя» и «E-mail», а отправленный вопрос приходит в раздел обращений админки.

Задача в Asana: вывести страницу «Вопрос-ответ» на фронтенд

Сценарий страницы «Вопрос-ответ» в задаче Asana

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

WBS: раздел админки

WBS: раздел сайта

Страница контактов VunderKids

Страница новостей VunderKids

Страница «Вопрос-ответ» VunderKids

Логика личного кабинета

Ветка кабинета на WBS фиксирует правила, которых не хватало в исходном ТЗ:

  • родитель добавляет детей и для каждого выбирает предмет, класс и язык обучения;
  • на неделю ставится учебная цель и выбираются дни занятий, по ним уходят уведомления;
  • за прохождение урока начисляется 1 балл, баллы тратятся на смену фона приложения;
  • за успешное прохождение класса выдаётся сертификат;
  • после первой темы по классу платформа предлагает платный аккаунт и дублирует предложение письмом.

WBS: логика личного кабинета

Личный кабинет: список уроков и прогресс ребёнка

Личный кабинет: цели по неделям

Личный кабинет: заработанные монеты

Расписание устроено просто: родитель выбирает темп (начальный 15 минут, рекомендуемый 30, интенсивный 45), дни недели (рекомендуется три) и время напоминаний: утром, в полдень, днём или вечером.

Расписание занятий: темп, дни и напоминания

Что ещё усложняло проект

  • очень много переводов: статьи, интерфейс, уроки, игры, оповещения и звуки;
  • сложные анимации и аудио в играх-уроках;
  • отдельная JS-игра, где лев собирает монетки на карте;
  • технические консультации для верстальщика и дизайнера, помощь в проведении собеседований.

JS-игра: лев собирает монетки на карте

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

Кабинет родителя: все дети

Смена фона приложения за баллы

Как упростили конструирование игр

Вместо десятков уникальных игр мы типизировали механику по способу ответа. На схеме ниже группы: выбор вариантов, перетаскивание, клик по объекту и ввод текста. Каждая группа сводится к простой форме ответа, а отдельная полиморфная панель вопросов принимает разные типы заданий в одном шаблоне. Новая игра собирается из шаблона, картинок, звуков и вопросов, а не пишется с нуля.

Схема типизации игр: чекбокс, перетаскивание, клик и ввод

Как такой проект запускается у Вас

  1. Консультация и моделирование: аудитория, предметы, модель оплаты. Подробнее в статье про этап консультации.
  2. ТЗ по этапам: у каждого этапа цель, проверяемый результат и фиксированная цена.
  3. Прототип с первыми играми-уроками, на котором проверяется идея. Об этом этапе статья про прототипирование.
  4. Дизайн, разработка, переводы, тестирование и передача.

Честная граница: на скриншотах дизайн и прототип VunderKids, а состав игр, предметов и языков под Вашу платформу определяется на этапе ТЗ.

Где ещё это применимо

Типизированные шаблоны заданий подходят для корпоративного обучения и аттестации сотрудников, языковых школ и онлайн-курсов, обучающих тренажёров для клиентов продуктовых компаний.

Если Вы планируете образовательный продукт, запишитесь на бесплатную консультацию с архитектором. После неё Вы получите расчёт цены и сроков по этапам.

Технологический стек и подходы

SaaS архитектура Микросервисы Облачные вычисления Масштабируемость ПО API интеграции DevOps процессы High-load системы Кибербезопасность решений

Частые вопросы

01Как устроен конструктор игр-уроков на детской платформе?

Механика игр типизирована по способу ответа: выбор вариантов, перетаскивание, клик по объекту и ввод текста. Каждый тип сводится к простой форме ответа, а текст вопроса, варианты, картинки, фон и звуки задаются из админки под каждый урок. Поэтому новая игра собирается из готового шаблона и контента, а не программируется с нуля, и новые предметы добавляются быстрее.

02Почему ТЗ с примерами чужого интерфейса плохо подходит для разработки?

Картинка из другого приложения показывает, как экран выглядит, но не объясняет, как он работает. В VunderKids страница рейтинга была описана парой строк, и оставалось неясно, за какие баллы и за какой период он строится. Такие пробелы закрываются до программирования: правила расчёта, роли, сценарии экранов и критерии приёмки фиксируются в ТЗ по этапам.

03На какие этапы делится разработка образовательной платформы?

В VunderKids требования разделили на 5 этапов. Первый: архитектура и реляционная база данных, регистрация и авторизация по токену, развёртывание на Docker и демо-сервер. Второй: функциональный прототип с демонстрационными играми, баллами, целями, уведомлениями на почту и переводами. Дальше задачи шли в Asana, а ход работ контролировался по диаграмме WBS.

04Какие механики мотивации детей есть в VunderKids?

За прохождение урока начисляется балл, и баллы можно потратить на смену фона приложения. За успешное прохождение класса выдаётся сертификат, есть знаки отличия и прогресс по урокам. Родитель ставит учебную цель на неделю, выбирает темп (15, 30 или 45 минут), дни занятий и время напоминаний, поэтому ребёнок занимается регулярно, а не от случая к случаю.

05Сколько стоит разработка образовательно-игровой платформы?

Цена зависит от числа типов игр, предметов, языков, ролей и интеграций с оплатой, поэтому честную сумму без разбора требований назвать нельзя. Ingello начинает с бесплатной консультации с архитектором: разбираем аудиторию, предметы и модель оплаты, а затем даём расчёт цены и сроков по этапам, где у каждого этапа фиксированная цена и проверяемый результат.