Организация предмета
Критерии оценивания
Студенты получают баллы за решение заданий и за экзамен. Заработанные баллы складываются и окончательная оценка за предмет выставляется основываясь на критериях оценивания ТТУ: 51-60 баллов "1", 61-70 баллов "2", ..., 91.100 баллов "5". В случае защиты задания после установленного срока теряются баллы. Все задания студент должен решить самостоятельно. При обнаружении плагиата результат 0 баллов. Более детально процесс получения баллов описан в последующих разделах.
Упражнения
В конце занятия студенту дается несложное задание по теме занятия, которое следует решить дома. Решение задания следует загрузить на сервер в систему контроля версий Git к началу следующего занятия. Каждое верно решенное задание позволит получить 1 балл. В течение семестра студенту будет дано по крайней мере 20 заданий.
Баллы за задание можно получить только в том случае, если решение задание загружено на сервер Git к началу следующего занятия в обозначенную директорию (например, EX1) и результат автоматического тестирования положителен (пройден хоть один тест). Решения заданий, загружаемых студентами на сервер Git проходят автоматическое тестирование - таким образом проверяется корректность решения. О результатах тестирования студент оповещается по е-мейлу (например, пройдено 80% тестов). До начала занятия у студента сохраняется возможность исправлять свое решение и загружать исправленную версию в Git. Исправляя таким образом работу можно добиться 100%-ного прохождения тестов. Результат автоматического тестирования расчитывается следующим образом: 0.5 * процент прохождения тестов. Например, если решение прошло 80% тестов, то студент получает 0.5 * 0.8 = 0.4 балла.
Оценивание задания происходит во время практического занятия. Оцениваются те задания, которые получили положительный результат тестирования (тоесть пройден по крайней мере один автоматический тест) и студент (автор решения) присутствует на занятии. Оценивание происходит следующим образом. Студентов, чьи работы имеют право быть оцененными, разбивают на пары. Два студента, находящиеся в паре, оценивают работы друг друга. Оценивая работу одногруппника, студент должен заполнить веб форму, где он должен указать оценку и комментарий по ряду критериев:
- надежность работы (код компилируется, приложение запускается, не возникает ошибок или исключительных ситуаций в работе)
- понятность решения
- стиль кода (качество, гибкость)
Студент выставляет по каждому критерию оценку по шкале от 0 до 5 (0 - критерий не выполнен полностью, 5 - отлично) и добавляет свой комментарий. Заполнение всех полей обязательно. Комментарий "ОК" недостаточно информативен - следует описать как положительные, так и отрицательные стороны оцениваемого решения.
Если студент участвует в оценивании, то за оценивание работы другого студента он получает 0.25 балла. Процедура оценивания контролируется преподавателями, которые проверяют, чтобы оценка соответствовала предоставленному решению. Все баллы, полученные за решение задания (оценивание работы другого студента, результат оценивания другим студентом, результат автоматического тестирования) складываются. Таким образом, максимально можно получить 1 балл за каждое задание. В конце семестра баллы за все решеннные задания складываются воедино, и результат округляется с повышением до ближайшего целого числа (тоесть если результат 17.1 то результат 18 баллов).
Подводя итоги:
- Если решение задания загружено в Git к началу занятия и пройден хотя бы один автоматический тест - можно максимально получить 0.5 балла (если результат устраивает - на занятие приходить не обязательно)
- На занятии студенты оценивают работы друг друга.
- За оценивание работы другого студента студент получает 0.25 балла.
- Оставшиеся 0.25 баллов можно максимально получить согласно оценке того студента кто оценивает работу.
- Максимально за одно задание можно получить 1 балл.
- Баллы полученные за решение всех заданий складываются, результат округляется.
Домашние задания
Домашние задания - более объемные работы для самостоятельного решения, в которых комбинируются знания в какой-то области для решения более объемной задачи. В семестре предусмотрено 4 домашних задания, у каждого из которых свои сроки сдачи (см. #Домашние задания и сроки). Домашнее задание состоит из нескольких частей. За решение основной части можно получить 5 баллов. За решение остальных частей задания можно заработать дополнительные баллы.
Решенное домашнее задание следует загрузить в систему контроля версий Git к обозначенному сроку в определенную директорию (например, в директорию HW1). Домашнее задание проверяется автоматическими тестами, точно так же, как и в случае упражнений. Домашние задания следует защитить во время практического занятия преподавателю, который задаст несколько вопросов по работе и оценит работу. Преподаватель может попросить студента внести какие-либо изменения в работу. Цель преподавателя удостовериться, что студент выполнил работу самостоятельно и целиком и полностью понимает то, как его решение работает и может это объяснить. В случае успешной защиты работы преподавателю результатом за домашнюю работу является результат автоматического тестирования. Например, если студент выполнил задание, за которое максимально можно получить 6 баллов и автоматическое тестирование показало, что например 80% тестов пройдено, то результат 6 * 0.8 = 4.8 балла. Результат округляется до ближайшего целого числа (4.49 => 4, 4.5 => 5). Защита домашнего задания раньше срока на неделю или больше дает 1 дополнительный балл. Если студент защищает работу после срока сдачи, работа максимально оценивается в половину баллов. Через 4 неделя после срока сдачи работы не принимаются. Если студент опаздывает на 1, 2 или 3 недели с выполнением работы, за которую максимально можно получить 8 баллов, то этот студент максимально получит 4 балла. Начиная с 4-й недели опоздания результат 0.
Подводя итоги:
- 4 домашних задания в течение семестра.
- Каждое задание оценивается в 5 баллов + дополнительные баллы.
- Защита домашней работы раньше срока оценивается в +1 бонусный балл.
- Защита с опозданием до 3 недель после срока сдачи работы оценивается максимально в 50% от максимального количества баллов.
- Начиная с 4 недели опоздания работа не принимается (результат 0).
- К защите допускаются решения своевременно загруженные в систему контроля версий Git в соответствующую директорию HW1, HW2, HW3, либо HW4 в зависимости от порядкового номера домашнего задания.
- Загруженную в Git работу следует защитить преподавателю во время занятия.
- Оценка за домашнее задание вычисляется путем умножения процентного соотношения количества пройденных тестов и макимального количесва баллов, которые можно получить за решение задания, после чего результат округляется до ближайшего целого числа.
- Преподаватель может снизить баллы (вплоть до 0) если студент не понимает своего решения и не может объяснить как оно работает, либо не ориентируется в коде.
- На защите домашних заданий важно, чтобы студент выполнил задание самостоятельно, понимал бы свое решение и мог бы его объяснить.
- При обнаружении плагиата результат 0 баллов.
Контрольные работы
В течение семестра будет до 4х контрольных работ. Каждая контрольная работа будет включать темы, пройденные ранее. Цель проведения контрольных работ - подготовить студентов к экзамену. За контрольную работу можно получить 1 балл. Контрольные работы имеют тот же формат и структуру, что и экзаменационная работа. Контрольная работа - возможность для студента попробовать свои силы и понять где присутствуют пробелы в знаниях и какие темы следует изучить/повторить более внимательно.
Темы и содержание работ выяснится по ходу предмета.
Экзамен
Экзамену предшествует процесс накопления студентом пунктов, которые можно получить за:
- Упражнения 20 х 1 балл = 20 баллов.
- Домашние задания 4 х 5 баллов = 20 баллов.
- Бонусные баллы за домашние задания 4 х 5 баллов = 20 баллов.
- Контрольные работы 3-4 х 1 балл = 4 балла.
- Прочие бонусные баллы до 10 баллов.
В сумме можно получить свыше 60 баллов, но учитываться будут максимально 50 баллов.
Для получения права написания экзамена студент должен выполнить ряд минимальных требований:
- Защитить на положительную оценку любые 2 домашних задания из 4.
- Набрать 20 баллов за любые другие задания.
Экзамен состоит из двух частей:
- Письменный экзамен 30 баллов.
- Практическая часть (решается на компьютере в классе) 30 баллов.