====== Порядок выполнения и защиты лабораторных работ ====== Порядок сдачи **курсовых** работ отличается от сдачи лабораторных работ. Ознакомиться с порядком для курсовых работ можно на странице [[TBD]] Выполнение и защита лабораторной работы состоит из следующих этапов: - Выполнить задание к лабораторной работе и __загрузить задание на moodle в соответствующий модуль курса__. Задание считается выполненным только в случае успешного прохождения всех тестов. Написанный код может проходить все проверки, но содержать ошибки, которые могут повлиять на оценку при защите работы, поэтому необходимо соблюдать следующие требования: [[.rules]] - Загрузить файлы с кодом в репозиторий группы при помощи системы контроля версий в соответствии с правилами [[courses:git_rules]] и создать [[https://forgejo.org/docs/latest/user/collaboration/pull-requests-and-git-flow/|pull-request]] - Защита лабораторной работы: решение заданий за ограниченное время с использованием [[courses:proctoring|прокторинга]] - Если решены все задания на защите -- беседа с преподавателем для подтверждения максимального балла Лабораторная работа считается зачтённой (//т.е.получены баллы за pull-request и защиту в рейтинг//) только после **слияния соответствующего pull-request’а преподавателем!** В любых иных случаях работа считается невыполненной и баллы за неё **не учитываются в рейтинге**. ===== Выполнение задания на moodle ===== Если обнаруживается, что студент __выполнил лабораторную работу не самостоятельно, **в том числе с использованием ИИ**__, то лабораторная работа и результат защиты **аннулируются без возможности перезащиты**. При этом остаётся возможность получить __2 балла за pull-request__, если самостоятельно выполнить лабораторную работу до [[.structure|финальной даты дисциплины]] ===== Создание pull-request’а ===== Если нет возможности или нет желания защищать лабораторную работу на ближайшей паре (__и при этом дедлайн ещё не прошёл__), то **по предварительному согласованию с преподавателем** можно перенести защиту. __**Без предупреждения и согласования за защиту лабораторной работы выставляется ноль баллов, как если бы была неявка**__. Если нет возможности защитить лабораторную работу в ближайшую пару по **__уважительной причине__**, то необходимо __предупредить своего преподавателя, принести подтверждающий документ в деканат__ ([[common:exams#я_заболел_и_пропустил_лекцию_практику_контрольную_лабораторную_что_мне_делать_чтобы_ликвидировать_текущие_задолженности|Я заболел и пропустил лекцию/практику/контрольную/лабораторную. Что мне делать, чтобы ликвидировать текущие задолженности?]]), и после подтверждения данного документа вам будет предоставлена возможность защиты лабораторной работы. Наличие pull-request’а на момент проведения пары, но отказ от защиты или отсутствие сдающего на защите приводит к автоматическому получению 0 баллов за защиту (//перезащита не предполагается//). Таким образом, если нет планов защищать лабораторную работу, то pull-request для получения за него баллов можно выполнить в любой момент времени до [[.structure|финальной даты дисциплины]]. ===== Защита лабораторной работы ===== Для допуска к защите необходимо сделать корректный pull-request (//при этом он должен быть открыт//) **не позднее, чем за 30 минут до начала пары**. Перед началом пары преподаватель свяжется со сдающими студентами через студенческий чат (Rocket.Chat) в канале группы. Слева в приложении или странице Rocket.Chat расположены каналы групп, через которые будет происходить коммуникация. Перед началом пары необходимо открыть текстовый канал своей группы. Задания для защиты находятся в отдельном курсе на мудл, в который студенты добавляются в начале семестра. Для защиты лабораторной работы преподаватель назначает каждому сдающему вариант и отправляет ссылки на модули в moodle. Запрещено решать задания не своего варианта, а также заходить в модуль с заданиями не своей группы. Нарушение данного правила приводит к автоматическому получении **0 баллов за защиту** лабораторной работы вне зависимости от фактического результата защиты. На защите лабораторной работы нужно решить __три задания__. Задания могут быть как __практическими__ (//написание кода//), так и __теоретическими__ (//выбор варианта ответа, ввод строкового ответа//). **Теоретические задания ограничены количеством попыток**. Практические задания не имеют ограничения на количество отправок. Каждое решенное задание даёт __1 балл за защиту__. На защиту отводится **//__60 минут__//**, после чего модуль автоматически завершает все попытки сдающего и сделать новую отправку уже невозможно. Для каждого задания засчитывается лучшая попытка (//с максимальным баллом//) Во время защиты разрешается **__задавать преподавателю уточняющие вопросы по условию заданий__** через канал группы в Rocket.Chat. ===== Беседа с преподавателем ===== После выполнения заданий защиты можно получить от 0 до 3 баллов. Дальнейшие возможные действия в зависимости от количества баллов: * __0 баллов__. Возможна **__одноразовая перезащита__** данной лабораторной работы если * **Защита проведена до дедлайна** * Сдающий присутствовал на защите * На самой защите получено 0 баллов. **Аннулированные защиты перезащитить нельзя** * __1-2 балла__. Баллы за защиту будут выставлены преподавателем в pull-request после проверки решений и записи прокторинга * __3 балла__. Для получения 3 баллов после защиты необходимо пройти беседу с преподавателем. Для этого нужно установленным преподавателем способом (//сообщение в канале группы, форма, электронная очередь, ...//) сообщить о намерении получить полный балл через беседу. После этого преподаватель пригласит на видеозвонок для проведения беседы * На беседе могут быть заданы вопросы как по самой лабораторной работе, **__так и по связанным темам__**. Также могут быть вопросы по заданиям из защиты. * Во время беседы необходимо __включить демонстрацию экрана и веб-камеру__ * По результатам беседы можно получить как полных 3 балла, так и __понизить свой балл за защиту лабораторной работы__ * Если нет планов беседовать с преподавателем, то максимальный балл за защиту **снижается до 2, а беседа не проводится** Получить три балла за защиту можно только после общения с преподавателем. __Для получения 0-2 баллов общение с преподавателем не требуется__. В случае, если у студента есть вопросы по количеству полученных баллов, он может написать на **//почту//** своему преподавателя лабораторных работ. ===== Почему мой pull-request не слит ===== Pull-request может быть не слит (а работа не зачтена) по следующим причинам: * Преподаватель не проверил вашу работу/исправления. Нужно подождать некоторое время или обратиться к соответствующему разделу: [[working_rules#Трудности коммуникации|Трудности коммуникации]] * Преподаватель оставил замечания к pull-request’у, которые необходимо исправить в сроки, указанные в разделе [[.structure]]. Данные замечания обязательны к исправлению и их неисправление является основанием в отказе слияния pull-request’а ===== Трудности коммуникации ===== Если преподаватель по лабораторным работам длительное время (больше 2 недель) не проверяет pull-request (новый или исправленный), без предварительной договоренности о времени проверок, то необходимо написать ему письмо на почту и уточнить, когда преподаватель проверить pull-request’ы. __**Ответственными и заинтересованными за вашу работу являетесь вы, и если вы не интересуетесь временем проверок ваших работ, то ответственность за последствия лежит на вас.**__ Если преподаватель без объяснения причин и предварительных договоренностей не проверяет pull-request’ы и не отвечает на письма больше недели, то необходимо сделать следующее: * Проверить правильность оформления своего письма и указанный в письме адрес преподавателя (любые письма, не соответствующие требованиям оформления, игнорируются, см. [[courses:communication_rules]]) * Отправить ваше письмо повторно, так как оно могло затеряться на почте преподавателя **Если ответа нет больше недели с момента повторной отправки и вы уверены в правильности оформления письма**, то добавьте [[courses:communication_rules#время_ответа_и_выходные_дни|в копию письма кураторов дисциплины]]