Баллы
Система оценивания
- В течение семестра вы получаете баллы за практические и домашние задания (а также, возможно, бонусные баллы).
- На сессии вы сдаёте теормин (обязательно) и экзамен (необязательно).
- Успешная сдача теормина требуется для получения положительной оценки за курс (выше FX), а также является допуском к экзамену.
- Успешная сдача экзамена требуется для получения оценки выше E.
- Баллы за все активности суммируются и переводятся в оценку в соответствии с БаРС.
- При необходимости система оценивания может меняться в течение семестра в любую из сторон.
Иначе говоря:
int bars_score(
int practice, // баллы за практические задания
int hw, // баллы за домашние задания
int bonus, // бонусные баллы
int basic_exam, // баллы за теормин
int full_exam // баллы за экзамен
) {
int score = practice + hw + bonus + basic_exam + full_exam;
if (basic_exam == 0) {
return std::min(score, 59);
} else if (full_exam == 0) {
return std::min(score, 67);
} else {
return score;
}
}
Подробнее о форматах теормина и экзамена напишем отдельно ближе к началу сессии.
Разбалловка
- Практические задания — 20 баллов.
- Домашние задания — 55 баллов.
- Теормин — 10 баллов.
- Экзамен — 20 баллов.
- Итого — 105 баллов (+ бонусные).
Практические задания
Несколько небольших заданий, о которых вам расскажут преподаватели на отдельной паре, напишут какую-то часть кода, ответят на вопросы. Выполняются обычно за 5-10 дней. Отправка любых посылок по практикам после дедлайна (т.е. с положительной просрочкой, см. про неё ниже) невозможна.
Домашние задания
Задания, которые будут выдавать в течение семестра для полностью самостоятельного выполнения. Для каждого будет отдельный дедлайн, за просрочку которого будет штраф на количество баллов за задание.
Система оценивания заданий
Оценки за задания для простоты переведены в символьную систему:
| Symbol | Description | Score |
|---|---|---|
| + | Задание выполнено | 1 |
| +- | Есть недочёты | 0.8 |
| -+ | Много недочётов | 0.6 |
| - | Плохо | 0 |
| / | Не проверялось | 0 |
Оценку / можно получить, например, за проблемы оформления или непройденные тесты.
Баллы за ДЗ считаются по формуле: \[ h = S \cdot M_h \cdot \left(0.6 + \frac{0.4}{1 + 0.35 \cdot D} \right)\] \[ D = \left\lceil \frac{d}{3} \right\rceil \]
- \( M_h \) — максимальный балл за задачу
- \( S \) — ваша оценка за задачу
- \( d \) — кол-во дней, на которые просрочен дедлайн
Штрафы распространяются на любые просроченные посылки, даже правки. Штрафа на количество посылок нет. Итоговым баллом за задание служит максимум из баллов за соответствующие посылки.
Дедлайн для каждого задания задаётся в виде двух составляющих:
- Время и дата дедлайна сдачи (
D_сдачи) - Количество дней на правки (
D_правок)
Просрочка (d) — это просрочка первой сдачи по сравнению с D_сдачи, плюс накопленная просрочка правок, превышающая D_правок. Дни правок тратятся на время внесения правок, только если оно происходит после D_сдачи.
Сдать ДЗ с первого раза скорее всего не получится, и это нормально. Мы все тут ещё учимся.
Проверка занимает достаточно ненулевое время. Чаще всего чем ближе дедлайн, тем больше время проверки в силу увеличивающейся очереди посылок. Рекомендуется сдавать как можно раньше, чтобы получить больше шансов на проверки правок до дедлайна.
Пример. Пусть дано домашнее задание, которое оценивается при полном выполнении в 10 баллов. В таблице ниже отражено поведение формулы для рассчёта баллов для первой посылки (сдачи) в зависимости от переменных. Пусть дедлайн заканчивается 1 марта, 23:59. Тогда:
| Timestamp \ Symbol | + | +- | -+ | - |
|---|---|---|---|---|
| 1 марта, 23:59 | 10 | 8 | 6 | 0 |
| 2 марта, 00:00 | 8.96 | 7.17 | 5.38 | 0 |
| 4 марта, 23:59 | 8.96 | 7.17 | 5.38 | 0 |
| 5 марта, 00:00 | 8.35 | 6.68 | 5.01 | 0 |
| 20 апреля, 12:00 | 6.58 | 5.26 | 3.95 | 0 |
| 1 сентября, 12:00 | 6.18 | 5.07 | 3.71 | 0 |
Бонусные баллы
В дополнение к основным способам набора баллов, вы можете получать бонусные баллы. Есть три основные категории активностей, за которые их можно получить:
- Особенно хорошо выделившиеся решения (по усмотрению преподавателей).
- Развитие нашего курса:
- Улучшение тестового покрытия и прочая доработка тестов;
- Поддержка и актуализация конспектов cpp-notes (они за годы подустарели, и по-хорошему им требуется кардинальная актуализация);
- Улучшения заданий и тулинга (если интересно, поинтересуйтесь у преподавателей, есть ли чем таким заняться).
- Развитие C++ и его тулинга:
- Нахождение новых багов в компиляторах/санитайзерах/форматтерах/стандарте C++ и оформление их в issues на официальных баг-трекерах;
- Принятые контрибьюты, в том числе исправления багов, в репозиториях вышеупомянутых инструментов.
ППА
Система оценивания в периоды доп. сессии и комиссий почти такая же, но:
- Практики можно досдавать после дедлайна — со штрафом, как у ДЗ.
- Теормин не проводится: если он не был сдан в рамках сессии, нужно сдавать сразу экзамен. Упущенные баллы за теормин при этом добрать не получится.