Разработка платформы для проведения экзаменов и тестирования
Экзаменационная платформа — специализированное приложение с жёсткими требованиями к честности (прокторинг), надёжности (нельзя потерять результат) и безопасности (предотвращение читерства). В отличие от обычных квизов в LMS, экзамены имеют: временные ограничения, строгий контроль среды, автоматическую оценку с немедленным результатом или ручную проверку.
Типы экзаменов
| Тип | Характеристики |
|---|---|
| Автопроверяемый | Тесты, задачи с вариантами, краткие ответы |
| С ручной проверкой | Эссе, coding tasks, кейсы |
| Адаптивный (CAT) | Сложность подстраивается под ответы испытуемого |
| Прокторируемый | С наблюдателем (online или offline) |
| Open-book | Допускается использование материалов |
Античит-меры
Режим киоска (kiosk mode): fullscreen, блокировка переключения вкладок, запрет копирования. Реализация через document.onfullscreenchange + детектирование visibilitychange:
document.addEventListener('visibilitychange', () => {
if (document.hidden && examInProgress) {
recordViolation('tab_switch', { timestamp: Date.now() });
}
});
Рандомизация: порядок вопросов и вариантов ответов перемешивается для каждого испытуемого — shuffle_seed генерируется при старте и сохраняется.
Банк вопросов: для каждого испытуемого выбирается случайная выборка из большого банка, что делает идентичные варианты маловероятными.
Лимит времени: таймер хранится на сервере, не в браузере. Клиент синхронизирует каждые 30 секунд. При истечении времени — автоматическая отправка.
Онлайн-прокторинг
Два уровня:
- AI-прокторинг: анализ видео с веб-камеры на отсутствие лица, посторонних людей, нескольких мониторов. Провайдеры: Proctorio, ExamSoft, Examity, либо self-hosted с MediaPipe/OpenCV.
- Живой прокторинг: наблюдатель смотрит за испытуемым в реальном времени через WebRTC.
Данные с веб-камеры записываются, не анализируются в реальном времени (снижение нагрузки), анализ — постфактум.
Адаптивное тестирование (CAT)
Computer Adaptive Testing подбирает вопросы на основе оцениваемого уровня:
- Начинаем со среднего вопроса (θ = 0)
- Правильный ответ → следующий вопрос сложнее
- Неправильный → проще
- Алгоритм IRT (Item Response Theory) оценивает знание (θ) после каждого ответа
Реализация: каждый вопрос в банке имеет параметры сложности (b), дифференцирующую способность (a), вероятность угадывания (c). Библиотека catirt (R) или самописная реализация модели 3PL.
Надёжность и восстановление
Экзамен нельзя потерять:
- Автосохранение текущих ответов каждые 30 секунд (POST на сервер)
- При обрыве соединения — продолжение после переподключения с сохранённого состояния
- При технической проблеме — процедура повторного допуска (reopening exam session)
Ответы хранятся в exam_answers с submitted_at, отдельно от итоговой оценки.
Генерация сертификатов и верификация
После успешной сдачи генерируется сертификат с уникальным UUID. Страница верификации (/verify/{uuid}) доступна публично — работодатель может проверить подлинность.
Для государственных экзаменов: интеграция с Госуслугами или Реестром квалификаций.
Сроки
Платформа с банком вопросов, таймером, автопроверкой, базовыми античит-мерами и сертификатами: 3–4 месяца. С прокторингом, адаптивными тестами, ручной проверкой эссе и интеграциями: 5–8 месяцев.







