Skip to content

Протокол

Daniil Kalmak edited this page May 23, 2025 · 21 revisions

Созвон с заказчиком №1 - ✅ 14.02.2025.

Наше видение проекта (approved ✅):

Есть расширение для браузера, которое позволяет записать экран. Работаем скорее всего под Google Chrome. Есть сервер в Docker, с которым общается расширение, с базой данных MongoDB. Расширение связывается перед записью с сервером и после записи, чтобы провести проверки, отправить видео, скриншоты и метаданные. Предварительно база данных будет содержать такие поля, как имя пользователя, сессия, путь к видео (видео хранится на сервере условно в папке data), метаданные, пути к скриншотам, возможно их метаданные. Если будет авторизация, то появится еще одна таблица с пользователями: логин, пароль, id сессии.

Стек (approved ✅ стек свободный):

  • Сервер Python Flask в Docker.
  • База данных MongoDB в Docker, если сервер на Python, тогда работа с PyMongo.
  • (Для удобства разработки возможно и Mongo Express в Docker (GUI базы данных))
  • Браузер: Chrome
  • Расширение: код JS (Python), а внешний вид HTML+CSS.

Моменты, отмеченные заказчиком:

  • Расширение как одна из идей реализации. Нужно проверить, работает ли она.
  • Скриншоты, если не получается с видео.
  • Запись на диске лучше оставить как свидетельство.
  • Файлы отдельно, таблица отдельно.
  • Лог действий пользователя, версии браузера и т.д.
  • Фидбэк пользователю о действиях и советах.
  • Авторизация и верификация пока не важно.
  • Веб-камера, хороший бонус.
  • GUI сервера как дополнение. В него входит веб-интерфейс. В нем визуализация таблицы, метаданных и видео-список с возможностью проигрывания.

Данный протокол был размещен в канале связи команды после созвона. Добавлен после урегулирования работы с репозиторием. Запись имеется. Начало в 16:00. Длительность 31 мин 31 с.

Созвон с заказчиком №2 - ✅ 28.02.2025

  • Необходимо учитывать как обычных пользователей, у которых папка скачивания по умолчанию, а также тех, у кого папка изменена и есть запрос на скачивание.

  • Необходимо в интерфейсе отображать текущие статусы прокторинга, в т.ч. дата начала, время работы и другая статистика.

  • Сервер является отладочным, его задачи имеют в основном дополнительный характер. Однако планируется практическое тестирование, о чем стоит подумать. Сложной работы с сервером не планируется на тестировании, но возможно стоит подумать о поддержке нескольких пользователей (дополнительно).

  • Повторный акцент на:

    • Лог действий пользователя, версии браузера и т.д.
    • Фидбэк пользователю о действиях и советах.
  • Проверка отправки записи: она происходит или нет.

  • Собственное оформление уведомлений.

  • Статистика по завершению. Возможно не только уведомление, но и отдельное окно в расширении. Как вариант работы: localStorage.

  • Проверка статуса прокторинга, разрешений. Возможно начальная демонстрация.

  • Проверка, что не будет конфликта с местом.

Данный протокол был размещен в канале связи команды после созвона. Запись имеется. Начало в 16:30. Длительность 25 мин 53 с.

Созвон с заказчиком №3 - ✅ 18.03.2025

  • Необходимо (например, ошибка инициализации) показывать пользователю внятное сообщение с причинами ошибок и описанием, как ему исправить их. Например, в виде алерта или чего-то подобного -> к вопросу визуальных подсказок.

  • В названия файлов на сервере добавить еще номер группы.

  • При закрытии браузера уведомлять пользователя, что идет запись и не давать его закрыть пока пользователь не завершит запись.

  • Алерт об обновлении браузера до необходимой версии.

  • Демонстрировать пользователю статус отправки записи на сервер.

  • Предпросмотр с логами (или как ранее планировалось, в всплывающее окно добавить время, статусы разрешений, время начала) и кнопкой, что пользователь ознакомился со всеми требованиями и готов приступить к записи. Предложить предпросмотр отключить. Также предпросмотр после начала записи без звука.

Для эксперимента работы программы с участием студентов:

  • Записать инструкцию, как пользоваться расширением (установить, запустить, закончить сессию и т.д.).

  • Форма с обратной связью (если были проблемы, то прикрепить логи).

Данный протокол был размещен в канале связи команды после созвона. Запись имеется. Начало в 15:00. Длительность 22 мин 14 с.

Созвон с заказчиком №4 - ✅ 01.04.2025

  • В прокторинге есть сущность, которая отвечает за “комнаты”. Запись привязана к комнате (ссылка на экзамен). Необходимо реализовать дополнительное поле – ссылку на комнату.

  • Цвета кнопок сделать более контрастными.

  • Расширить случаи в проверке полей.

  • Упоминание замечаний, которые являются частью запланированных работ:

    • Отправку на сервер сделать отключаемой. По умолчанию сервер – отключен. Это часть задачи отключения серверной части в клиенте.

    • К версии в prod изменить хост на volume с data, убрав его со всего сервера, отключив dev режим.

    • Рассмотрение исключительных случаев в инструкции.

    • Применение визуальных уведомлений, где это необходимо, вместе с подробным описанием.

    • Улучшение визуальной логики кнопок расширения.

    • Визуализация информации о прокторинге в режиме реального времени для пользователя.

Данный протокол был размещен в канале связи команды после созвона. Запись имеется. Начало в 16:00. Длительность 16 мин 00 с.

Созвон с заказчиком №5 - ✅ 06.05.2025

  • P2 Ввести ограничение версии браузера (поднят приоритет).

  • P3 Добавить идентификатор сессии и время записи в уведомление статуса отправки записи.

  • P4 ObjectId заменить кратким форматом Id.

Данный протокол был размещен в канале связи команды после созвона. Запись демо имеется. Начало в 16:00. Длительность 17 мин 20 с.

Созвон с заказчиком №6 - ✅ 23.05.2025

  • P1 Добавить workflow на каждый commit.

  • P2 Добавить поле с названием предмета в расширение.

Данный протокол был размещен в канале связи команды после созвона. Запись демо имеется. Начало в 15:00. Длительность 10 мин 15 с.

Созвон с заказчиком №7 - ✅ 23.05.2025

Обсуждение тестирования и будущего проекта.

  • Тестирование прошло успешно.

  • В незавершенные задачи добавить комментарии о пройденных этапах и, если есть идеи, как сделать задачу.

  • Проект реализован до продового состояния. Заказчик доволен результатом. После окончания четвертой итерации текущая команда прекращает свою работу и передает полномочия другим лицам.

Данный протокол был размещен в канале связи команды после созвона. Запись демо имеется. Начало в 15:15. Длительность 14 мин 40 с.