Главное о кейсе
Образовательная платформа ProSchool — экспериментальный продукт, который объединяет в себе портал для управления образовательным процессом, электронный дневник, расписание занятий, а также личный кабинет для получения учебной информации.
До обращения к нам команда ProSchool использовала до 5 разных инструментов. На рынке нет готовых решений, которые учитывали бы пользовательские сценарии родителя, ученика, учителя, классного руководителя, администратора школы. Варианты, рекомендованные Минпросвещения, также не обладали необходимой гибкостью.
Поэтому команда обратилась к нам за разработкой кастомной платформы, которая станет единой точкой доступа для сотрудников школы, учащихся и их родителей.
За 4 месяца время удалось реализовать основной функционал:
– Авторизация пользователей по ролям с разным уровнем доступа: админ, преподаватель, учитель, ученик.
– Создание и установка взаимосвязи между сущностями: классы, предметы, кабинеты, преподаватели, пользователи.
– Расписание с возможностью создавать занятия по предметам и другие активности.
– Журнал: заполнение посещаемости, успеваемости, а также видов деятельности и темы к ним
Релиз MVP состоялся 30 октября, в ноябре фокус-группа тестирует сервис для офлайн юнита школы. Команда планирует развивать продукт после запуска.
Новая платформа закрывает основные потребности завучей и учителей в организации учебного процесса, помогает родителям и учащимся узнавать успеваемость и домашние задания в пару кликов.
Как проект изменил жизнь пользователей
Команда ProSchool решилась на смелый шаг — создать платформу, которая станет единой точкой доступа для всех пользователей школы. Функционал покрывает основные потребности школы и помогает преподавателям, завучам быстрее и проще решать организационные вопросы.
Школа принимает учащихся 1-11 классов, а это значит, что функционал платформы должен быть понятен не только уверенным пользователям-подросткам, но и ученикам начальной школы. Они в любой момент могут проверить расписание или домашнее задание на следующий урок.
Родителям, которые выбрали частную школу, важно быть уверенными, что их дети получат качественное образование и подготовку к экзаменам. Сервис ProSchool даёт необходимую прозрачность: теперь информация доступна в одном сервисе, и остается меньше поводов для переживаний.
Электронные журналы сами по себе не новость. Тем не менее, не все решения обладают достаточной гибкостью и удобством. Учителям важно не только выставлять итоговые оценки, но и отмечать активность учеников. “Пока ставлю точку в журнале” потеряло актуальность. Сервис ProSchool учитывает нюансы нестандартных подходов к оценкам.
Всех учеников нужно занести в систему. Хорошо, если загрузить нужно только один класс, а если их несколько? Решение ProSchool позволяет добавлять записи через загрузку таблицы с данными. А если в данных есть ошибка, система вернет неверные записи для проверки.
Продукт объединяет функционал классного журнала и расписание. Несмотря на внешнюю простоту, это челленж для команды разработки: слоты в расписании не должны пересекаться. Нам удалось реализовать возможность управлять расписанием с учётом ограничений.Функционал оценили в административном отделе: письменные расписания на доске хоть и ушли в прошлое, но напоминали о себе в виде накладок уроков. А теперь этого можно легко избежать.
Бизнес-задача и ее решение
Команда ProSchool обратилась с задачей создать платформу, которая объединить функционал нескольких сервисов и автоматизирует административные процессы.
Мы провели этап бизнес-аналитики, выделили функционал MVP и приступили к работе. На всех этапах команда школы была вовлечена в процесс разработки и делилась идеями, как можно улучшить результат. В приоритете было качество продукта, скорость разработки зависела от корректной реализации бизнес-требований.
В ходе работы мы оперативно расширяли проектную команду, чтобы обеспечить ровный темп разработки на всех этапах даже при повышенной нагрузке.
Крафт (мастерство), реализация, технические детали
В разработке платформы можно выделить 4 основных направления:
1. Авторизация по ролям пользователей: учитель, ученик, родитель, админ.
2. Управление образовательным процессом: создание и настройка предметов, кабинетов, добавление классов и групп. Администратор может наполнять классы учениками, может создавать события (субботник). Настройка взаимосвязей (учитель — класс, учитель — предмет и тд)
3. Создание блока Расписание: где, когда, с кем проходят уроки. Вдохновлено интерфейсом гугл календаря. Блок доступен для всех групп пользователей.
4. Создание блока Журнал. Доступен для всех групп с разными уровнями редактирования. Для выставления баллов, оценок и типов оценок, записи тем уроков, домашних заданий, посещаемости.
Особенности разработки:
– Ролевая модель. Платформа объединяет несколько ролей — админ, учитель, родитель, школьник — и предусматривает разделение функционала. Какие-то функции скрыты. Какие-то добавляются в зависимости от роли пользователя. Родитель не может просмотреть все уроки школы, ему доступно только расписание своих детей.
– Связь сущностей. Какие сущности: кабинеты, предметы, ученики, учителя. Должны корректно отображаться, создаваться, быть редактируемыми, удаляться.
– Массовый импорт пользователей из эксель-таблицы. Система обрабатывает таблицу, проверяет на ошибки и обозначает их, в случае успеха добавляет пользователя на платформу.
Для реализации выбрали стейтлесс обработку. Стейтлесс обеспечивает быструю обработку. Вок как это происходит: таблица отправляется на бэкенд и валидируется там же, данные отрисовываются на фронтенде, и пользователь принимает или отклоняет записи. В случае успеха данные сохраняются на бэкенде. Данные между запросами не хранятся.
Главные челленджи:
– Генерация расписания по слотам для создания уроков и факультативов. Каждый урок привязан к сущностям (учитель, предмет, класс) и отображается в календаре.
Функционал не позволяет слотам пересекаться, если:
У слотов одинаковый педагог, ведущий занятие,
У слотов совпадает хотя бы один ученик, который должен посетить занятие,
У слотов одинаковый кабинет.
Календарь делает проверку при создании, редактировании всех событий в конкретный день.
– Электронный журнал. Интерактивная таблица, где можно отмечать посещаемость и выставлять оценки. Агрегирует все данные системы. Таблица динамическая, клиент-серверное взаимодействие строится сложнее: нужно реализовать через фоновое взаимодействие и кнопок сохранения. Функционал и способ обработки схож с гугл таблицами.
Стэк:
React, TypeScript, Radix UI, дизайн-кит с помощью TailWind.
Tanstack Query — обеспечивает клиент-серверное взаимодействие и стейт менеджмент.
React Hop Form, Zott library — для валидации, форм, запросов, параметров и ответов сервера.
Состав команды:
Фронтенд-разработчик,
Бэкенд-разработчик,
Техлид,
Дизайнер,
Девопс,
Менеджер проекта
Инсайты, гипотезы, процесс создания и взаимодействия с заказчиком
ProSchool может быть легко адаптирован для других типов образовательных учреждений, таких как колледжи или государственные школы, с возможностью настройки под конкретные нужды.
У команды ProSchool есть планы на расширение функционала: например, статистика учеников, прогнозирование академических результатов, интеграция с другими образовательными сервисами.
Текущая доступность работы
Доступ закрыт, так как продукт для внутреннего пользования
Скриншоты