Перейти к содержанию

D04 · Руководство по работе с доменом

Как определить, что изменение относится к D04

D04 — что происходит в учебном процессе. D05 — с кем (физлицо в статусе обучающегося).

Ситуация Домен
Преподаватель проводит занятие и фиксирует присутствие D04
Студент получает оценку на экзамене D04
Студент уходит в академический отпуск D05 (приказ) + D04 (таймер задолженности останавливается)
Студент отчисляется за неуспеваемость D05 (приказ) — D04 поставляет основание
Кафедра выставляет ведомость D04
Ректорат издаёт приказ о выговоре D05 (факт) — D04 поставляет триггер
Студент записан в журнал практики D04
Студент меняет группу D05
Оценка попала в зачётку D04 (запись) через D04 (ведомость); обложка зачётки — D05

Центральная абстракция: Учебное событие

Всё начинается с события — датированного факта учебного процесса. Событие порождает для каждого участника пучок обязательств (что должно быть сдано/зачтено). Обязательства закрываются записями. Задолженность — это обязательство уровня дисциплины, для которого нет положительной записи после даты сессии.

Событие → Обязательства (1 на участника × форму контроля)
         Записи (первичная / отработка / пересдача / сторно)
         Задолженность = вычисляется (не хранится)

Три частных случая: - Занятие — пара в сетке расписания; способ (очно/онлайн/гибрид) — атрибут, не класс. - День практики — вне сетки; свидетель от базы, валидирует кафедра (критичное разделение: нельзя допустить подлог через самовалидацию). - Аттестационное событие — закрывает 1..N дисциплин; для профмодуля СПО — несколько МДК одним событием.

Состав события: черновое → факт через буфер

Состав события — это факт присутствия, не проекция группы. Это значит: - До истечения технологического буфера (например, 3 дня) состав можно корректировать. - После буфера состав затвердел: изменение — только сторно документом. - Перевод студента в другую группу не меняет прошлое присутствие.

Размер буфера — параметр учётной политики.

Типовые ошибки

Прямая правка записи вместо сторно. Нарушает неизменяемость факта. Аудитор не сможет восстановить историю. Всегда: сторно исходной записи + новая запись с правильным значением.

БРС как ядро модели. БРС — это одна из политик оценивания, не ядро. Политику можно поменять (другой весовой алгоритм, «зачёт/незачёт» без рейтинга), не трогая механику событий и обязательств.

Задолженность как объект, а не вычисляемое состояние. Задолженность не хранится — она вычисляется: есть ли обязательство уровня дисциплины без положительной записи после даты сессии. Не создавайте отдельную таблицу «долгов».

Автоматическое отчисление по истечении срока задолженности. [Просрочена] требует доказанной неявки на реально предложенный слот. Срок истёк, но слот не предлагался → задолженность НЕ переходит в [Просрочена]. Отчисление — документ, не автомат.

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

Журнал использован как источник КЦП-финансирования. Для бюджетников источник оказанного объёма — контингент (D05) + ведомости, не журнал. Журнал → D09 только для расчёта возврата платных студентов.

Форма контроля хранится в D04. Форма контроля как норма (уровень, три оси, вес) живёт в D06 §1.11. D04 хранит только факты её закрытия (5 фактов) и ссылку на норму. Не заводите определения форм внутри D04.

Пересдача формы = отработка пропуска. Это два разных механизма (см. раздел «Разведение» ниже). Пересдача — авто, из отрицательной оценки; отработка — approval-based, из пропуска события.

Педагогический бонус в пакете. Педагогический бонус — вне пакета и вне ФОС. Педагог даёт его непосредственно студенту через отдельный факт. Не смешивайте с формами контроля пакета.

Два педагога на событии. MVP-принцип «один главный педагог на событии» (Дидактикон §2.12). Разделение runtime-ответственности между двумя педагогами — вне MVP.

Таймер задолженности

Срок = (Дата возникновения + 1 год) − Периоды-исключения

Периоды-исключения (академотпуск, болезнь, БиР) — факты D05, D04 берёт снимок на дату возникновения задолженности. При новом периоде-исключении таймер пересчитывается.

Потолок — 1 год (ч. 5 ст. 58 ФЗ-273, ⚠ сверить). Организация может установить короче.

Что делать при ошибке в составе события после буфера

  1. Создать сторно документом-основанием (приказ или служебная записка с датой).
  2. Сторно ссылается ровно на одну запись.
  3. Создать новую запись с правильным значением.
  4. Основание хранится — нужно для аудита.

Пять фактов формы контроля

Закрытие одной попытки формы контроля разбито на 5 неизменяемых фактов (из Дидактикон Блок III §13):

assignment → launch → attempt → submission → evaluation
  • assignment — форма назначена конкретному студенту (обычно педагогом, но может быть от pickup в pre_event-бонусе)
  • launch — форма запущена (обычно педагогом на событии, для post_event-бонусов — студентом)
  • attempt — студент приступил (с фиксацией fos_snapshot_id — какой ФОС был в этот момент)
  • submission — студент сдал (текст / файл / устно / комплексно)
  • evaluation — оценка (grade_is_positive — бинарное принятие)

Каждый факт — отдельная запись. Отрицательная evaluationновое обязательство «пересдача формы» → новые 5 фактов на новой попытке. Никакого цикла «доработай ту же попытку».

Для pre_event-бонусов добавляется первый факт pickup (студент «взял бонус»).

Разведение: пересдача формы vs отработка пропуска

Два разных механизма (Дидактикон Блок III §8):

Механизм Триггер Approval Что порождает
Пересдача формы Отрицательная evaluation Нет (автоматически) Новые 5 фактов на новой попытке
Отработка пропуска Студент пропустил само событие Да (педагог / куратор подтверждает) Отдельный approval-based флоу

