Научная статья на тему 'Методика формирования эталонных наборов входных и выходных данных для анализа результатов выполнения заданий с неразрешимым множеством правильных ответов'

Методика формирования эталонных наборов входных и выходных данных для анализа результатов выполнения заданий с неразрешимым множеством правильных ответов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
312
37
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВИРТУАЛЬНАЯ ЛАБОРАТОРИЯ / VIRTUAL LABORATORY / ИНФОРМАЦИОННО-ОБРАЗОВАТЕЛЬНАЯ СРЕДА / ЭЛЕКТРОННОЕ ОБУЧЕНИЕ / ELECTRONIC EDUCATION / LEARNING MANAGEMENT SYSTEM

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Вашенков Олег Евгеньевич, Лямин Андрей Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

CREATION TECHNIQUE OF REFERENCE ENTRANCE AND TARGET DATA SETS FOR THE EVALUATION OF TASKS WITH UNSOLVABLE SET OF RIGHT ANSWERS

This article describes the structure of AcademicNT learning management system, the role and functions of virtual laboratories and creation methods of reference sets for better evaluation of virtual experiment results. Research was made for virtual laboratory on informatics, but such approach can be used for any virtual laboratories.

Текст научной работы на тему «Методика формирования эталонных наборов входных и выходных данных для анализа результатов выполнения заданий с неразрешимым множеством правильных ответов»

Заключение

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

Литература

1. Васильев В.Н., Лямин А.В., Чежин М.С. Система дистанционного обучения второго поколения // Научно-технический вестник СПбГУ ИТМО. - 2007. - Выпуск 45. Информационные технологии. - С. 148-157.

2. Осин А.В. Мультимедиа в образовании: контекст информатизации. - М.: Агенство «Издательский сервис», 2004. - 320 с.

3. Ройс У. Управление проектами по созданию программного обеспечения. Унифицированный подход. - М.: Лори, 2002. - 434 с.

4. Лямин А.В., Чежин М.С. Модульное построение электронных учебно-методических комплексов для системы дистанционного обучения // Труды XII Всероссийской научно-методической конференции «Телематика'2005». - Т. 2. - СПб, 2005. - С. 511-512.

Васильев Владимир Николаевич

Павлова Анастасия Алексеевна

Чежин Михаил Сергеевич

Санкт-Петербургский государственный университет информационных технологий, механики и оптики, доктор технических наук, профессор, ректор, vasilev@mail.ifmo.ru Санкт-Петербургский государственный университет информационных технологий, механики и оптики, программист, nastya@cde.ifmo.ru

Санкт-Петербургский государственный университет информационных технологий, механики и оптики, кандидат технических наук, доцент, зам. директора ЦДО, msch@cde.ifmo.ru

УДК 004.588

МЕТОДИКА ФОРМИРОВАНИЯ ЭТАЛОННЫХ НАБОРОВ ВХОДНЫХ И ВЫХОДНЫХ ДАННЫХ ДЛЯ АНАЛИЗА РЕЗУЛЬТАТОВ ВЫПОЛНЕНИЯ ЗАДАНИЙ С НЕРАЗРЕШИМЫМ МНОЖЕСТВОМ ПРАВИЛЬНЫХ ОТВЕТОВ

О.Е. Вашенков, А.В. Лямин

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

Ключевые слова: виртуальная лаборатория, информационно-образовательная среда, электронное обучение.

Введение

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

вильных ответов. Для таких заданий нельзя описать правильный ответ конечным множеством или формальным выражением, например, в виде регулярных выражений. Электронные задания, выполненные по технологии виртуальных лабораторий, используются в различных дисциплинах, позволяя проводить эксперименты и контролировать методику их выполнения [1, 2]. Ярким примером использования данной технологии стал многостилевой редактор кода, который предназначен для проверки навыков реализации алгоритмов с возможностью кодирования на наиболее распространенных языках программирования [2-4].

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

Взаимодействие модулей системы AcademicNT

