Система веб-тестирования, позволяющая администраторам, преподавателям и студентам управлять процессом проведения тестирования. Платформа обеспечивает создание организаций и учебных групп, добавление студентов и преподавателей, назначение тестов и ведение статистики.
- Автоматизация процесса тестирования знаний для студентов.
- Облегчение взаимодействия между преподавателями и студентами через организационную структуру.
- Снижение трудозатрат на создание и администрирование тестов.
- Улучшение контроля над результатами тестирования и успеваемостью студентов.
- Обеспечение удобного интерфейса для создания организаций, преподавателей и студентов.
- Разработка механизма создания тестов на основе различных тем и вопросов.
- Внедрение персонализированных приглашений для регистрации студентов.
- Возможность ограничения количества попыток тестирования.
- Ведение статистики и истории прохождения тестов.
-
Администратор:
- Добавление организаций.
- Управление преподавателями и студентами.
-
Преподаватель:
- Добавление студентов в учебные группы через именные пригласительные ссылки.
- Создание тем тестов (разделов).
- Добавление и удаление вопросов для каждой темы.
- Назначение тестов учебным группам студентов с возможностью задания количества попыток.
- Просмотр статистики по каждому тесту.
-
Студент:
- Регистрация через именную пригласительную ссылку (ФИО и учебная группа).
- Введение личных данных (почта, пароль) для завершения регистрации.
- Прохождение тестов по доступным темам.
- Просмотр личной статистики по каждому тесту (результаты и попытки).
-
Тестирование:
- Вопросы для каждого теста выбираются случайным образом из банка вопросов по заданной теме.
- Преподаватель устанавливает количество вопросов и попыток для каждого теста.
- Хранение данных о каждой попытке прохождении теста (время, результат).
Use Case 1: Добавление незарегистрированного студента в организацию
- Создать именную ссылку – преподаватель создаёт персонализированную ссылку для студента.
- Форма введения данных студента (ФИО и учебная группа) – преподаватель вводит данные студента, такие как его имя, фамилию и учебную группу.
- Ввод данных студента – данные студента отправляются в систему.
- Добавление студента в список со статусом "неактивированный" – система добавляет студента в список, присваивая ему статус "неактивированный".
- Персональная ссылка для регистрации студента – система генерирует ссылку для регистрации студента.
- Передача ссылки лично – преподаватель передаёт студенту ссылку.
- Переход по ссылке – студент переходит по полученной ссылке.
- Форма введения почты и пароля – студент заполняет форму с электронной почтой и паролем для регистрации.
- Ввод почты и пароля – данные отправляются в систему.
- Смена статуса студента на "активированный" – система изменяет статус студента на "активированный".
- Уведомление об успехе – система уведомляет об успешной регистрации.
Use Case 2: Добавление зарегистрированного студента в организацию
- Создать именную ссылку – преподаватель создаёт персонализированную ссылку для студента.
- Форма введения данных студента (ФИО и учебная группа) – преподаватель вводит имя студента, его фамилию и учебную группу.
- Ввод данных студента – данные отправляются в систему.
- Добавление студента в список со статусом "неактивированный" – система добавляет студента в список, присваивая статус "неактивированный".
- Персональная ссылка для регистрации студента – система генерирует персонализированную ссылку для регистрации.
- Передача ссылки лично – преподаватель передаёт студенту сгенерированную ссылку.
- Переход по ссылке – студент переходит по полученной ссылке.
- Смена статуса студента на "активированный" – после перехода система меняет статус студента на "активированный".
- Уведомление об успехе – система уведомляет об успешной активации студента.
Use Case 3: Создание новой темы преподавателем
- Создать новую тему – преподаватель инициирует процесс создания новой темы.
- Форма заполнения темы (название и организация) – преподаватель вводит название темы и информацию об организации.
- Ввод данных темы – введённые данные отправляются в систему.
- Сообщение об успешном создании темы – система уведомляет преподавателя об успешном создании темы.
Шаги 5-8 выполняются многократно:
- Добавление вопроса – преподаватель начинает добавление вопроса к созданной теме.
- Форма ввода данных для вопроса (формулировка и ответы) – преподаватель вводит формулировку вопроса и варианты ответов.
- Ввод данных вопроса – введённые данные отправляются в систему.
- Сообщение об успешном добавлении вопроса – система уведомляет об успешном добавлении вопроса.
Use Case 4: Создание теста преподавателем
- Создать новый тест – преподаватель инициирует создание нового теста в системе.
- Форма заполнения теста – преподаватель заполняет форму с основными данными для теста, такими как: тема теста, количество вопросов, количество попыток прохождения, учебная группа студентов, для которой назначен тест.
- Ввод данных теста – введённые данные отправляются в систему для обработки.
- Назначение теста всем студентам учебной группы – система автоматически назначает тест всем студентам, принадлежащим указанной учебной группе.
- Сообщение об успешном создании теста – система уведомляет преподавателя об успешном создании теста и его назначении учебной группе студентов.
Use Case 5: Просмотр статистики по тесту
- Выбор вкладки "Статистика тестов" – преподаватель выбирает вкладку, чтобы перейти к статистике по своим тестам.
- Перенаправление на страницу со списком тестов преподавателя – система автоматически перенаправляет преподавателя на страницу, где отображён список всех созданных им тестов.
- Выбор теста – преподаватель выбирает конкретный тест, по которому хочет получить статистику.
- Предоставление статистики по тесту – система выводит статистику по выбранному тесту, включая: cредний результат студентов, cреднее время прохождения теста, cписок всех попыток прохождения теста студентами
Use Case 6: Прохождение теста студентом
- Выбор опции "Активные тесты" – студент выбирает пункт меню, чтобы перейти к списку тестов, которые доступны для прохождения.
- Список тестов, доступных для прохождения – система отображает список активных тестов, которые доступны для студента.
- Выбор определённого теста для прохождения – студент выбирает нужный тест из списка.
- Перенаправление на страницу теста – система перенаправляет студента на страницу выбранного теста.
Шаги 5-6 выполняются многократно: 5. Выбор ответа(ов) на вопрос теста – студент отвечает на текущий вопрос. 6. Следующий вопрос теста – система переходит к следующему вопросу теста.
- Завершение теста – студент завершает прохождение теста.
- Отображение результата пройденного теста – система выводит результат прохождения теста
Use Case 7: Добавление организации Администратором
- Выбор опции "Добавить организацию" – администратор переходит в раздел управления организациями и выбирает опцию для добавления новой организации.
- Форма для добавления организации – система отображает форму, в которой администратор вводит данные о новой организации, такие как: название организации, контактные данные (адрес, телефон, электронная почта), ответственное лицо
- Ввод данных организации – администратор заполняет необходимые поля и отправляет данные.
- Добавление организации в систему – система проверяет введённые данные и добавляет новую организацию в базу данных.
- Уведомление об успешном добавлении организации – система уведомляет администратора об успешном добавлении организации.
Use Case 8: Добавление незарегистрированного преподавателя в организацию
- Администратор выбирает опцию "Добавить нового преподавателя" – администратор переходит в раздел управления пользователями, выбирая опцию для добавления нового преподавателя.
- Создание именной пригласительной ссылки с ФИО преподавателя – администратор вводит данные нового преподавателя, такие как его фамилия, имя и отчество (ФИО), выбирает нужную организацию
- Персональная ссылка для регистрации преподавателя - система генерирует персонализированную пригласительную ссылку
- Преподаватель появляется в организации в статусе "неактивированный" – система добавляет преподавателя в организацию с временным статусом "неактивированный".
- Передача ссылки преподавателю – администратор передает преподавателю приглашение (например, по электронной почте или другим способом).
- Преподаватель переходит по ссылке – преподаватель получает ссылку и переходит по ней для завершения процесса регистрации.
- Форма для регистрации преподавателя – система отображает форму для данных преподавателя (электронную почту и пароль)
- Ввод данных преподавателя - преподаватель вводит в форму необходимые данные
- Смена статуса преподавателя на "активированный" – после успешного ввода данных и их подтверждения система меняет статус преподавателя на "активированный".
- Уведомление об успешной активации – система уведомляет преподавателя об успешной активации преподавателя в системе.
Use Case 9: Добавление зарегистрированного преподавателя в организацию
- Администратор выбирает опцию "Добавить нового преподавателя" – администратор переходит в раздел управления пользователями, выбирая опцию для добавления нового преподавателя.
- Создание именной пригласительной ссылки с ФИО преподавателя – администратор вводит данные нового преподавателя, такие как его фамилия, имя и отчество (ФИО), выбирает нужную организацию
- Персональная ссылка для регистрации преподавателя - система генерирует персонализированную пригласительную ссылку
- Преподаватель появляется в организации в статусе "неактивированный" – система добавляет преподавателя в организацию с временным статусом "неактивированный".
- Передача ссылки преподавателю – администратор передает преподавателю приглашение (например, по электронной почте или другим способом).
- Преподаватель переходит по ссылке – преподаватель получает ссылку и переходит по ней для завершения добавления.
- Смена статуса преподавателя на "активированный" – система меняет статус преподавателя на "активированный".
- Уведомление об успешной активации – система уведомляет преподавателя об успешной активации преподавателя в системе.
Use Case 10: Восстановление пароля пользователем
- Пользователь выбирает опцию "Восстановить пароль" – пользователь переходит на страницу восстановления пароля.
- Ввод e-mail адреса – пользователь вводит свой зарегистрированный e-mail.
- Получение восстановительной ссылки – система отправляет пользователю ссылку для восстановления пароля на указанный e-mail.
- Переход по ссылке для ввода нового пароля – пользователь переходит по ссылке для ввода нового пароля.
- Ввод нового пароля – пользователь вводит новый пароль в соответствующее поле.
- Обновление пароля в системе – система обновляет пароль пользователя на новый.
- Фронтенд: HTML, CSS, JavaScript
- Бэкенд: Node.js
- База данных: PostgreSQL
- Алгоритмы шифрования: SHA256
$ npm install# development
$ npm run start
# watch mode
$ npm run start:dev
# production mode
$ npm run start:prod