Результат проверки критерия
Так как текущая задача представляет собой проверку множества критериев, необходимо определить, в каком виде будут представлены результаты проверки критерия.
Введем понятие удачи, как успешного прохождения какого-либо фиксированного преподавателем правила. Примером удачи может являться прохождение одного юнит-теста или прохождение одного теста ввода-вывода с помощью командной строки.
Введем понятие неудачи, как нарушения прохождения какого-либо правила, составленного преподавателем. В ряде случаев количество правил может быть ограничено самим преподавателем (например, максимальное количество неуспешных юнит-тестов), а может быть теоретически не ограничено (например, количество нарушений одного из правил стиля программирования). В случае, когда осуществляется подсчет нарушений, количество которых не ограничено, понятие удачи не применяется.
В качестве результата проверки конкретного критерия используются целочисленные метрики, отражающие количества неудач и удач (если таковые существуют), а также опциональный отчет в виде строкового представления, предназначенный для ознакомления непосредственно студентом или преподавателем.
Разграничение доступа к результатам
Для различных участников проверки работы могут осуществляться различные виды доступа к результатам проверки работ. Преподаватель имеет доступ к полным результатам проверок всех критериев работы студента. Доступ студента к результатам работы может быть ограничен в зависимости от правил, выставленных преподавателем. Таким образом, студенту может быть не предоставлен текстовый отчет о прохождении того или иного критерия. Студенту также может быть закрыт доступ к метрикам, полученным в ходе оценке тех или иных критериев и, соответственно, к итоговой оценке до окончания периода проведения приема заданий на проверку. Например, при неудачно пройденных юнит-тестах, преподавателю будет доступны названия тестов, не прошедших проверку, а студент, в зависимости от доступа, может увидеть лишь число неверно пройденных тестов.