Перейти к основному содержимому

Спецификация экранов LMS

Зачем нужно

Документ описывает, какие экраны нужны LMS, какие данные они показывают, какие действия поддерживают и какие состояния обязаны обработать.

Общие UX-правила

  • Ученик всегда должен понимать следующий учебный шаг.
  • Прогресс объясняется через завершённые блоки, активности и feedback, а не только процентом.
  • Ошибки доступа должны объяснять состояние: нет enrollment, enrollment paused, доступ revoked, урок закрыт unlock rule.
  • Черновики и отправленные работы должны визуально различаться.
  • Преподавательский кабинет должен быть оптимизирован под очередь проверки.
  • Преподавательский режим начинается с выбора организации и показывает только разрешённые Learning Workspace подслои.
  • Learning Group и live session/group должны визуально различаться.
  • Admin screens должны показывать source и audit для всех спорных состояний.

Кабинет ученика

Назначение

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

Данные

  • active enrollments;
  • course title и версия;
  • progress summary;
  • next lesson;
  • pending submissions;
  • returned works;
  • upcoming bookings;
  • unread chat messages.

Действия

  • открыть курс;
  • продолжить урок;
  • перейти к домашнему заданию;
  • открыть тетрадь;
  • открыть проект;
  • записаться на слот;
  • открыть чат.

Состояния

  • нет курсов;
  • курс доступен, но не начат;
  • курс на паузе;
  • доступ отозван;
  • есть работа на доработку;
  • есть overdue activity.

Страница курса

Назначение

Показать дерево курса и progress по modules/lessons.

Данные

  • course metadata;
  • course version;
  • modules;
  • lessons;
  • lock/unlock state;
  • lesson progress;
  • required/optional markers;
  • teacher or support contact, если доступно.

Действия

  • открыть доступный урок;
  • раскрыть module;
  • посмотреть completion requirements;
  • перейти к проекту или тетради;
  • перейти в календарь курса.

Состояния

  • часть уроков закрыта unlock rule;
  • published version retired, но ученик продолжает обучение;
  • progress пересчитывается;
  • course completed.

Страница урока

Назначение

Основной экран прохождения учебного материала.

Данные

  • lesson title;
  • content blocks;
  • required markers;
  • activity state;
  • attempts;
  • submission status;
  • feedback;
  • navigation prev/next;
  • progress within lesson.

Действия

  • отметить просмотр блока;
  • начать attempt;
  • отправить answer;
  • сохранить draft;
  • отправить submission;
  • открыть feedback;
  • перейти к task-bank interactive;
  • открыть workbook prompt.

Состояния

  • lesson locked;
  • enrollment inactive;
  • attempt started;
  • attempt submitted;
  • checking;
  • accepted;
  • returned;
  • teacher review required;
  • offline/autosave error.

Экран сдачи работы

Назначение

Позволить ученику подготовить, сохранить и отправить работу.

Данные

  • source activity;
  • instructions;
  • draft payload;
  • attachments;
  • previous attempts;
  • rubric, если показывается ученику;
  • submission status;
  • feedback history.

Действия

  • сохранить черновик;
  • загрузить вложение;
  • отправить работу;
  • открыть returned feedback;
  • повторно отправить после reopen.

Состояния

  • draft;
  • submitted;
  • in review;
  • returned;
  • accepted;
  • upload failed;
  • stale draft revision.

Прогресс ученика

Назначение

Объяснить ученику и родителю состояние обучения.

Данные

  • course progress;
  • module progress;
  • lesson progress;
  • activity completion;
  • scores;
  • accepted/returned submissions;
  • evidence timeline;
  • teacher feedback summary.

Действия

  • открыть lesson;
  • открыть work details;
  • скачать разрешённый отчёт;
  • перейти к повторению.

Состояния

  • нет активности;
  • progress imported from external LMS;
  • progress pending recalculation;
  • needs review;
  • completed.

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

Назначение

Дать преподавателю быстрый доступ к своим ученикам, работам, тетрадям, проектам и чатам.

Данные

  • выбранная организация;
  • доступные организации из identity context;
  • Learning Groups;
  • active assignments;
  • student list;
  • review queue;
  • overdue submissions;
  • returned works;
  • upcoming bookings;
  • unread chats;
  • progress alerts.

Действия

  • выбрать организацию;
  • открыть Learning Group;
  • создать рабочую группу;
  • пригласить ученика или родителя;
  • назначить курс, урок, тренажёр, разбор или task-bank set;
  • открыть ученика;
  • проверить работу;
  • оставить feedback;
  • вернуть на доработку;
  • принять работу;
  • открыть тетрадь;
  • открыть проект;
  • ответить в чате.

Состояния

  • нет выбранной организации;
  • нет доступа к organization context;
  • Learning Group пуста;
  • нет assignments;
  • очередь пуста;
  • assignment ended;
  • student access revoked;
  • conflict: другой преподаватель уже проверил.

Learning Workspace

Назначение

Дать преподавателю общий список “мои ученики/мои группы” и рабочие назначения в выбранной организации.

Данные

  • selected organization;
  • Learning Groups;
  • participants;
  • invite status;
  • assignments;
  • target type: course, lesson, trainer, competition training, competition debrief, task-bank set;
  • progress availability per participant.

Действия

  • создать Learning Group;
  • переименовать или архивировать группу;
  • добавить известного ученика;
  • отправить invite ученику или родителю;
  • отменить invite;
  • выбрать участников;
  • создать assignment;
  • отменить assignment;
  • открыть group progress, если есть права.

