-
Notifications
You must be signed in to change notification settings - Fork 1
Протокол
Есть расширение для браузера, которое позволяет записать экран. Работаем скорее всего под Google Chrome. Есть сервер в Docker, с которым общается расширение, с базой данных MongoDB. Расширение связывается перед записью с сервером и после записи, чтобы провести проверки, отправить видео, скриншоты и метаданные. Предварительно база данных будет содержать такие поля, как имя пользователя, сессия, путь к видео (видео хранится на сервере условно в папке data), метаданные, пути к скриншотам, возможно их метаданные. Если будет авторизация, то появится еще одна таблица с пользователями: логин, пароль, id сессии.
- Сервер Python Flask в Docker.
- База данных MongoDB в Docker, если сервер на Python, тогда работа с PyMongo.
- (Для удобства разработки возможно и Mongo Express в Docker (GUI базы данных))
- Браузер: Chrome
- Расширение: код JS (Python), а внешний вид HTML+CSS.
- Расширение как одна из идей реализации. Нужно проверить, работает ли она.
- Скриншоты, если не получается с видео.
- Запись на диске лучше оставить как свидетельство.
- Файлы отдельно, таблица отдельно.
- Лог действий пользователя, версии браузера и т.д.
- Фидбэк пользователю о действиях и советах.
- Авторизация и верификация пока не важно.
- Веб-камера, хороший бонус.
- GUI сервера как дополнение. В него входит веб-интерфейс. В нем визуализация таблицы, метаданных и видео-список с возможностью проигрывания.
Данный протокол был размещен в канале связи команды после созвона. Добавлен после урегулирования работы с репозиторием. Запись имеется. Начало в 16:00. Длительность 31 мин 31 с.
-
Необходимо учитывать как обычных пользователей, у которых папка скачивания по умолчанию, а также тех, у кого папка изменена и есть запрос на скачивание.
-
Необходимо в интерфейсе отображать текущие статусы прокторинга, в т.ч. дата начала, время работы и другая статистика.
-
Сервер является отладочным, его задачи имеют в основном дополнительный характер. Однако планируется практическое тестирование, о чем стоит подумать. Сложной работы с сервером не планируется на тестировании, но возможно стоит подумать о поддержке нескольких пользователей (дополнительно).
-
Повторный акцент на:
- Лог действий пользователя, версии браузера и т.д.
- Фидбэк пользователю о действиях и советах.
-
Проверка отправки записи: она происходит или нет.
-
Собственное оформление уведомлений.
-
Статистика по завершению. Возможно не только уведомление, но и отдельное окно в расширении. Как вариант работы: localStorage.
-
Проверка статуса прокторинга, разрешений. Возможно начальная демонстрация.
-
Проверка, что не будет конфликта с местом.
Данный протокол был размещен в канале связи команды после созвона. Запись имеется. Начало в 16:30. Длительность 25 мин 53 с.
-
Необходимо (например, ошибка инициализации) показывать пользователю внятное сообщение с причинами ошибок и описанием, как ему исправить их. Например, в виде алерта или чего-то подобного -> к вопросу визуальных подсказок.
-
В названия файлов на сервере добавить еще номер группы.
-
При закрытии браузера уведомлять пользователя, что идет запись и не давать его закрыть пока пользователь не завершит запись.
-
Алерт об обновлении браузера до необходимой версии.
-
Демонстрировать пользователю статус отправки записи на сервер.
-
Предпросмотр с логами (или как ранее планировалось, в всплывающее окно добавить время, статусы разрешений, время начала) и кнопкой, что пользователь ознакомился со всеми требованиями и готов приступить к записи. Предложить предпросмотр отключить. Также предпросмотр после начала записи без звука.
Для эксперимента работы программы с участием студентов:
-
Записать инструкцию, как пользоваться расширением (установить, запустить, закончить сессию и т.д.).
-
Форма с обратной связью (если были проблемы, то прикрепить логи).
Данный протокол был размещен в канале связи команды после созвона. Запись имеется. Начало в 15:00. Длительность 22 мин 14 с.
-
В прокторинге есть сущность, которая отвечает за “комнаты”. Запись привязана к комнате (ссылка на экзамен). Необходимо реализовать дополнительное поле – ссылку на комнату.
-
Цвета кнопок сделать более контрастными.
-
Расширить случаи в проверке полей.
-
Упоминание замечаний, которые являются частью запланированных работ:
-
Отправку на сервер сделать отключаемой. По умолчанию сервер – отключен. Это часть задачи отключения серверной части в клиенте.
-
К версии в prod изменить хост на volume с data, убрав его со всего сервера, отключив dev режим.
-
Рассмотрение исключительных случаев в инструкции.
-
Применение визуальных уведомлений, где это необходимо, вместе с подробным описанием.
-
Улучшение визуальной логики кнопок расширения.
-
Визуализация информации о прокторинге в режиме реального времени для пользователя.
-
Данный протокол был размещен в канале связи команды после созвона. Запись имеется. Начало в 16:00. Длительность 16 мин 00 с.
-
P2 Ввести ограничение версии браузера (поднят приоритет).
-
P3 Добавить идентификатор сессии и время записи в уведомление статуса отправки записи.
-
P4 ObjectId заменить кратким форматом Id.
Данный протокол был размещен в канале связи команды после созвона. Запись демо имеется. Начало в 16:00. Длительность 17 мин 20 с.
-
P1 Добавить workflow на каждый commit.
-
P2 Добавить поле с названием предмета в расширение.
Данный протокол был размещен в канале связи команды после созвона. Запись демо имеется. Начало в 15:00. Длительность 10 мин 15 с.
Обсуждение тестирования и будущего проекта.
-
Тестирование прошло успешно.
-
В незавершенные задачи добавить комментарии о пройденных этапах и, если есть идеи, как сделать задачу.
-
Проект реализован до продового состояния. Заказчик доволен результатом. После окончания четвертой итерации текущая команда прекращает свою работу и передает полномочия другим лицам.
Данный протокол был размещен в канале связи команды после созвона. Запись демо имеется. Начало в 15:15. Длительность 14 мин 40 с.