Автоматизированная система для проведения практических занятий по программированию - page 2

С.Ю. Скоробогатов
2
Развитие автоматизированных систем тестирования берет начало
в олимпиадном программировании. Для проведения олимпиад были
разработаны такие автоматизированные системы, как Ejudge [1],
PCMS2 [2, 3], Contester [4], CATS [5]. Несмотря на успешное исполь-
зование этих систем для проведения учебных занятий по программи-
рованию [6–8], отметим, что они ориентированы прежде всего на
проведение соревнований и тренировок, в то время как системы,
предназначенные для учебного процесса, должны быть ориентирова-
ны на учебные дисциплины и составляющие их модули.
Некоторые университеты применяют автоматизированные си-
стемы тестирования, специально созданные для проведения учебных
занятий [9–11]. Так, в МГТУ им. Н.Э. Баумана была разработана и с
2010 г. используется и совершенствуется оригинальная система
T-BMSTU, сочетающая автоматическую проверку студенческих про-
грамм с накоплением базы их исходных текстов и комментариев
преподавателей. В отличие от олимпиадных систем база условий за-
дач в системе T-BMSTU разбита по учебным дисциплинам и моду-
лям и обеспечивает автоматический подсчет баллов, начисляемых
студенту за успешно решенные задачи и формирующих его итоговую
оценку по учебной дисциплине.
Структура автоматизированной системы тестирования
T-BMSTU.
Автоматизированная система тестирования T-BMSTU
представляет собой распределенный программно-аппаратный ком-
плекс, состоящий из трех компонентов: web-сервера, одного или не-
скольких серверов тестирования и сервера обнаружения некоррект-
ных заимствований.
Web-сервер
является центральным компонентом автоматизиро-
ванной системы. Он реализован в виде демона операционной систе-
мы Linux и предоставляет студентам и преподавателям онлайн-
доступ к системе. Кроме того, web-сервер обеспечивает взаимодей-
ствие с серверами тестирования по специальному протоколу, реали-
зованному поверх протокола WebSockets.
Условия задач в форматах HTML и MarkDown, а также наборы
тестов для проверки решений располагаются в виде файлов и катало-
гов в файловой системе компьютера, на котором запущен web-
сервер. Синхронизация условий и наборов тестов с компьютерами
преподавателей, ответственных за их разработку, осуществляется че-
рез облачное хранилище Dropbox. Использование облачного храни-
лища также позволяет автоматически копировать наборы тестов на
серверы тестирования.
Структура учебных курсов, отправленные решения и коммента-
рии преподавателей и серверов тестирования сохраняются на web-
сервере в реляционной базе данных. Отметим, что база данных хра-
1 3,4,5,6,7,8,9,10
Powered by FlippingBook