Компоненты виртуальной лаборатории активно взаимодействуют с модулями информационно-образовательной среды AcademicNT. При запросе задания клиенту передается интерактивный элемент лаборатории - апплет. После взаимодействия с апплетом пользователь отправляет ответ на сервер с помощью управляющих элементов HTML-страницы. При этом используется язык сценариев JavaScript для получения данных из апплета и заполнения HTML-формы. Взаимодействие между клиентом и сервером организовано по протоколу HTTP, что накладывает ограничение на символы, используемые в ответе пользователя. Поэтому задача апплета - корректное экранирование ответа пользователя перед отправкой. Сервер перенаправляет HTTP-запрос веб-приложению, выполненному по технологии Java Servlet. Сервлет организует вызов хранимой процедуры на стороне системы управления базами данных (СУБД) и передает ей ответ пользователя. Процедура вызывает команду на стороне сервлета для отправки XML-сообщения на проверяющий сервер. Сообщение содержит ответ пользователя и эталонные данные. Вместе с командой на проверку сервлету передается ряд дополнительных переменных и список процедур, которые требуется вызвать после проверки. Проверяющий сервер осуществляет проверку для каждой пары эталонных наборов и возвращает результат сервлету в форме XML-сообщения. Взаимодействие между сервлетом и проверяющим сервером происходит по протоколу RLCP (Remote Laboratory Control Protocol - протокол управления удаленной лабораторией) [4]. После получения ответа сервлет разбирает XML-ответ и последовательно вызывает хранимые процедуры для занесения результатов проверки. Связи между модулями представлены на рис. 1.

Рис. 1. Схема взаимодействия модулей информационно-образовательной среды

Технология виртуальных лабораторий

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

Для удобства разработки проверяющих серверов лабораторий был создан каркас, в котором организовано взаимодействие с системой AcademicNT, обработка RLCP-запросов и формирование RLCP-ответов. Основными требованиями для авторов виртуальных лабораторий является разработка лабораторного стенда (апплета), алгоритмов проверки ответа и XML-описаний сценария, заданий и установки в формате AcedemicRM. От лабораторного стенда требуется только поддержка метода для получения ответа испытуемого в текстовом виде.

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

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

Эталонные наборы представляются в XML-описании как текстовые данные. Например, если требуется перечислить последовательность целых чисел, набор может выглядеть следующим образом: 0 1 12 15 3 4 5 8. Программный модуль проверяющего сервера получает эту строку, а ее интерпретация - задача автора лаборатории. Например, в виртуальной лаборатории «Многостилевой редактор кода» допустимыми являются следующие эталонные наборы:

- целочисленный массив: а=[0, I, 2, 3, 4, 5];

- строковая переменная: b="answer";

- вещественная переменная с допустимой ошибкой - 10%: c{10%}="1.2E+3".

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

Разработка эталонных наборов

Виртуальная лаборатория по информатике была разработана для проведения единого государственного экзамена по информатике в компьютерной форме. Цель работы

- проверка навыка испытуемых в разработке алгоритмов решения стандартных задач. Далее будут рассмотрены особенности данной виртуальной лаборатории и методика формирования эталонных данных. Сложности в составлении эталонных наборов заключаются в выборе необходимых и достаточных данных для полноценной проверки работы. Например, при наличии одного эталонного набора оценка работы сводится к двоичному «правильно»/»неправильно», для более детальной дифференциации оценки требуется провести анализ влияния входных данных на выполнение программы, разработанной испытуемым.

В качестве примера рассмотрим типовые задачи по информатике - поиск минимума и сортировка массива. Первая задача звучит следующим образом: найти индекс последнего минимального элемента в целочисленном массиве из десяти элементов. На рис. 2 представлен интерфейс виртуальной лаборатории по информатике с решением задачи и использованием стиля кодирования, аналогичного языку С.

Рис. 2. Решение задачи о поиске минимума в массиве

В приведенных ниже примерах переменная а принадлежит набору входных данных, а Ь - эталонным выходным данным. В самом простом случае проверка может быть организована на основе одного набора:

а=[10, 10, 10, 10, 10, 1, 10, 10, 10, 10] Ь=5

В таком случае не учитывается вариант, когда программа некорректно обрабатывает граничные случаи. Такие случаи могут быть связаны с ошибками в операторах управления (условия, циклы). В данной программе таких оператора два.

В инварианте цикла может быть допущена ошибка в условии или при инициализации переменной цикла. В таком случае может возникнуть исключение времени выполнения (выход за границы массива) или пропуск крайних элементов. Исключение времени выполнения в данной работе может быть обнаружено при локальной отладке программы в среде редактора кода. Пропуск крайних элементов найти сложнее, и программа в таком случае может считаться «частично» рабочей. Для проверки можно добавить два дополнительных набора:

я=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] Ь=0 я=[1, 2, 3, 4, 5, 6, 7, 8, 9, 0] Ь=9

По заданию требовалось найти последний минимальный элемент. Ошибка в операторе условия может привести к нахождению первого из минимальных элементов. Для проверки этого условия требуется добавить следующий набор: я=[0, 1, 2, 3, 4, 5, 6, 7, 8, 0] Ь=9

