From 52c8aff459480b84355a6faeea015a33187799a9 Mon Sep 17 00:00:00 2001 From: Aleksey Razorvin <> Date: Sat, 21 Mar 2026 11:27:26 +0500 Subject: [PATCH] =?UTF-8?q?docs:=20close=20all=20open=20questions,=20updat?= =?UTF-8?q?e=20=D0=A2=D0=97=20to=20v1.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Director role = HR-manager (same permissions) - Editing assigned test creates new version - Question order is random per attempt - Navigation back configurable by test author - Notifications via MAX messenger (last sprint) - Export out of scope - Add step 003 log Co-Authored-By: Claude Sonnet 4.6 --- DOC/ТЗ.md | 34 ++++++----- DOC/ШАГИ/ШАГ_2026-03-21_003.md | 85 +++++++++++++++++++++++++++ 2 files changed, 104 insertions(+), 15 deletions(-) create mode 100644 DOC/ШАГИ/ШАГ_2026-03-21_003.md diff --git a/DOC/ТЗ.md b/DOC/ТЗ.md index 4794a4a..d7c955f 100644 --- a/DOC/ТЗ.md +++ b/DOC/ТЗ.md @@ -1,9 +1,9 @@ # Техническое задание ## Система тестирования сотрудников клиники -**Версия:** 1.0 +**Версия:** 1.1 **Дата:** 2026-03-21 -**Статус:** Черновик +**Статус:** Согласовано --- @@ -17,12 +17,10 @@ | Роль | Кто | Создаёт тесты | Назначает тесты | Видит результаты | |------|-----|:---:|:---:|:---:| -| **HR-менеджер** | Руководитель службы HR | ✅ | Всем сотрудникам клиники | Всех сотрудников | +| **HR-менеджер** | Руководитель службы HR, Директор клиники | ✅ | Всем сотрудникам клиники | Всех сотрудников | | **Руководитель подразделения** | Главный врач, рук. службы администраторов и др. | ✅ | Только своему подразделению | Только своего подразделения | | **Сотрудник** | Все остальные работники | ❌ | ❌ | Только свои | -> **Примечание:** Директор клиники получает права HR-менеджера либо выделяется в отдельную роль с доступом к отчётности по всей клинике — уточнить на этапе проектирования. - --- ## 3. Авторизация @@ -57,9 +55,13 @@ - Минимум 3 варианта ответа - Один или несколько правильных ответов (чекбокс или радио-кнопка в зависимости от типа) +**Настройки теста (задаются автором при создании):** +- Разрешить возврат к предыдущему вопросу: да / нет + **Правила работы с тестом:** - Автор может редактировать тест пока он не назначен никому -- После назначения тест редактированию не подлежит (или создаётся новая версия — уточнить) +- После назначения тест редактированию не подлежит — создаётся новая версия теста +- Все версии теста хранятся; результаты привязаны к конкретной версии - Тест можно деактивировать (скрыть из списка, не удалять) ### 4.3. Назначение теста @@ -80,8 +82,8 @@ HR-менеджер может назначить тест сотрудника - `Завершён` — сдал/не сдал - `Просрочен` — дедлайн прошёл, не сдан - Если задан таймер — отображается обратный отсчёт, по истечении тест завершается автоматически -- Порядок вопросов фиксированный (без случайного перемешивания — уточнить) -- Сотрудник не может вернуться к предыдущему вопросу (или может — уточнить) +- Порядок вопросов **случайный** при каждом прохождении +- Возможность вернуться к предыдущему вопросу — определяется настройкой теста ### 4.5. Результаты после завершения теста @@ -122,14 +124,15 @@ HR-менеджер видит трекер по всей клинике. --- -## 6. Открытые вопросы (требуют уточнения) +## 6. Уведомления + +Уведомления реализуются в одном из последних спринтов. -- [ ] Роль Директора клиники — отдельная роль или HR-менеджер? -- [ ] Можно ли редактировать тест после назначения (версионирование)? -- [ ] Порядок вопросов — фиксированный или случайный? -- [ ] Можно ли сотруднику вернуться к предыдущему вопросу в ходе теста? -- [ ] Нужны ли уведомления (email / внутри системы) о назначении теста и дедлайне? -- [ ] Нужен ли экспорт отчётов (Excel / PDF)? +- Канал: мессенджер **MAX** +- События для уведомления: + - Сотруднику назначен новый тест + - Приближается дедлайн сдачи теста +- Интеграция с MAX API — отдельная задача спринта --- @@ -139,3 +142,4 @@ HR-менеджер видит трекер по всей клинике. - Мобильное приложение - Вопросы с вложениями (изображения, видео) - Автоматическая генерация вопросов +- Экспорт отчётов в Excel / PDF diff --git a/DOC/ШАГИ/ШАГ_2026-03-21_003.md b/DOC/ШАГИ/ШАГ_2026-03-21_003.md new file mode 100644 index 0000000..c40155f --- /dev/null +++ b/DOC/ШАГИ/ШАГ_2026-03-21_003.md @@ -0,0 +1,85 @@ +# ШАГ 003 — Закрытие открытых вопросов ТЗ + +**Дата:** 2026-03-21 +**Контекст:** Мастер-класс по разработке системы тестирования сотрудников клиники. + +--- + +## Запрос + +> давай обсудим открытые вопросы сейчас + +--- + +## Ответ + +Проведён диалог с заказчиком по всем 6 открытым вопросам из ТЗ. Все решения приняты и внесены в `DOC/ТЗ.md` (версия 1.1, статус: Согласовано). + +--- + +## Принятые решения + +### 1. Роль Директора клиники +**Решение:** Директор получает права HR-менеджера — те же возможности, отдельная роль не нужна. + +В таблице ролей ТЗ: +``` +HR-менеджер | Руководитель службы HR, Директор клиники +``` + +--- + +### 2. Редактирование теста после назначения +**Решение:** Создаётся новая версия теста. + +- Назначенный тест заморожен — изменить его нельзя +- Для исправления создаётся новая версия +- Все версии хранятся в системе +- Результаты прохождений привязаны к конкретной версии теста + +Это важно для целостности данных: нельзя изменить вопросы уже после того, как кто-то прошёл тест. + +--- + +### 3. Порядок вопросов +**Решение:** Случайный при каждом прохождении. + +Это усложняет списывание — два сотрудника, проходящих тест одновременно, видят вопросы в разном порядке. + +--- + +### 4. Возврат к предыдущему вопросу +**Решение:** Настраивается автором теста при создании. + +Параметр добавлен в настройки теста: `Разрешить возврат к предыдущему вопросу: да / нет`. +- Для строгих тестов (экзаменационный формат) — выключить +- Для обучающих тестов — можно включить + +--- + +### 5. Уведомления +**Решение:** Нужны, канал — мессенджер **MAX**. + +- Уведомление о назначении нового теста +- Уведомление о приближении дедлайна +- **Реализуем в одном из последних спринтов** — интеграция с MAX API отдельная задача + +> **Для джуниора:** MAX — корпоративный мессенджер. Интеграция потребует изучения API MAX и реализации отдельного сервиса уведомлений. + +--- + +### 6. Экспорт отчётов +**Решение:** Не нужен в данной версии, вынесен за scope. + +--- + +## Итог + +ТЗ обновлено до версии 1.1, статус изменён на **Согласовано**. Открытых вопросов не осталось. + +### Следующие шаги + +- [x] Написать ТЗ +- [x] Закрыть открытые вопросы ТЗ +- [ ] Выбрать технологический стек +- [ ] Составить план спринтов