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

Сценарии LMS

Зачем нужно

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

1. Активация enrollment по entitlement

  1. Получено crm.entitlement.activated с targetDomain = lms.
  2. LMS создаёт или обновляет lms_enrollment для пользователя.
  3. По scope.courseRef открывается курс, по scope.groupId — членство в группе.
  4. Ученик видит курс в кабинете.

2. Онбординг ученика

  1. Ученик входит первый раз.
  2. Запускается lms_onboarding_flow по правилам (роль, возраст, направление).
  3. Шаги: профиль ребёнка, цель, выбор уровня, диагностика (опционально).
  4. По завершении — кабинет с курсом.

3. Прохождение урока

  1. Ученик открывает урок.
  2. Контент-блоки рендерятся последовательно.
  3. Выполняются активности; попытки сохраняются как lms_activity_attempt.
  4. На активностях с задачами task-bank — попытка отправляется в task-bank через problem_usage.
  5. По выполнению — обновляется lms_progress_snapshot, lesson_progress.
  6. Начисляется xp_event, проверяются условия badge_award и streak.

4. Сдача домашнего задания

  1. Преподаватель назначает lms_homework с дедлайном.
  2. Ученик открывает задание, выполняет активности или прикрепляет файлы.
  3. lms_submission отправляется на проверку.
  4. Преподаватель пишет lms_feedback и оценку.
  5. Событие lms.homework.graded уходит в management.

5. Тетрадь и проект

  1. Ученик ведёт lms_workbook в курсе (свободные блоки заметок).
  2. По проекту — lms_project с этапами и сабмишнами.
  3. Преподаватель видит работу в кабинете преподавателя.

6. Чат с преподавателем

  1. Ученик открывает чат курса/занятия — lms_chat_thread.
  2. Сообщения lms_chat_message сохраняются.
  3. Уведомления уходят через identity transports.
  4. Чат привязан к группе или к индивидуальному назначению.

7. Запись на занятие и календарь

  1. Ученик видит свободные lms_booking_slot.
  2. Записывается на индивидуальное занятие.
  3. Создаётся session со статусом booked.
  4. По проведению — преподаватель отмечает attendance, статус completed.
  5. LMS публикует lms.entitlement.consumed для CRM.

8. Групповое занятие

  1. По schedule_rule генерируются session группы.
  2. Преподаватель ведёт занятие.
  3. Отмечает attendance для каждого ученика.
  4. Привязывает занятие к теме (session_topic_link) и/или уроку (session_lesson_link).
  5. По завершении — session в completed, событие lms.session.completed.
  6. Отдельные attendance-факты идут в management и в CRM (для расчёта выплат и списания entitlements).

9. Дорожная карта

  1. Ученик открывает дорожную карту своей программы.
  2. Видит модули, темы, статусы (topic_progress).
  3. Закрытые темы — topic_completion. Углубление — topic_enrichment.
  4. Темы могут закрываться через несколько topic_pathway (LMS-курс, занятие, диагностика, задачи).
  5. Прогресс по теме отделён от прогресса по уроку и продукту.

10. Преподаватель работает в Learning Workspace

  1. Преподаватель входит в teacher mode.
  2. Выбирает организацию из identity context.
  3. Видит свои Learning Groups, participants, assignments и разрешённые LMS teacher scopes.
  4. Создаёт Learning Group как общий список “мои ученики/мои группы”.
  5. Приглашает учеников и родителей через identity-backed invite.
  6. Назначает группе курс, урок, тренажёр, разбор или task-bank set.
  7. Открывает progress по группе только для тех enrollments/course/node, где есть lms.progress.read и active teacher assignment.

Learning Group не равна live group/session. Live group используется для расписания занятия, Learning Group — для рабочего списка преподавателя.

11. Преподаватель ведёт live-занятие

  1. Преподаватель видит live sessions и расписание.
  2. Открывает занятие, готовит контент.
  3. Ведёт занятие, отмечает посещаемость и привязки.
  4. Проверяет домашки и проекты.
  5. Видит progress только по разрешённым учебным scopes.

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

  1. Competitions публикует прошедший комплект или разбор как training material.
  2. Преподаватель назначает материал Learning Group.
  3. Ученик открывает материал в LMS/learning контуре.
  4. Тренировочная попытка сохраняется как LMS activity/task-bank attempt с contextDomain lms.
  5. Результат тренировки создаёт LMS evidence/progress, если так задано rule.
  6. Competition submission/result/ranking не меняются.

13. Геймификация

  1. Ученик выполняет действия — начисляется XP и серии.
  2. По правилам бейджей — выдаётся badge_award.
  3. Лидерборды — read-only представления, без подмены completion.
  4. Геймификация настраивается через правила в admin.

14. Отработка пропуска

  1. Ученик пропустил занятие.
  2. Преподаватель или admin создают makeup_assignment.
  3. Назначается компенсирующее занятие или активность.
  4. По выполнению — компенсация засчитывается.

Связанные документы