Таким образом, вместо двоичной оценки было получено четыре критерия для проверки.

Вторая задача звучит следующим образом: отсортировать целочисленный массив из десяти элементов по возрастанию. Решение задачи с использованием стиля языка С можно записать следующим образом:

1 = 0; j = 0; ™М1е( 1 < 10 ){ j = j + 1; whi1e( j < 10 ){

1£( Ь[Л < Ь[1] ){ t = ЬШ; ЬШ = Ь[1]; Ь[1] = ^

}

j++;

}

1++; }

Наиболее простой случай проверки можно описать одним набором: я=[0, 1, 2, 4, 3, 5, 6, 7, 8, 9] Ь=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Данная программа содержит три оператора управления, следовательно, дополнительные эталонные наборы позволят обнаружить ошибки, связанные с этими операторами. Первый оператор - цикл с предусловием. Ошибка в инициализации переменной цикла или в операторе условия может привести к пропуску граничных элементов массива. Второй оператор также представляет собой цикл с предусловием, и инвариант цикла может сказаться на пропуске граничных элементов. Ошибка в записи третьего оператора условия может привести к обратному порядку сортировки или к лишним операциям обмена. Последнее сложно проверить, так как для таких простых программ разница во времени будет незначительной.

Для проверки инварианта первого цикла можно использовать следующий набор: я=[1, 0, 2, 3, 4, 5, 6, 7, 8, 9] Ь=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Инвариант второго цикла влияет на обработку граничных элементов справа. Для проверки требуется следующий набор:

я=[0, 1, 2, 3, 9, 4, 5, 6, 7, 8] Ь=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Если автор лаборатории примет решение, что сортировка в порядке, обратном заданию, также является верной, можно добавить набор для проверки оператора условия: я=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] Ь=[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

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

Заключение

Одним из основных достоинств среды AcademicNT является наличие встроенного механизма для построения виртуальных лабораторий, которые необходимы для формирования и проверки навыков. В данной статье приведены схема взаимодействия модулей информационно-образовательной среды, принципы функционирования виртуальных лабораторий, требования к оформлению эталонных наборов данных и методика

разработки эталонных наборов для наиболее точного оценивания результатов виртуальных экспериментов.

Основные результаты статьи проиллюстрированы на примере виртуальной лаборатории «Многостилевой редактор кода», которая предназначена для проверки навыков реализации алгоритмов с возможностью кодирования на наиболее распространенных языках программирования.

Представленные в статье результаты прошли апробацию и продемонстрировали свою эффективность в ходе реализации следующих проектов:

- система дистанционного обучения СПбГУ ИТМО (http://de.ifmo.ru);

- система для проведения Интернет-олимпиад и экзаменов (http://de.ifmo.ru/exam).

Рассмотренный подход к разработке проверяющих наборов и виртуальная лаборатория используются в электронном курсе «Информатика». Использование дополнительных эталонных наборов позволило более точно оценить навыки студентов.

Литература

1. Вашенков О.Е., Лямин А.В., Тарлыков В.А. Оценивание результатов обучения в среде электронного учебно-методического комплекса по дисциплине «Когерентная оптика» // Оптика и образование - 2006: Сб. трудов конф. - СПб: СПбГУ ИТМО,

2006. - С. 70-71.

2. Васильев В.Н., Лисицына Л.С., Лямин А.В. Технология проведения ЕГЭ по информатике в компьютерной форме // Научно-технический вестник СПбГУ ИТМО. -

2007. - Выпуск 45. - С. 126-143.

3. Васильев В.Н., Лисицына Л.С., Лямин А.В. Сетевая технология проведения вступительных испытаний по информатике в режиме on-line // В сб.: Использование информационно-коммуникационных технологий в процессе оценки качества образования. - СПб, 2008. - С. 55-70.

4. Вашенков О.Е., Лямин А.В. Технология разработки виртуальных лабораторий в информационно-образовательной среде AcademicNT на примере работы по информатике // Проблемы разработки учебно-методического обеспечения перехода на двухуровневую систему в инженерном образовании: Материалы межвуз. н.-метод. конф. — М.: МИСиС, 2008. - С. 239-249.

Вашенков Олег Евгеньевич

Лямин Андрей Владимирович

Санкт-Петербургский государственный университет информационных технологий, механики и оптики, программист, vashenkov@cde.ifmo. т

Санкт-Петербургский государственный университет информационных технологий, механики и оптики, кандидат технических наук, доцент, lyamin@mail.ifmo.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.