Содержание к диссертации
Введение
Глава 1 Теоретическое обоснование целесообразности разработки электронных учебных пособий и автоматизации контроля знании 17
1.1 Компьютерные учебные пособия в образовательном процессе 18
1.1.1 Сравнение традиционной и дистанционной форм обучения. 18
1.1.2 Развитие дистанционного обучения. 21
1.1.3 Развитие концепции КУП 23
1.2 Некоторые психологические аспекты компьютеризации обучения . 25
1.3 Современный мультимедийный учебник на примере КУП «Концепции современного естествознания» 30'
1.3.1 Первая версия КУП «КСЕ» 30
1.3.2 Вторая версия КУП «КСЕ» 34
1.4 Компьютерное тестирование 36
1.4.1 Типы компьютерного тестирования знаний 36
1.4.2 Отличия компьютерного тестирования от традиционных методов. проверки знаний. 37
1.4.3 Области применения компьютерного тестирования 39;
Глава 2 Автоматизированное тестирование знаний 42
2.1 Сравнение технологий локального и сетевого тестирования 43
2.2 Представление структуры тестовых вопросов с помощью языка текстовой разметки . 45
2.3 Защита данных тестирования от фальсификации. 48
2.4 Проблемы оценки ответов на тестовые вопросы 51
2.4.1 Общий алгоритм оценки ответов на тестовые вопросы 51
2.4.2 Типы тестовых вопросов. 53
2.4.3 Проблемы оценки ответов на вопросы открытого типа. 55
2.4.4 Вывод общей оценки за тестирование. 57
2.5 Требования к системе автоматизированного тестирования. 59
Глава 3 Автоматизация проверки компьютерных программ . 62
3.1 Концепция автоматизации проверки программ для ЭВМ! 63
3.2 Метод шаблонов АТП 66
3.3 Методы идентификации, оригинальности и фальсифицированности тестируемой программы 72:
3.3.1 Методы фальсификации программного кода и пути их обнаружения.. 72
3.3.2 Плагиат программного кода и методы его обнаружения 76
3:3.3 Общий алгоритм проверки оригинальности и»нефальсифицированности тестируемой программы 77
3.4 Построение модели АТП, основанного на методе шаблонов. 80'
Глава 4. Комплекс автоматизированного тестирования EduGAD Controls 84
4.1 Общие сведения о комплексе EduCAD 84
4.2 Система автоматизированной проверки компьютерных программ EduGAD Programs . 87
4.3 Система автоматизированного тестирования знаний EduCAD Tests 90
4.4 Система генерации заданий EduCAD Questions 96
4.5 Внедрение комплекса EduCAD Controls в образовательный процесс 99
Заключение. 101
Литература 103'
Приложение
- Некоторые психологические аспекты компьютеризации обучения
- Представление структуры тестовых вопросов с помощью языка текстовой разметки
- Метод шаблонов АТП
- Система автоматизированной проверки компьютерных программ EduGAD Programs
Введение к работе
Актуальность работы. Рассматривая высшее учебное заведение как систему управления, необходимо особо отметить область проверки знаний и навыков студентов. Принятие решений в данной области традиционно практически целиком возлагается на преподавателя, несмотря на возможность частичной автоматизации этого процесса. Широкое внедрение инструментальных средств, позволяющих автоматизировать процесс проверки знаний и навыков, помогло бы решить часть проблем системы высшего образования.
Чаще всего автоматизация принятия решений в области оценки знаний обеспечивается средствами тестирования, наибольшее распространение получило компьютерное тестирование. Актуальность разработки средств проверки знаний обуславливается также недавним введением единого государственного экзамена. Также, большая часть форм проверки приобретенных навыков, отнимающие у преподавателя много времени, до сих пор не автоматизированы даже частично. Так, преподавателям технических специальностей приходится тратить много времени на проверку компьютерных программ, созданных студентами даже в тех случаях, если компьютерная программа является лишь средством достижения цели, а не целью работы.
Таким образом, актуальность исследования обусловлена:
-
требованиями повышения качества обучения студентов;
-
отсутствием требований к системам автоматизированного контроля знаний, формализованных в достаточной для математической и программной реализации степени;
-
сложностью проведения некоторых форм дистанционной проверки навыков - таких, как проверки компьютерных прикладных программ;
-
сложностью создания тестирующих программ, удовлетворяющих выдвинутым требованиям, без вспомогательных средств;
-
значительным возрастанием нагрузки на преподавательский состав.
Цель данной работы состоит в повышении эффективности проверки знаний и навыков студентов технических вузов. Поставленная цель достигается с помощью моделей, алгоритмов и системы автоматизированного тестирования знаний и навыков.
Для достижения поставленной цели необходимо было решить следующие задачи:
-
обоснована теоретическая целесообразность автоматизации процесса тестирования знаний и навыков;
-
создана система формальных требований, которой должны отвечать системы автоматизированного контроля знаний;
-
создана система формальных требований, которой должны отвечать системы проверки компьютерных программ;
РОС НАЦИОНАЛЬНАЯ( БИБЛИОТЕКА ]
-
разработаны модели и алгоритмы проверки знаний и компьютерных программ;
-
разработан автоматизированный комплекс, позволяющий проводить тестирование знаний студентов и проверять компьютерные программы.
Методы исследования. Для решения поставленных задач использовались методы теории множеств, формальной логики, системного анализа, вычислительной математики и теории вероятностей. При программной реализации полученных концепций использовались методы теории алгоритмов, структурного и объектно-ориентированного программирования, синтаксического анализа и математического моделирования.
Основные положения, выносимые на защиту, можно сформулировать следующим образом:
-
Кодирование тестовых вопросов с помощью языка текстовой разметки EduCAD Tests ускоряет процесс создания тестов различных типов, в том числе нестандартного вида.
-
Модель тестирования компьютерных программ на основе шаблонов позволяет унифицировать создание программного кода для упрощения создания и ускорения тестирования программ.
-
Система тестирования компьютерных программ повышает примерно на порядок эффективность проверки прикладных компьютерных программ в образовательном процессе.
-
Автоматизированный комплекс проверки знаний и навыков EduCAD Controls в целом, и его отдельные компоненты в частности, повышают эффективность проверки знаний и навыков в образовательном процессе.
Научной новизной обладают следующие результаты исследования:
-
Оригинальный язык текстовой разметки описания тестовых вопросов для автоматизированного компьютерного тестирования, отличающийся от аналогов тем, что позволяет создавать тестовые вопросы как стандартного, так и произвольного вида.
-
Впервые разработан оригинальный алгоритм проверки прикладных компьютерных программ в образовании на основе программных шаблонов;
-
Модель проверки прикладных компьютерных программ, созданных на основе программных шаблонов.
-
Отдельные компоненты автоматизированного комплекса EduCAD Controls (EduCAD Programs, EduCAD Tests, EduCAD Questions), введенные в систему контроля. Ранее созданные автоматизированные системы не позволяли создавать тестовые вопросы произвольного вида и проводить тестирование компьютерных программ.
Практическая и теоретическая ценность работы. Выявленные требования к системам автоматизированного тестирования знаний и компьютерных программ дают возможность строить универсальные алгорит-
мы проверки знаний, не зависящие от операционной системы и среды программирования. По разработанным алгоритмам создано программное обеспечение. Таким образом, соблюдается принцип структурного проектирования сверху вниз (CASE), что позволяет существенно сократить время на кодирование и избежать многих ошибок, появляющихся при написании программы «с нуля», безо всяких методик и алгоритмов.
На базе системы требований и созданного программного обеспечения к настоящему времени разработаны блоки автоматизированного тестирования для трех компьютерных учебных пособий, а так же проверено более пятисот компьютерных программ, созданных студентами Томского межвузовского центра дистанционного образования (ТМЦДО).
Принципы, положенные в основу проектирования комплекса и рекомендации по созданию шаблонов для компьютерных программ и разработки тестовых вопросов, могут быть использованы другими авторскими коллективами для дальнейших исследований в области дистанционного обучения (ДО) и создания аналогичного программного обеспечения. Это же касается разработанных отдельных программных компонентов, которые могут быть использованы для конструирования других системДостоверность результатов работы подтверждается успешным опытом длительной проверки компьютерных лабораторных работ по дисциплине «Вычислительная математика». Так же сравнение качества и скорости разработки тестирующих программ с другими подобными системами показало преимущество разработанного комплекса автоматизированного тестирования.
Внедрение результатов диссертации и рекомендации по их дальнейшему использованию. Имеются акты о внедрении мультимедийных учебных пособий по вузовским дисциплинам «Вычислительная математика», «Методы оптимизации», «Основы теории управления» и «Концепции современного естествознания» в образовательный процесс Томского межвузовского центра дистанционного образования (ТМЦДО). Кроме того, мультимедийное учебное пособие «Концепции современного естествознания» внедрено в учебный процесс Новосибирской государственной академии экономики и управления (НГАЭиУ).
Апробация работы. Методика исследования обсуждалась на заседаниях семинара «Автоматизированные системы в учебном процессе» в 2001-2002 гг. По теме диссертации опубликовано 24 работы, в том числе:
— 8 статей, среди которых две в центральной печати;
3 методических пособия;
материалы 13 докладов на конференциях. Основные результаты работы докладывались и обсуждались на следующих конференциях:
— всероссийской межвузовской научно-технической конференции
студентов и аспирантов «Микроэлектроника и информатика»
(Москва, МИЭТ, 1999 г.);
XXXVH международной научной студенческой конференции «Студент и научно-технический прогресс. Информационные технологии» (Новосибирск, НГУ, 1999 г.);
третьей региональной научно-технической конференции студентов и молодых специалистов «Радиотехнические и информационные системы и устройства» (Томск, ТУ СУР, 1999 г.) международной научно-практической конференции «Технический университет: дистанционное инженерное образование» (Томск, ТПУ, 2000 г.);
четвертой региональной научно-технической конференции «Радиотехнические и информационные системы и устройства» (Томск, ТУСУР, 2000 г.);
XXXVIII международной научной студенческой конференции «Студент и научно-технический прогресс. Информационные технологии» (Новосибирск, НГУ, 2000 г.);
VI международной конференции «Информационные технологии обучения», ИТО-2000 (Санкт-Петербург, СПбГЭТУ, 2000 г.); 7-й международной научно-практической конференции «Природные и интеллектуальные ресурсы Сибири» (Барнаул, 2001 г.) региональной научно-практической конференции «Прогрессивные технологии и экономика в машиностроении» (Юрга, 2002
г.);
всероссийской научно-практической конференции-выставке «Единая образовательная информационная среда: проблемы и пути развития» (Томск, ТГУ, 2002 г.). Дипломная работа на тему «Электронные учебные пособия по естественнонаучным дисциплинам», в которой отражены начальные этапы исследования, отмечена дипломом Министерства образования открьпого конкурса на лучшую науч!гую работу студентов по естественным, техническим и гуманитарным наукам в вузах РФ в 2001 году, а так же получила второе место на конкурсе дипломных работ и проектов ТУСУР за 2000 год. Учебный комплекс по дисциплине «Концепции современного естествознания - 2» в составе КУМПО (комплексного учебно-методического программного обеспечения) на Сибирской ярмарке 2002 года в г. Новосибирске получил Большую золотую медаль. Этот учебный комплекс зарегистрирован в депозитарии электронных изданий ФГУП НТЦ «Информрегистр» Министерства РФ по связи и информатизации 16 января 2003 года, ему присвоен номер государственного учета 0320300013. Мультимедийные учебники.«Вычислительная математика», «Концепции современного естествознания - 2», «Методы оптимизации» в комплекте электронных учебников, представленных ТМЦЦО ТУСУР на конкурс «Золотая медаль Сибирской ярмарки «УЧСИБ-2004», оценены Малой Золотой медалью в номинации «современный учебник» и дипломом в номинации «электронный учебник». КУП «Концепции современного естествознания» внедрено для обучения студентов в ТМЦЦО и
НГАЭиУ. КУП «Вычислительная математика», «Методы, оптимизации», «Основы теории управления» внедрены в учебный процесс ТМЦДО. Диссертационная работа выполнена в рамках трех проектов договоров подряда
тмпдо.
Личный вклад диссертанта. В диссертации приведены только те результаты, в получении которых автору принадлежит основная роль. Опубликованные работы написаны либо без соавторов, либо в соавторстве с сотрудниками коллектива по разработке компьютерных учебных пособий кафедры АСУ ТУ СУР и профессора НГАЭиУ Дубнищевой Т.Я.
Автором создан комплекс автоматизированного тестирования EduCAD Controls и программное ядро компьютерного учебника «Концепции современного естествознания». Личный вклад в разработку учебных пособий:
— «Концепции современного естествознания» (1999 г.): ядро курса,
программирование и дизайн электронного учебника, программы
автоматизированного тестирования, контрольные и лабораторные
работы. Автор материалов по дисциплине — профессор НГАЭиУ
Дубнищева Т.Я.
«Вычислительная математика» (2002 г.): разработка шаблонов программ для лабораторных работ. Автор материалов по дисциплине — профессор кафедры АСУ ТУ СУР Мицель А. А.
«Концепции современного естествознания — 2» (2002 г.): дизайн электронного учебника, программирование программ тестирования и лабораторных работ. Автор материалов по дисциплине -профессор НГАЭиУ Дубнищева Т Л.
«Основы теории управления» (2003 г.): программа тестирования знаний. Автор материалов по предмету — заведующий кафедрой АСУ ТУСУР, профессор Кориков AM.
«Методы оптимизации» (2003 г.): программы тестирования знаний, контрольных работ и курсового проектирования. Авторы материалов по дисциплине - профессор кафедры АСУ ТУСУР Мицель АА. и доцент кафедры АСУ ТУСУР Шелестов А. А..
Структура м объем диссертации. Диссертация состоит из введения, четырех глав, заключения, списка литературы из 86 наименований и 5 приложений. Общий объем диссертации - 126 страниц, в том числе 13 рисунков, 18 таблиц и листингов.
Некоторые психологические аспекты компьютеризации обучения
В начальные периоды развития КУП большая часть внимания; уделялась простому кодированию ЗУ, а не методологическим; и; психологическим s аспек там разработки. Как справедливо замечено в [84], «Большинство компьютерных программ и интерфейсов мало учитывают человеческие способности ишнтере- сы, оставляя. большие области человеко-машинного взаимодействия неисследо ванными». Вскоре ситуация изменилась, и психологическим аспектом создания электронных средств обучения стали уделять значительное внимание. Довольно часто в литературе встречается тенденция к обобществлению собственно : педагогических аспектов разработки КУП и интерфейса учебного пособия. На самом деле, это разные понятия; Педагогические: и методологические принципы присущи как электронным, так и традиционньїміучебньїмпосо-биям, они должны закладываться еще на этапе подготовки учебного материала.. Понятие.: интерфейса пользователя присуще только электронным изданиям, по крайней мере именно для КУП хороший дизайн, приобретает чуть ли- не перво-степенную важность. Как метко подметил известный дизайнер М; Донской, «Хороший интерфейс похож на удобную обувь: никто его не замечает;.. Зато плохой интерфейс у всех на виду шустах. На самом деле хороший интерфейс пользователями замечается подсознательно, и, когда он нравится, симпатии переносятся на функциональную часть программы» [16]. Конечно, в процессе разработки КУП методология и дизайн неизбежно пересекаются, поэтому хотелось бы выделить три этапа разработки электронного учебного пособия (рис. 1.1). Отсутствие программиста в составе группы разработчиков, несмотря на то, что его присутствие рекомендуется большинством исследователей, не случайно. По мнению автора, при разработке КУП с помощью специализированных профессиональных средств разработки необходимость в программисте отпадает, его место занимает дизайнер. Также необходимо отметить, что важнейшим моментом для создания хорошего КУП является участие автора учебного материала на всех этапах разработки пособия. Первая стадия разработки КУП — подготовка учебного материала — почти целиком; ложится на плечи автора курса; и; обычно никак не. пересекается с дальнейшим преобразованием материала в электронную форму. Самой сложной является вторая стадия разработки КУП. На этом этапе1 задействованы силы всего коллектива разработчиков, и основная тяжесть работы ложится на плечи методиста и дизайнера. Именно на стадии представления: материала в электронном виде формируется структура КУП; и перед началом -работы следует определить круг потенциальных пользователей этого электронного пособия; В современной психологии различают три базовых психологических типа характера по основному каналу восприятия информации: визу алы (получающие большую часть информации через зрительное восприятие); аудиалы (получающие большую часть информации через слух), м кинестетики. (основной объем информации усваивают через осязание). Известно, что: при традиционной системе обучения все три группы получают свое на лекциях: визуалы - просматривая учебную литературу, конспекты; аудиалы - слушая преподавателя; механическая память кинестетиков позволяет им запоминать материал в процессе конспектирования лекции. При использовании.нестандартных формобучения возникают некоторые проблемы. Используя обычные средства, заочного: обучения (пересылка; студенту печатного конспекта лекций), в некоторой і степени? довольными остаются только студенты-визуалы.. С помощью технологий СДО имеется возможность исправить данную ситуацию: визуалы получают, хорошо структурированный материал, не только текст, но и полноцветную графическую информацию, анимацию, хорошо запоминающиеся схемы. Кинестетики усваивают материал во время навигации по учебнику - метод «нажми тут и получишь новую дозу информации» в некоторой степени улучшает восприятие для таких студентов., Для аудиалов t требуется озвучивать ключевые моменты курса; Большую помощь при этом могут оказать видеолекции и видеоконференции с преподавателем: Для; образовательного. процесса, вероятно, более разумно; делить обучаемых по способу освоения информации, где различают четыре характерных типа. «Аристотелю» достаточно лишь изложение фактов, люди этого типа хорошо усваивают структурированный? текст. «Ламарк» хочет увидеть свою проблему в контексте других проблем, для обучения студентов-«Ламарков» требуется представление данных в виде блок-схем. «Фрейд» интуитивно улавливает идею, разбирая какой-либо пример, для людей этого типа в учебное пособие должно включаться большое количество задач и примеров. Для; «Рафаэля» в обучении важен эмоциональный аспект, люди этого типа должны «прочувствовать» идею для ее понимания. Такое деление удобно тем, что в рамках конкретной і специальности, обычно преобладает один тип;обучаемых — например,,«Рафаэли» чаще всего люди творческих профессий; «Ламарки» - технических и т.д.
Представление структуры тестовых вопросов с помощью языка текстовой разметки
Особое внимание при разработке системы автоматизированного тестирования знаний следует уделить выбору формата представления информации системы. Информация должна храниться в виде, удобном для ее последующего изменения; дополнения или удаления.,
Для выбора формата представления данных для САКЗ необходимо сперва уяснить, какая именно информация; будет храниться в подобной1 системе. Большая часть данных тестовых вопросов представлена в .текстовом виде, также используются- графические изображения и (нежелательно) мультимедиа-информация.
Таким- образом, казалось бы, для хранения информации САКЗ может подойти формат данных современного текстового редактора, но это не так. Существует по крайней мере две причины, по которым не следует использовать форматы представления данных популярных текстовых редакторов; таких, как Microsoft Word, в САКЗ. Во-первых, подобные форматы очень сильно перегружены избыточной информацией; не:нужной для тестирования.. Во-вторых, ви- зуальное: отображение форматов данных текстовых редакторов предполагает наличие этих редакторов у пользователя, а распространение вместе с системой частей этих программ непозволительно из-за возможного нарушения авторских прав.
С точки зрения отображения текстовой и графической информации очень удобен язык гипертекстовой разметки Hyper Text Markup Language (HTML), на сегодняшний день являющийся основным языком представления документов в сети Интернет. HTML - свободно распространяемый и полностью документированный формат, поэтому он весьма удобен для хранения данных в САКЗ, особенно при выборе сетевой технологии тестирования.
Для большего удобства разработки тестов некоторыми источниками ([82,53]), а также автором ([7]) предлагается внедрять в САКЗ язык текстовой разметки тестовых вопросов (ЯТР). Использование ЯТР позволяет кодировать не только текстово-графическую информацию, но и команды определения типа и структуры тестовых вопросов, а также верные ответы. Управляющие элементы ЯТР называются тегами.
На листинге 2.1 приведен пример тестового вопроса, выполненного на: ЯТР для популярной САКЗ? «Гипертест» [82]. В данном коде зашифрованы текст вопроса и варианты ответов, а также верный ответ типичного тестового вопроса; Недостатками ЯТР «Гипертест» являются нестандартное представление текстовой разметки и невозможность использования форматирования текста внутри вопроса.
Более удачным, по мнению автора, является реализация ЯТР для системы Sydney [53]; Из примера, изображенном на листинге 2.2, видно, что теги текстовой разметки имеют вид, предусмотренный стандартом SGML (Standart Generalised Markup Language) [86].
Автором предлагается использовать в качестве базового языка САКЗ ЯТЗ на базе стандарта Extensible Markup Language (XML). Язык XML [85] в последнее время становится стандартным языком описания документов для различных программных продуктов. В общем случае XML-документы должны удовлетворять следующим требованиям [59]: В заголовке документа помещается объявление XML, в котором указывается язык разметки документа, номер его версии и дополнительная информация. Каждый открывающий тег, определяющий некоторую область данных в документе обязательно должен иметь своего закрывающего "напарника", т.е., в отличие от HTML, нельзя опускать закрывающие тэги. В XML учитывается регистр символов. Все значения атрибутов, используемых в определении тегов, должны быть заключены в кавычки. Вложенность тэгов в -; XML строго контролируется, поэтому необходимо следить за порядком следования открывающих и закрывающих тегов. Вся информация, располагающаяся между начальным и конечными тэгами, рассматривается в XML как данные и поэтому учитываются все символы форматирования (т.е. пробелы, переводы строк, табуляции не игнорируются, как в HTML).
Для обеспечения совместимости с языком HTML предлагается теги форматирования, отвечающие за разметку текстовой и графической информации; взять из HTML, так как стандарт представления тегов HTML соответствует стандарту XML. Подробнее ЯТР, разработанный для- САКЗ «EduGAD Control» [6], будет рассмотрен в четвертой главе данной работы.
Метод шаблонов АТП
Между АТП для олимпиад gj; программированию; и АТП в образовательном процессе имеется два основных отличия; Во-первых, в олимпиадах обычно участвуют люди,, весьма «подкованные» в области программирования; студенты же; составляющие прикладные программы на лабораторных и практических занятиях, зачастую даже не обучаются - . на «программистских» специальностях, то есть зачастую им труднее дается сам процесс кодирования текста программы, чем решение поставленных задач., В о-вторых;. среди студентов: довольно распространены. попытки фальсификации; и «списывания» компьютерных программ. Второй аспект будет рассмотрен в главе 3.3; а для облегчения взаимодействия! преподавателя І со студентами-непрограммистами- автором- в 2000 г. был предложен метод шаблонов проверки компьютерных программ [46]:
Под шаблоном подразумевается программа,, в которой преподавателем уже реализован процесс чтения: входных и выдача выходных данных, студенту остается лишь запрограммировать подпрограммы, реализующие алгоритм задания. Например, имеется некий программный код на языке программирования (ЯП) Си (листинг 3.1). Данная программа выводит на устройство вывода единственную фразу «Привет, имя » (где имя является строкой, поступающей на вход программы) и возвращает нуль, если параметр имя задан, или любое другое число в обратном случае. На листинге 3.2 приведем пример шаблона для этой программы. Как видно при сравнении этих двух листингов, для выполнения задания студенту требуется написать лишь несколько строк программного кода, и преподаватель может легко проверить его. Шаблон программы имеет унифицированные входы и выходы, что позволяет довольно легко автоматизировать процесс ее проверки.
Автором был разработан комплект из семи программных шаблонов на ЯП Паскаль для лабораторных работ по вычислительной математике. Пример подобного шаблона приведен в приложении Б. Дисциплина «вычислительная математика» читается на специальности 220400 ТУСУРа, на лабораторных занятиях. студенты составляют алгоритмы и пишут программы, реализующие численные методы вычислительной математики. Шаблоны лабораторных работ в течении последних двух лет распространяются среди студентов, обучающихся по дистанционной технологии. Студентов не обязывали использовать шаблоны для выполнения лабораторных работ, но в более чем в 80% случаев (около тысячи работ за два года) при написании программного кода они предпочитали использовать предоставленные им шаблоны. Студенты, не пользовавшиеся шаблонами, в основном являлись довольно сильными программистами и предпочитали писать программу полностью своими силами, многие из них использовали ЯЩ отличные от Паскаля.
Таким образом, внедрение метода шаблонов реально облегчает не только работу преподавателя при проверке работ, но и работу студентов при их выполнении.
Выявим требования, предъявляемые к разработке шаблонов программ:
Метод шаблонов может быть применен только для тех учебных дисцип лин, на которых написание компьютерных программ — лишь средство достижение цели, а не цель. Это требование имеет два аспекта. Во-первых, студенты уже должны; пройти курс:. программирования перед использованием; его в прикладных целях, иначе они просто не смогут пользоваться; преимуществом шаблонов. Во-вторых, метод шаблонов не предназначен;для проверки; программ,, выполненных для предметов, где эти самые программы учат создавать, так как.в данном случае студент должен научиться; написанию программного кода «от и до».
Метод шаблонов может быть применен только для несложных программ ныхпроектов: Это трудно формализуемое требование, так как сложно опре делить, что можно \ считать. «сложной» программой; Можно лишь сказать, что программные продукты, имеющие развитый графический! интерфейс пользователя, или выдающие основные данные в графическом виде не пред назначены для автоматизированного тестирования. То есть, данное требова ние можно сформулировать птакіметод шаблонов применим только к про граммам с четко формализуемыми входами и выходами.
Перед внедрением шаблонов необходимо выявить ЯЩ на которых студенты смогут; создавать свои программы. Данный выбор зависит от того, какие : именно ЯП изучались. студентами ранее и і какие ЯП подходят для выполнения поставленных задач. Также необходимо учитывать, что одни ЯП больше подходят для автоматизации проверки программ, написанных на них, другие меньше. По мнению автора, удобнее всего подается автоматизации процесс проверки программ;. написанных на ЯП Сщ так как в Си очень удачно реализован процесс перенаправление потока выходных данных с: одного устройства на другое [24].
Система автоматизированной проверки компьютерных программ EduGAD Programs
САТПv EduGAD Programs первоначально создавалась дляs автоматизации процесса проверки компьютерных лабораторных работ по дисциплине «Вычислительная . математика» на кафедре АСУ ТУ СУР. В дальнейшем система развивалась в плане большей стандартизации; Общая структура САТП EduCAD Programs представлена на рис. 3.2. Для: ее реализации потребовалось, разработать систему интерфейса «программа; -система проверки». Таким интерфейсом обмена фактически являются формализованные правила обмена данными. В; системе EduCAD Programs предусмотрены два типа обмена данными между программой и системой тестирования:; Закрытое тестирование. В данном случае в шаблон программы включе ны все наборы данных для тестирования программы. На,;. вход тестируе мой программы подается только номер тестового набора; Достоинством закрытого типа тестирования является удобство проверки / работоспособ ности программы самим студентом, недостатком — простота фальсифика ции программного кода.. Закрытое тестирование применялось при разра ботке; шаблонов: лабораторных работ «Вычислительная математика» (приложение Б); При открытом тестировании САТП эмулирует ввод реальных данных пользователем. Это достигается переключением стандартного устройства ввода st din, которым по умолчанию является клавиатура, на файл с тестовыми данными. Открытое тестирование может быть, примененої не во всех случаях: там, где в . исходный набор входят данные нестандартного типа (например, арифметическая функция), предпочтительнее использовать закрытое тестирование. Результат работы компьютерных программ, тестируемых в САТП EduCAD ) Programs выводится либо на стандартное устройство вывода stdout (по умол- чанию экран), либо в текстовый файл out. txt. Полученный текстовый файл обрабатывается в системе. Для каждой задачи в банке данных САТП хранится массив входных данных и соответствующий ему массив выходных данных. При тестировании программы система сравнивает полученный в результате работы программы набор выходных данных с тестовым набором; тестирование проводится по всем наборам данных из массива. Численные данные сравниваются с учетом относительной погрешности результата, заданной разработчиком. Результат тестирования программы приведен в приложении В. Формат наборов входных и выходных данных для каждой задачи определяется шаблоном данных: Шаблон данных представляет обычный текстовый файл, в каждой строке которого описывается один элемент набора данных. В таблице 4.1 приведены типы данных, которыми может оперировать система EduCAD Programs. Пример шаблона данных приведен на листинге 4.1. Сами наборы входных и выходных данных также представляются текстовым файлом, созданным по следующим правилам: каждый элемент набора (кроме матриц) располагается на отдельной строке; матрицы располагаются в файле на том же количестве строк, сколько строк элементов они содержат; порядок следования элементов в наборе данных такой же, как и в соответствующем ему шаблоне; элементы данных векторного и матричного типов пишутся через пробел. Пример набора данных, соответствующего шаблону на листинге;4.Г, приведен на листинге 4.2. Необходимо заметить, что в данном примере набор данных за нимает больше строк, чем соответствующий шаблон — матрица из двух строк и трех столбцов занимает четвертую и пятую строки листинга. Блок проверки оригинальности тестируемой программы использует банк данных ранее проверенных работ. Каждая работа однозначно определяется идентификатором задания (например, LAB_VM_1 - первая лабораторная работа по вычислительной математике), ФИО студента и двумя необязательными атрибутами — номером группы и годом сдачи работы. При проверке оригинальности программы система1 сравнивает по алгоритму, приведенному в пункте 3.3, все работы в банке данных с идентификатором задания, совпадающим с идентификатором задания данной, работы. По результатам проверки: на оригинальность оператору выдается отчет, пример которого приведен в приложении В, В дальнейшем планируется создать серверную версию САТП, доступ к которой преподаватель мог бы иметь из сети Интернет.