Состояния

  • organization не выбрана;
  • organization membership потерян;
  • group archived;
  • invite expired;
  • participant removed;
  • assignment cancelled;
  • progress hidden: нет teacher assignment;
  • target недоступен или retired.

Олимпиадный тренажёр и разбор

Назначение

Показать опубликованный тренировочный материал или разбор олимпиады в LMS/learning контуре.

Данные

  • source competition event/season/tour reference;
  • training/debrief title;
  • task-bank references;
  • попытки ученика в учебном контексте;
  • feedback или auto-check result;
  • LMS evidence/progress impact;
  • предупреждение, что это не соревновательный результат.

Действия

  • открыть разбор;
  • начать тренировочную попытку;
  • отправить ответ;
  • посмотреть учебный feedback;
  • вернуться к назначению Learning Group.

Состояния

  • материал ещё не опубликован для тренировки;
  • task-bank reference недоступен;
  • attempt checking;
  • attempt returned;
  • attempt accepted;
  • competition result недоступен из этого экрана.

Экран проверки работы

Назначение

Позволить преподавателю принять решение по submission.

Данные

  • student summary;
  • course/lesson context;
  • submission payload;
  • attachments;
  • attempt history;
  • task-bank result, если есть;
  • rubric;
  • previous feedback;
  • teacher notes.

Действия

  • поставить score;
  • заполнить rubric;
  • написать visible comment;
  • оставить internal note;
  • принять;
  • вернуть;
  • открыть доработку;
  • override auto-check with reason.

Состояния

  • submission already checked;
  • stale review;
  • attachment unavailable;
  • student no longer assigned;
  • score changed after publish.

Редактор курса

Назначение

Создавать и публиковать курсы, версии, дерево и content blocks.

Данные

  • course metadata;
  • draft version;
  • tree;
  • blocks;
  • validation errors;
  • task-bank references;
  • publication checklist;
  • content hash.

Действия

  • создать draft;
  • добавить node;
  • переместить node;
  • добавить block;
  • привязать task-bank problem;
  • preview as student;
  • отправить на review;
  • publish;
  • retire version.

Состояния

  • нет draft;
  • draft has validation errors;
  • broken task-bank reference;
  • review pending;
  • published immutable;
  • concurrent edit conflict.

Календарь и запись

Назначение

Показать учебные слоты и позволить ученику или родителю записаться.

Данные

  • slots;
  • capacity;
  • teacher;
  • course context;
  • timezone;
  • booking status;
  • cancellation policy;
  • conflicts.

Действия

  • удержать слот;
  • записаться;
  • отменить;
  • перенести;
  • добавить в календарь;
  • открыть связанный lesson.

Состояния

  • мест нет;
  • hold expired;
  • slot cancelled;
  • schedule conflict;
  • entitlement missing;
  • timezone changed.

Тетрадь

Назначение

Дать ученику персональную рабочую область с revision history и комментариями преподавателя.

Данные

  • workbook pages;
  • latest revision;
  • autosave status;
  • submitted revision;
  • comments;
  • attachments;
  • linked lesson/activity.

Действия

  • редактировать;
  • сохранить;
  • отправить;
  • приложить файл;
  • посмотреть историю;
  • открыть комментарий;
  • экспортировать, если разрешено.

Проект

Назначение

Вести долгоживущий учебный проект внутри курса.

Данные

  • project overview;
  • milestones;
  • artifacts;
  • feedback;
  • due dates;
  • completion impact.

Действия

  • начать milestone;
  • отправить artifact;
  • запросить feedback;
  • посмотреть историю;
  • перейти к связанному lesson.

Учебный чат

Назначение

Обеспечить коммуникацию ученика, родителя и преподавателя в учебном контексте.

Данные

  • thread context;
  • participants;
  • messages;
  • attachments;
  • read receipts;
  • status;
  • moderation markers.

Действия

  • отправить сообщение;
  • приложить файл;
  • отметить прочитано;
  • перейти к уроку;
  • закрыть thread;
  • скрыть сообщение при moderation permission.

Состояния

  • thread open;
  • readonly;
  • closed;
  • participant removed;
  • attachment blocked;
  • message hidden.

Admin LMS

Назначение

Операционная поддержка LMS: enrollments, imports, progress recalculation, audit и sync.

Данные

  • enrollment search;
  • external sync records;
  • progress snapshots;
  • audit logs;
  • broken references;
  • event delivery status.

Действия

  • создать manual enrollment;
  • pause/resume/revoke;
  • запустить import;
  • пересчитать progress;
  • посмотреть audit;
  • resolve sync conflict;
  • назначить преподавателя.

Состояния

  • sync failed;
  • duplicate external record;
  • progress conflict;
  • webhook replay;
  • missing permission reason.

Accessibility and responsiveness

  • Все ключевые действия доступны с клавиатуры.
  • Состояния проверки, ошибки и успеха должны быть озвучены screen reader.
  • Таблицы teacher/admin screens должны поддерживать compact mobile fallback.
  • Видео и embed blocks должны иметь текстовый fallback или описание.
  • Цвет не должен быть единственным способом отличить accepted/returned/locked.

Минимальный MVP-набор экранов

Для первого запуска обязательны:

  • кабинет ученика;
  • страница курса;
  • страница урока;
  • отправка работы;
  • progress screen;
  • кабинет преподавателя;
  • Learning Workspace;
  • проверка работы;
  • редактор курса;
  • admin enrollments;
  • базовый учебный чат или явное отключение чата из MVP.