Тестирующая система для поддержки лабораторного практикума по курсу «Введение в программирование»

Сборник трудов конференции в формате Adobe Acrobat (4 Мб)


Авторы: Хлебостроев Виктор Григорьевич 1, кандидат физико-математических наук, доцент
Илларионов Игорь Владимирович 2, кандидат физико-математических наук, доцент
Долгополов Павел Анатольевич 3
1 Воронежский государственный университет, 2 Воронежский государственный университет, 3 Воронежский госуниверситет
Предложена реализация программной системы поддержки лабораторного практикума по начальному курсу программирования для IT-специальностей вузов, включающая возможность анализа исходного текста программ и тестирования исполняемого кода.

Чрезвычайно важной составляющей вводных курсов по основам программирования является лабораторный практикум, в рамках которого студенты получают возможность освоить различные инструментальные среды, овладеть методами анализа задач, приемами построения эффективных программных кодов, их отладки и тестирования.

Очевидным способом повышения качества контроля преподавателя за ходом выполнения лабораторного практикума является использование соответствующих программных средств поддержки. В качестве примеров существующих практических разработок подобного назначения можно отметить информационную систему «Таали», систему контроля знаний Knost, систему интерактивного тестирования знаний «СИнТеЗ», автоматизированную обучающую систему «Аргус-М». Однако практическое использование этих систем требует значительных усилий по их освоению, настройке или доработке, а также адаптации под конкретные условия эксплуатации. К тому же большинство из них обладают расширенным функционалом, значительная часть которого окажется невостребованной.

Эти обстоятельства обусловили выбор в пользу создания собственной системы поддержки лабораторного практикума, способной решать сформулированные выше задачи. Система имеет простую двухзвенную архитектуру и состоит из интерфейсного модуля и модуля обработки, взаимодействующего с базами данных заданий с тестовыми наборами и студентов. В базе данных студентов хранится информация о текущем состоянии по каждой из подгрупп, а также накапливаемые статистические данные по числу выполненных заданий и успеваемости.

Задания практикума разбиты по темам и имеют присвоенный им коэффициент сложности, что, в определенной степени, позволяет индивидуализировать процесс обучения. Коэффициент сложности может быть пересчитан с учетом статистических данных об успешности его выполнения.

Интерфейсный модуль выполняет следующие функции:

  • поиск и загрузку для проверки задания студента;
  • вызов редактора для просмотра исходного кода и добавления в него необходимых замечаний;
  • формирование запроса на выбор теста из тестового набора для данной задачи, передачу его на выполнение и представление результата;
  • формирование запроса на выбор очередного задания из банка заданий;
  • отображение отчета о текущем состоянии выполнения практикума отдельным студентом и группой в целом.

Основными функциями модуля обработки являются:

  • взаимодействие с базами данных для выполнения запросов, полученных от интерфейсного модуля;
  • загрузку на выполнение решения студента с выбранным тестом;
  • выполнение анализа исходного кода с вычислением соответствующих метрик;
  • актуализацию статистических данных.

Редактор текста, входящий в состав модуля обработки, может быть использован, в том числе, и для выполнения демонстрационного форматирования исходного кода в соответствии с правилами, принятыми для данного языка программирования. В качестве СУБД в настоящей системе используется свободно распространяемая СУБД MySQL.

Список использованных источников
  1. Звонников В.И., Челышкова М.Б. Современные средства оценивания результатов обучения. М.: Издательский центр «Академия», 2007. 224 с.
  2. Приходько М.А. Архитектура и основные функциональные возможности автоматизированной системы интерактивного контроля знаний «Аргус-М» Интернет-ресурс http://www.argusm.com/article.php?id=245
Тип выступления  Устное выступление
Уровень образования  Высшее профессиональное
Ключевые слова  основы программирования, лабораторный практикум, программная поддержка, тестовые задания, анализ исходного кода