Пересдача — целиком в D04, без внешнего одобрения. Отрицательная оценка → система сама создаёт обязательство пересдачи.

Отработка — процесс с участием куратора: студент запрашивает слот, педагог / куратор подтверждает, назначается новый слот в D14, закрывается обязательство присутствия. Не порождает 5 фактов формы контроля.

Не путать эти два механизма при обсуждении с методистами: они оба звучат по-русски похоже на «отработать/пересдать», но живут в разных процессах.

Педагогический бонус

Отдельный механизм (Дидактикон Блок III §14) — вне пакета и вне ФОС. Педагог в любой момент даёт студенту баллы с указанием причины. Учитывается в БРС наравне с пакетными формами.

  • Прозрачен студенту — он видит бонус и причину.
  • Не порождает обязательств у студента — просто добавляет баллы.
  • Лимит на семестр — параметр учётной политики подразделения.

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

Assignment group — вариативные формы

Группа взаимозаменяемых вариантов одной формы контроля (Дидактикон §11.5). Пример: контрольная работа с 4 вариантами; студент получает один. Инвариант: у одного студента в рамках одной группы может быть ровно одно активное обязательство — назначение второго варианта автоматически стирает первое.

Типы формул оценивания

БРС — дефолт для аудиторных дисциплин, а не единственный способ. Тип задаётся учётной политикой подразделения:

Тип формулы Где применяется
Взвешенная 70/30 (текущий + экзамен) Аудиторная дисциплина — дефолт
Защита 0/100 Курсовая, НИР, проект, практика
Pass / fail Факультативы, некоторые практики
Накопительная Дисциплины без выраженной сессии

Смена типа формулы не трогает механику событий и обязательств — только политику агрегации записей.

Жизненный цикл закрытия модуля

Закрытие модуля — рубежное событие перед сессией. Владелец — кафедра дисциплины.

  1. Кафедра закрывает модуль → рейтинг текущего контроля зафиксирован снимком с датой.
  2. Снимок несёт: рейтинг = R, список незакрытых обязательных форм, ответственный.
  3. Сторно нижележащих записей не дёргают снимок автоматически — нужен отдельный корректирующий документ кафедры.
  4. Обучающийся оповещён о фактическом рейтинге до сессии.

До закрытия модуля рейтинг — живой агрегат (пересчитывается при каждой записи). После — снимок-факт, меняется только документом.

Три звена: журнал → ведомость → зачётка

Три звена с разной природой факта:

ЖУРНАЛ             ВЕДОМОСТЬ               ЗАЧЁТКА
текущий контроль   итоговый контроль       витрина положительных исходов
весь семестр       событие сессии          (представление, не источник)
→ рейтинг (≤70)    закрывает траекторию    → приложение к диплому
  • Журнал и ведомость — разные факты, не одно звено в двух видах.
  • Зачётка ничем не владеет: показывает только положительные исходы ведомостей.
  • Обложка зачётки (номер, статус) — D05. Записи в ней — отражение D04.

Машина состояний задолженности

[Возникла]  (отрицательная запись ведомости, дата сессии прошла)
  ├─ предложен слот → попытка 1 (обычная пересдача)
  │     ├─ положит. запись → [Ликвидирована]
  │     ├─ отрицат.        → попытка 2 (комиссионная)
  │     │     ├─ положит.          → [Ликвидирована]
  │     │     └─ отрицат./неявка  → [Исчерпана]
  │     └─ неявка/отказ зафиксированы → засчитывается как попытка
  ├─ срок истёк, попытки предлагались, есть факт неявки → [Просрочена]
  └─ срок истёк, но вуз НЕ предложил слот → задолженность остаётся открытой
        (организационный долг ОО; отчисление незаконно)

[Исчерпана] / [Просрочена] → основание для отчисления (документ, не автомат)

Ключевой инвариант: переход в [Просрочена] требует доказанной вины студента — зафиксированная неявка или отказ на реально предложенный слот. Истечение срока при неисполнении ОО обязанности предложить попытку — не основание для отчисления.

Учётная политика

Учётная политика — версионируемая сущность с периодом действия, привязанная к подразделению. Фиксируется на период и не изменяется в ходе семестра — иначе рейтинг начнёт пересчитываться «задним числом».

Настраивается политикой Остаётся жёстким инвариантом
Момент закрытия модуля Закрытие = снимок с владельцем и датой
Тип формулы оценивания + веса Факт неизменяем; коррекция — документом
Порог неуважительных пропусков до выговора Срок задолженности — не более 1 года
Срок закрытия дисциплинарного Попыток — не более 2; вторая комиссионная
Размер буфера затвердевания состава

Периодичность контрольных действий

Действие Когда
Проверка не закрытых обязательств модуля Перед закрытием модуля (кафедра)
Закрытие модуля (снимок рейтинга) За N дней до сессии (учётная политика)
Формирование ведомостей сессии По учебному календарю
Подготовка графика пересдач До начала ликвидации задолженностей
Контроль истекающих таймеров задолженности Ежемесячно (УМУ)
Передача данных оказанного объёма в D09 По запросу / при отчислении

Два слоя понятия «событие»

В смежных концепциях и системах слово «событие» используется в двух разных смыслах. Не путать:

Слой Что называется «событием» Где описано
Академический (D04) Датированный факт учебного процесса: занятие, день практики, аттестация. Порождает обязательства. §1.1 entities.md
Административно-учётный Изменение в системе, порождённое документом-основанием (приказ, заявление, справка). Меняет состояние обучающегося. D05, D09 — сторона документооборота

Правило: в D04 «событие» всегда означает учебное событие (академический слой). Административные документные события описываются через понятие «документ-основание» и живут преимущественно в D05 (жизненный цикл обучающегося).