автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.06, диссертация на тему:Автоматизация процесса разработки и использования многовариантных учебных заданий

кандидата технических наук
Посов, Илья Александрович
город
Санкт-Петербург
год
2012
специальность ВАК РФ
05.13.06
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Автоматизация процесса разработки и использования многовариантных учебных заданий»

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

На правах рукописи

Посов Илья Александрович

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

заданий

05.13.ОС - Автоматизация и управление технологическими процессами и производствами (образование)

Автореферат диссертации на соискание ученой степени кандидата технических наук

2 3 Л?Г 2012

Санкт-Петербург - 2012

005046711

Работа выполнена на кафедре информатики математико-механического факультета Санкт-Петербургского государственного университета.

Научный руководитель:

Официальные оппоненты:

доктор педагогических наук, профессор, Поздняков Сергей Николаевич

Копыльцов Александр Васильевич, доктор технических наук, профессор, РГПУ им. Герцена, заведующий кафедрой информатики

Тимофеев Адиль Васильевич, доктор технических наук, профессор, СПИИРАН,

Заведующий лабораторией информаци ных технологий в управлении и роботот нике

Ведущая организация: Санкт-Петербургский государственный

литехнический университет

Защита состоится 0.9.2012 в 15:30 на заседании диссертационного совета Д 212.227 в Санкт-Петербургском государственном университете информационных технологий, механики и оптики, расположенном по адресу: 197101, Санкт-Петербург, Кронверкский пр. 49, НИУ ИТМО, конференц-зал центра интернет-образования.

С диссертацией можно ознакомиться в библиотеке НИУ ИТМО.

Автореферат разослан 1 августа 2012 г.

Ученый секретарь

диссертационного совета Д 212.227.00, доктор технических наук, профессор

Лисицына Л. С.

Общая характеристика работы

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

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

Самым распространённым примером использования многовариантиых заданий является введённый в России некоторое время назад единый государственный экзамен (ЕГЭ), который служит одновременно выпускным экзаменом из школы и вступительным экзаменом в вузы и ссузы. В ЕГЭ варианты введены для решения указанной проблемы об исключении совместных решений и, тем самым, увеличению объективности его результатов. Помимо ЕГЭ многовариантные задачи используются в других экзаменах, олимпиадах и конкурсах разного уровня.

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

Большинство преподавателей не имеют достаточной квалификации, чтобы автоматизировать процесс создания многовариантиых заданий. Предоставление широкому классу преподавателей доступа к многовариантным заданиям является одним из шагов к решению ещё одной актуальной проблемы — приобщению преподавателей к использованию информационных технологий в своей практике. Особенностью предлагаемого подхода к автоматизации генерации является то, что она создаст задания в классической форме: они выдаются на бумаге во время занятия без компьютеров. Тем самым, внедрение автоматической генерации в практику работы преподавателей позволит познакомить их с возможностями информационных технологий, не требуя при этом изменять привычный процесс проведения занятий, а в будущем, возможно, заинтересоваться и другими возможностями информационных технологий.

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

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

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

2. Анализ возможностей использования систем компьютерной алгебры и компьютерной вёрстки для создания генераторов математических задач.

3. Разработка предметно-ориентироваппого языка, позволяющего использовать системы компьютерной алгебры и компьютерной вёрстки для конструирования генераторов многовариантных заданий.

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

5. Анализ методов создания пакетов многовариантных заданий с помощью готовых генераторов многовариантных заданий преподавателями с разным уровнем квалификации.

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

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

8. Исследование разработанных методов и внедрение результатов работы в учебный процесс.

Научная новизна На защиту выносятся результаты, обладающие научной новизной.

1. Метод создания генераторов па основе предметно-ориентированного языка, поддерживающего использование систем компьютерной алгебры и компьютерной вёрстки.

2. Инструментальное средство для автоматизации процесса подготовки комплектов многовариантных заданий и их вёрстки.

3. Инструментальное средство для создания генераторов пользователями высокой квалификации с помощью предметно-ориентироваппого языка, основанного на ECMAScript и поддерживающего использование системы компьютерной алгебры Maxima.

Практическая значимость Результаты, полученные в диссертации, используются на практике для следующих целей:

1. С помощью методов генерации заданий подготовлены многовариантные задания для использования в рамках ресурса «Математика в школе, XXI

век», разработанного в рамках конкурса НФПК «Разработка Инновационных учобно-мстодичоских комплексов (ИУМК) для системы общего образования».

2. С помощью методов генерации заданий подготовлены варианты задач интернет-олимпиады по математике, проведенной в СПбГУ ИТМО в 2007 и 2009 годах.

3. Технологии генерации используются всеми преподавателями кафедры Высшей Математики 2, факультета компьютерных технологий и информатики СПбГЭТУ «ЛЭТИ».

4. Разработанный подход, методы и инструменты включены в качество раздела магистерского курса «Информационные технологии в образовании и представлении знаний» в СПбГЭТУ «ЛЭТИ».

5. Разработанный подход, методы и инструменты включены в качестве в качестве раздела курса «Технологии разработки обучающих программ» на математико-механическом факультете СПбГУ.

6. Разработанная концепция, предметно-ориентированный язык и автоматизированная технологическая цепочка реализована в рамках открытого ии-тернет-приложенин и используется преподавателями Санкт-Петербурга.

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

Апробация результатов работы. Основные положения диссертационной работы докладывались па научно-методических конференциях: Международный форум «Современное образование: содержание, технологии, качество», СПбГЭТУ 2010, научно-методическая конференция «Дистанционное обучение — обра-зовтельная среда XXI века», Минск, 2011, конференция преподавательского состава СПбГЭТУ «ЛЭТИ» (2011), труды научно-технической конференции «Компьютерное моделирование 2009» (23-24 июня 2009 года, Санкт-Петербург, Политехнический университет), на XXXIX Научной и учебио-методичсской конференциях СПбГУ ИТМО в 2010 г., на городском семинаре «Компьютерные инструменты в преподавании математики» в 2008-2010 г.г., на курсах повышения квалификации преподавателей математики, проводимых под эгидой комитета по образованию Санкт-Петербурга (2012), на семинаре для учителей информатики в Академии постдипломпого профессионального образования (2012), на 12-ом международном конгрессе по математическому образованию 1СМЕ-12 (2012).

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

Методы исследования. В работе использованы дискретная математика, теория символьных вычислений, методы проектирования программных систем,

языков предметной области и построения графических человеко-машинных интерфейсов.

Публикации. Материалы диссертации опубликованы в 10 печатных работах, из них 5 статей в рецензируемых журналах [1-5], 3 тезисов докладов па конференциях [6-8], 2 статьи в профильных журналах [9, 10].

Личный вклад автора Содержание диссертации и основные положения, выносимые на защиту, отражают персональный вклад автора в опубликованные работы. Подготовка к публикации некоторых полученных результатов проводилась совместно с соавторами, причём в шести публикациях из десяти вклад автора был определяющим [2, 4, 5, 7-9]. Все представленные в диссертации результаты получены лично автором.

Структура и объем диссертации Диссертация состоит из введения, обзора литературы, 4 глав, заключения и библиографии. Общий объем диссертации 120 страниц, из них 110 страниц текста, включая 20 рисунков. Библиография включает 40 наименований на 2 страницах.

Содержание работы

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

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

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

1. Параметры генерации задания;

2. Параметр инициализации генератора. В качестве результата генератор возвращает

1. Данные для формирования условия задания;

2. Данные для формирования ответа к заданию.

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

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

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

На рисунке 1 приведен пример многовариантной контрольной работы (пакета многовариантных заданий). Каждый вариант состоит из трёх задач, каждая задача имеет свой набор входных данных в каждом из вариантов.

Пир. I 1. Н ШЛ1Г < * 2. IL-ifi.um! cvmmv pii.ut. 'чуш ч.к'н рала «Л ; ¿.. 3. И im II 1*1 е 1111 1 11 -- -Г Ц^д"' найдинч G<s. Dap. 2 1. Hall лита \lai ^Т,3;-*— 2. Паилиз*' сумму ряла, r-слп обшиП члгп iui.u 3. П п-.*-лсдог5л-:*?лы1<.<-ти - ш-Лдиге

Пар. 3 1. Ibntjr « ^ ""1 :V ■ * 2. Найдите cv.uuv p.'t/ta. с?с/ш iCimui *vit:ii рдла 3. IJ IK " .1'', им: t . |ы|' u ni п * - м;»П;нпч НаХ». 4 1. i r '-»i 2. НйЛлМТ*» t'VfcJyv рЯЛ'*, ОС.Ш1 оС)!ЩШ ЧЛРН рялд 3. i.i 11'I it'jiuwи 2(—Ljnrf — ;' n.uVur;" c-..

Bnp. 5 1. напдго.)^^""^;;;?;^'-'1' 2. Н;дйд1П-« (умл?) pи/да , »'с ли r/irnurt член рядя 3. 0 l'tof.' J К'ДО К«Ч'"J ТЬИОС'П 1 li\-1 )ftJ7. 4 Н»ЙЛТ1?« Я ¿г.. Hap. В 1. H«n„ taS^S 2. Нлй;дпт? ryxurv еглн г»5шиП и.уж:п />Я4Л 3. В и-хме/ютгч'лыкн-ти 2(— - —- няй.-игг«.' «зо-

Bap- r 1 l г» Я ч .«-«•,. --.1.!.?^---- Вар. S

Рисунок 1 - Пример миогонариантной контрольной работы

Из работ посвященных автоматической генерации задач для нашего исследования наибольший интерес представляют работы Башмаковых «Разработка компьютерных учебников и обучающих систем» и Кручнина «Генераторы в компьютерных учебных программах». В монографии Башмаковых впервые формально вводятся понятия генерации, приводится классификация генераторов и примеры методов генерации для разных учебных дисциплин. Монография Кручинииа посвящена исключительно автоматической генерации. Помимо обсуждения понятия генерации, монография говорит о важности использования комбинаторных объектов и вводит понятие дерева И/ИЛИ, на основе которого можно генерировать широкий класс комбинаторных объектов.

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

Последний класс публикаций представляет собой домашние страницы преподавателей, на которых они рассказывают о своём опыте создания генераторов

для своих педагогических целей. В одном из генераторов, работающем на базе текстового процессора Microsoft Word, существует возможность генерации условий в формате ЖЩХ. Это говорит о важности этого формата, и это лишний раз оправдает наш выбор Ш^Х как основной используемой системы компьютерной вёрстки. Недостатком некоторых ресурсов являются длинные и сложные руководства по установке системы генерации. Действительно, обычно генерация подразумевает использование большого количества программ, которые может быть трудно установить неквалифицированному пользователю. В подходе, разработанном в данном диссертационном исследовании, авторам генераторов предлагается работать со средой разработки генераторов, системой Ш^Х, системой компьютерной алгебры. Это оправдывает предложение позволить вести разработку генераторов с помощью Интернет-сервиса, на котором все необходимые программы уже установлены.

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

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

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

1. Открытость: системой должен суметь воспользоваться любой заинтересованный преподаватель.

2. Использование систем компьютерной верстки (EfTgX).

3. Наполнение базы заданий преподавателями, работающими с ситемой, и возможность поиска в ней.

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

5. Поддержка создания генераторов преподавателями-программистами.

6. Связь с системами компьютерной алгебры (Mathematica, Maple, Maxima) для преподавателей программистов.

7. Поддержка создания генераторов преподавателями, не имеющими опыта программирования.

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

к созданию генераторов. На основе предложенных подходов было разработана классификации генераторов.

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

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

Условие: С помощью алгоритма Евклида вычислите

1 наибольший общий делитель чисел °/,а и °/0Ь Ответ: Н0Д(%а, %Ь) = '/А

а = случайное от 1 до 100 b = случайное от 1 до 100 d = Н0Д(а, Ь)

проверить, что: d >= 3 d <= 9

a mod b != 0 b mod a != 0

Рисунок 2 - Пример шаблона

В первом и втором разделе заданы условие и ответ к задаче. Символы, перед которыми написан знак процента, в каждом варианте условия заменяются на конкретные числа. После задания шаблонов условия и ответа перечисляются методы формировании параметров, а и b выбираются как случайные числа от 1 до 100, d выбирается как наибольший общий делитель чисел а и Ь. Условия на параметры нужны, чтобы генерировать задачи одинаковой заранее заданной сложности. Более правильным было бы указать условие на параметры, что количество шагов в алгоритме Евклида находилось бы в определённом диапазоне, например, от 4 до 5. Мы не готовы реализовывать здесь полностью алгоритм

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

Редакторы генераторов. Идею предметно-ориентированных языков для создания генераторов можно значительно упростить, если сузить предметную область до какого-то небольшого класса заданий некоторой учебной дисциплины, или до некоторого одного способа генерации. Кроме того, полностью заменить редактор графическим пользовательским интерфейсом. Для создания генератора преподаватель запускает определённую программу, с помощью пользовательского интерфейса выбирает настройки будущего генератора, нажимает кнопку «создать» и получает генератор. Безусловным положительным свойством редакторов генераторов является их лёгкость в использовании, но такие редакторы требуют серьёзной предварительной работы программистов для их создания, кроме того, каждый отдельный редактор позволяет создавать только узкий класс задач.

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

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

В третьей главе диссертационной работы перечислены требования к предметно-ориентированному языку программирования, используемому для создания генераторов, и описан язык программирования, основанный па ЕСМАЭспр^ который удовлетворяет указанным требованиям.

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

1. Универсальность языка, т.е. возможность реализовать произвольный алгоритм.

2. Отсутствие необходимости решения инфраструктурных задач, т.е. разработчик реализует только алгоритм генерации.

3. Расширенные возможности по работе с текстами.

4. Доступ к генераторам случайных чисел и генераторам комбинаторных объектов.

5. Связь с системами компьютерной алгебры.

6. Расширяемость с помощью самостоятельно создаваемых библиотек

7. Возможность отладки: отладочный вывод, просмотр результата в том же виде, как его увидят учащиеся.

8. Лёгкость изучения.

9. Наличие среды разработки.

10. Кроссгшатформешюсть.

11. Безопасность.

На основе этих требований был разработан предметно-ориентированный язык программирования. На рисунке 3 изображена схема работы пользователя с языком.

Среда разработки

Любая среда с поддержкой ECMAScript Плагин (необязательно)

/ Текст

3

программы

Мета информация Код генератора

Интерпретатор

Движок ECMAScript

Стандартная библиотека

Генерация случайных чисел и комбинаторных объектов

Генерация текста на естественном языке

Доступ к CAS Отладка

Дополнительные библиотеки

CAS Maxima Mathematica Maple

Рисунок 3 - Разработка генераторов с помощью предметно-ориентированного языка

Для реализации предметно-ориентированного языка можно выбрать уже существующий язык программирования, расширить с номощыо библиотек и, по возможности, сделать синтаксис стандартных конструкций как можно более простим и естественным. Некоторые языки рассчитаны на то, чтобы на их основе создавались предметно-ориентированные языки. В первую очередь такими языками являются Groovy, Scala, Nemerle. Другим подходом к созданию предметно-ориентированных языков является полностью самостоятельная реализация, она включает себя реализацию компилятора и среды разработки. Возможности такого подхода неограниченны, но трудоёмкость создания языка слишком велика.

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

своём варианте использования язык известен под название JavaScript, и дальше мы будем называть его так, потому что это название значительно привычнее предыдущего.

Использование JavaScript позволяет удовлетворить сразу же большее количество требований, предъявленных к языку. Он универсален, общепризнанно лёгок для изучения, для него созданы среды разработки, включая даже среды разработки, работающие в рамках Интернет-обозревателей. Он кроссилатформе-нен: кроме того, что он может исполняться в Интернет-обозревателе, для него существует кросплатформенные движки такие как Rhino и V8. Реализация безопасности при запуске кода на JavaScript внутри Интернет-обозревателя предоставляет определённые трудности, поэтому её предлагается использовать только в ограниченном числе случаев.

Приведем пример программы на разработанном языке с пояснениями, более подробный разбор возможностей представлен в тексте диссертации. Текст программы приведён на рисунке 4. Он составляет задачу про вычисление корней квадратного уравнения. На одной из домашних страниц преподавателей описан опыт создания генератора подобной задачи. Реализация на паскале занимает более сотни строк, и подразумевает самостоятельный запуск ЖЩХ для получения окончательных результатов.

Мы не будем обсуждать подробно все используемые возможности, а только укажем на них.

Первая инструкция info О; обязательно должна присутствовать в любом генераторе. В качестве аргумента функция получает объект с универсальной информацией о генераторе, которая не изменяется между запусками генератора, в данном случае это информация о параметрах генерации.

Переменные statement и answer задаются в каждом генераторе и содержат информацию, соответственно, о тексте условия и ответа к задаче. Задать переменные можно в любой момент, но для удобства чтения кода предлагается всегда писать их вначале. Символ % помечает генерируемые элементы в условии и ответе. Так как в переменных statement и answer процентом помечены переменные р, xl и х2, то мы обязаны задать значения этим переменным.

Функция rnd_not_0(a, b) выдает случайное число в заданном диапазоне, исключая ноль. Функция assert () проверяет верность условия, и в случае, если условие неверно, полностью прекращает генерацию и запускает сё сначала. Заметим, что использование этой функции позволяет программировать в стиле, повторяющем стиль гипотетического шаблона на рисунке 2.

Метод logO используется для отладочного вывода, метод $() демонстрирует возможности интерполяции строк, методы test_notО, mevalO, tex() предоставляют доступ к системе компьютерной алгебры, все, что написано внутри них, вычисляется в рамках системы Maxima. Кроме того, пример демонстрирует, что программисту доступны все возможности языка JavaScript, в частности функции.

Функция tex() превращает выражение в формате системы компьютерной алгебры в формат ВД^Х, дополнительно производя все вычисления и упрощения.

info ("С

'args':{'int_answers': [true, 'Уравнение с целыми корнями']}

log(int_ans«ers, 'генерировать целые корни');

statement = 'Решите квадратное уравнение $'/,р = 0$'; answer = '$х_1 = '/.xl$, $х_2 = '/.х2$';

function getlntegerEqO {

xl = rnd_not_0(-10, 10); x2 = rnd_not_0(-10, 10); assert(xl != x2 № xl != -x2); p = $('expand((x - У.х1)*(х - 7.x2))');

}

function getFractionalEqO {

xl = rnd_not_0(-5, 5) + '/' + rnd(1, 9); x2 = rnd_not_0(-5, 5) + '/' + rnd(l, 9); assert(test_not($('absC/,xl) = abs('/.x2)'))) ; p = meval($('num(rat(Cx - '/.xl)*(x - '/.x2)))'));

}

if (int_answers) getlntegerEqO ;

else getFractionalEqO;

p = tex(p); xl = tex(xl); x2 = tex(x2);

Рисунок 4 - Генерация задачи на поиск корней квадратного уравнения

Её аналог tex_no_eval() не совершает ни упрощений, ни вычислений. Чтобы пояснить происходящие преобразования, в качестве примера приведем преобразование дробей: tex('6/8') преобразуется в {{3}\over{4>}.

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

Среда разработки —> Генератор

V

Интерпретатор

Параметры генерации

Параметры инициализации

Генератор (другой формат)

Рисунок 5 - Общая схема предлагаемой реализации системы

На рисуике 5 изображены основные компоненты системы и их назначение. Среда разработки позволяет создавать генераторы. Различные среды разработки отличаются способами, с помощью которых они позволяют создавать генераторы и, как следствие, доступны различным классам пользователей. Другим следствием различия сред разработки является разнообразие форматов представления генераторов в системе. Интерпретатор позволяет запускать процесс генерации с помощью одного из генераторов. Разные интерпретаторы способны запускать генераторы разных форматов. Результатом работы интерпретатора является набор условий и ответов для некоторого мпоговариантного задания. Кроме того, в результате работы интерпретатора может быть создан генератор, соответствующий схожей многовариантоной задаче, но имеющий другой формат. Это необходимо в ситуациях, когда генератор предполагается использовать в окружении, в котором нет соответствующего его формату интерпретатора. Комплектатор — это компонент системы, который преобразует набор условий задач в тест. В случае создания печатных вариантов тестов именно комплектатор запускает ВТ^Х для их создания.

На рисунке 6 изображено распределение компонентов системы между компьютером пользователя и общедоступным сервером. Это распределение демонстрирует, что пользователь может использовать систему только с помощью интернет-обозревателя. В случае отсутствия быстрого подключения к Интернету ту же функциональность можно получить с помощью установленного на компьютере программного обеспечения (ПО), созданные генераторы далее могут быть вручную переданы на сервер. Установка ПО может представлять трудность.

Компьютер пользователя Браузер

Среды разработки

Среды разработки

Интерпретаторы

Комплектаторы

CAS LaTeX

Общедоступный сервер

Интерпретаторы

Комплектатор

База генераторов

Тесты

пользователей

CAS

LaTeX

Рисунок G - Общая схема предлагаемой реализации системы

Разработка и отладка генераторов а также создание документации происходит с помощью среды разработки. Запуск генератора для целей отладки состоит из двух шагов: генерация условий и формирование печатного варианта заданий. Второй шаг является необязательным, потому что для поиска ошибок без просмотра результата иногда можно обойтись. Для первого шага необходимо, чтобы генератор вариантов мог быть запущен с помощью интерпретатора на стороне клиента или сервера. Если интерпретатор позволяет запускать генераторы на разработанном языке, он должна иметь связь с системой компьютерной алгебры (CAS). Для второго шага — создания печатных вариантов — необходимо наличие установленной системы ВД^Х. Если па компьютере пользователя ее нет, данные необходимо передать на сервер. Мы предлагаем считать, что па сервер передаются не сгенерированные условия задач, а генератор в том формате, который понятен серверу. Например, если сервер умеет запускать только выбирающие генераторы, то достаточно, если среда разработки будет превращать свои генераторы в выбирающие. Выбирающие генераторы практически универсальны, любой генератор без параметров генерации может быть преобразован в выбирающий. Помимо прочего выбирающие генераторы просты для реализации и не создают липшей нагрузки па сервер.

Таблица 1 - Сравнение системы с аналогами

д УЯП M Док I Кр Лев Ссрг Степ Нек Фип

1) Расширяемость + - - - + + + + + -

2) Расшир. некв. п-ми + - - - - + - - + -

3) ПОЯ + + + + + -

4) Составление тестов + + + + + +

5) Печать + + + -H + - - - + + +

6) Произвольный алгоритм + + + + + - - + - +

7) Инфрастр. проблемы + - - + + + + ■t- + +

8) Формулы и символы + - + - + + - + + +

9) CAS + - + - - - - - - -

10) Общедоступность + + +

11) Обмен генераторами + - -

12) Онлайн генерация + - - + - - - - - -

13) Онлайн прогр. ген. +

После того как генератор создан и отлажен, его необходимо записать в базу генераторов на сервере, в этот момент происходит его индексирование, и он становится доступен для поиска. С помощью сайта генератор находит преподаватель и добавляет его в один из своих тестов. При добавлении генератора в тест ему необходимо задать параметры генерации, это также происходит на сайте и данные о параметрах сохраняется в тесте. Составление печатного варианта теста происходит с помощью комплектатора. Он запускает генераторы, подготавливает DTfrjX документ и запускает его компиляцию. Поддержка генераторов их авторами может производиться за счёт того, что сайт позволяет оставлять комментарии к генераторам.

Отличие системы от аналогов сведены в таблице 1. Д — система, разработанная в данном диссертационном исследовании. УЯП — универсальный язык программирования, такой как Java, Pascal и т.п., М — коммерческая система компьютерной алгебры Wolfram Mathematica, Док — программирование в рамках текстовых процессоров. I — это интернет сайты mytestbook. com и www.math-aids.com. Остальные системы описаны в литературе или выложены на страницах преподавателей. Плюс означает наличие возможности, минус — отсутствие.

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

2. Расширяемость неквалифицированными пользователями: добавление генераторов без программирования или с использованием простейшего языка.

3. Использование предметно-ориентированного языка создания генераторов.

4. Использование неквалифицированными пользователями: возможность создания собственных тестирований неквалифицированным пользователем из предлагаемых генераторов.

5. Вывод тестирования на бумагу.

С. Реализация произвольного алгоритма генерации.

7. Отсутствие необходимости решать инфраструктурные проблемы.

8. Простота создания формул и использования математических символов..

9. Связь с системами компьютерной алгебры.

10. Общедоступность: системой может воспользоваться любой преподаватель

11. Обмен генераторами: использование генераторов, найденных в базе и созданных незнакомыми людьми

12. Создание тестов в Интернете без установки ПО.

13. Разработка генераторов в Интернете без установки ПО.

Заключение В результате диссертационных исследований получены следующие результаты:

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

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

3. Предложен метод создания генераторов на основе предметно-ориентированного языка, поддерживающего использование систем компьютерной алгебры и компьютерной вёрстки.

4. Создано инструментальное средство для автоматизации процесса подготовки комплектов многовариантных заданий и их вёрстки.

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

6. Создано инструментальное средство для создания генераторов пользователями высокой квалификации с помощью предметно-ориентированного языка, основанного на ECMAScript и поддерживающего использование системы компьютерной алгебры Maxima.

7. С помощью методов генерации заданий подготовлены многовариантные задания для использования в рамках ресурса «Математика в школе, XXI век», разработанного в рамках конкурса НФПК «Разработка Инновационных учебно-методических комплексов (ИУМК) для системы общего образования».

8. С помощью методов генерации заданий подготовлены варианты задач интернет-олимпиады по математике, проведенной в СПбГУ ИТМО в 2007 и 2009 годах.

Список публикаций

1. Посов И. А., Рукшин С. Е. Модель оценки учебной деятельности учащихся по результатам решения задач // Компьютерные инструменты в образовании. 2011. № 3. С. 31 41. [Входит в перечень ВАК].

2. Посов И. А., Рукшин С. Е. Генерируемые задачи в системе для организации удаленной работы с задачами // Научно-технический вестник СПБГУ ИТ-МО. 2010. № 5(69). С. 130. URL: http://books.ifmo.ru/ntv/vipuski.php? IssueID=2010_05'/.28697,29. [Входит в перечень ВАК].

3. Посов И. А., Рукшин С. Е. Архитектура системы проведения удаленных соревнований и организации работы с математическими задачами // Научно-технические ведомости СПбГПУ. 2010. № 3(101). С. 49-53. [Входит в перечень ВАК].

4. Посов И. А. Программирование генераторов задач // Компьютерные инструменты в образовании. 2010. № 3. С. 19-31. [Входит в перечень ВАК].

5. Посов И. А. Web-сайт для создания и обмена генерируемыми задачами но математике // Международный журнал Образовательные технологиии и общество. 2010.-июль. Т. 13, №3. С. 360-373. URL: http://ifets. ieee.org/ russian/perodical/V_133_2010EE .html. [Входит в перечень ВАК].

6. Перченок О. В., Поздняков С. Н., Посов И. А. Система электронного обучения, обеспечивающая автоматическую проверку решения геометрических задач по описанию их условий // Материалы VII международной научно-методической конференции «Дистанционное обучение — образовательная среда XXI века», Минск. 2011. С. 295-296.

7. Посов И. А. Использование систем компьютерной алгебры при автоматической генерации индивидуальных заданий по математике // Материалы VII международной научно-методической конференции «Дистанционное обучение — образовательная среда XXI века», Минсктсльная среда XXI века», Минск. 2011. С. 293-294.

8. Посов И. А., Смирнов И. Б. Интернет-сервис для хранения базы генерируемых задач по математике // Современное образование: содержание, технологии, качество: материалы международного форума (21-22 апреля, СПб), — СПбГЭТУ. 2010. Т. 2. С. 84-85.

9. Посов И. А. Автоматическая генерация задач // Компьютерные инструменты в образовании. 2007. № 1. С. 54-62.

10. Паньгин А. А., Поздняков С. Н., Посов И. А., Рыбин С. В. Возможности информационно-поисковой системы учебно-методических материалов SCISEARCH // Компьютерные инструменты в образовании. 2007. № 4. С. 63-67.

Подписано в печать 06.07.2012 Формат 60x90/16 Бумага офсетная. Усл. печ. л. 1,0 Тираж 150 экз. Заказ 316

Отпечатано в типографии «Адмирал» 199178, Санкт-Петербург, В.О., 7-я линия, д. 84 А

Оглавление автор диссертации — кандидата технических наук Посов, Илья Александрович

Введение

Глава 1. Генерация задач.

1.1. Генерируемые задачи и генераторы.

1.1.1. Постановка проблемы

1.2. Обзор литературы.

1.3. Основная терминология.

1.4. Выводы к первой главе.

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

2.1. Жизненный цикл генератора задач.

2.2. Идея генерации

2.2.1. Выбор алгоритма генерации.

2.3. Разработка генератора.

2.3.1. Программируемые генераторы

2.3.2. Параметрические генераторы.

2.3.3. Редакторы генераторов.

2.3.4. Выбирающие генераторы.

2.4. Отладка генераторов.

2.5. Создание документации пользователя.

2.6. Индексирование генератора в базе генераторов

2.7. Настройка генератора в соответствии с педагогической задачей.

2.8. Эксплуатация

2.9. Сопровождение

2.10. Выводы ко второй главе

Глава 3. Язык создания генераторов

3.1. Требования к языку создания генераторов.

3.1.1. Универсальность языка программирования.

3.1.2. Решение инфраструктурных задач.

3.1.3. Возможности по работе с текстом.

3.1.4. Генераторы случайных чисел и комбинаторных объектов

3.1.5. Связь с системами компьютерной алгебры.

3.1.6. Создание и использование библиотек.

3.1.7. Возможность отладки

3.1.8. Легкость изучения

3.1.9. Наличие среды разработки

3.1.10. Кроссплатформенность.

3.1.11. Безопасность

3.2. Реализация языка.

3.2.1. Выбор базового языка.

3.2.2. Обзор языка Possum.

3.2.3. Структура программы.

3.2.4. Функция info()

3.2.5. Функция assert ()

3.2.6. Интерполяция строк.

3.2.7. Функция log()

3.2.8. Случайные комбинаторные объекты.

3.2.9. Связь со СКА.

3.2.10. Создание и использование библиотек.

3.3. Выводы к третьей главе.

Глава 4. Реализация среды создания и использования генераторов

4.1. Общий обзор системы.

4.1.1. Генератор, Ресурсы.

4.1.2. Интерпретатор

4.1.3. Многовариантные тесты, параметры генерации и генератор с параметрами. редактор многовариантных тестов

4.1.4. Среда разработки, конфигурация отладки, отладочная информация

4.1.5. Комплектатор.

4.1.6. Коллекция генераторов

4.1.7. Пользователь.

4.1.8. Распределение компонентов системы между сервером и компьютером пользователя.

4.2. Реализация интерпретатора языка Possum.

4.2.1. Выбор способа реализации.

4.2.2. Особенности реализации.

4.3. Выводы к четвертой главе.

Введение 2012 год, диссертация по информатике, вычислительной технике и управлению, Посов, Илья Александрович

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

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

Самым распространённым примером использования многовариантных заданий является введённый в России некоторое время назад единый государственный экзамен (ЕГЭ), который служит одновременно выпускным экзаменом из школы и вступительным экзаменом в вузы и ссузы. В ЕГЭ варианты введены для решения указанной проблемы об исключении совместных решений и, тем самым, увеличению объективности его результатов. Помимо ЕГЭ многовариантные задачи используются в других экзаменах, олимпиадах и конкурсах разного уровня.

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

Большинство преподавателей не имеют достаточной квалификации, чтобы автоматизировать процесс создания многовариантных заданий. Предоставление широкому классу преподавателей доступа к многовариантным заданиям является одним из шагов к решению ещё одной актуальной проблемы — приобщению преподавателей к использованию информационных технологий в своей практике. Особенностью предлагаемого подхода к автоматизации генерации является то, что она создаёт задания в классической форме: они выдаются на бумаге во время занятия без компьютеров. Тем самым, внедрение автоматической генерации в практику работы преподавателей позволит познакомить их с возможностями информационных технологий, не требуя при этом изменять привычный процесс проведения занятий, а в будущем, возможно, заинтересоваться и другими возможностями информационных технологий.

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

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

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

2. Анализ возможностей использования систем компьютерной алгебры и компьютерной вёрстки для создания генераторов математических задач.

3. Разработка предметно-ориентированного языка, позволяющего использовать системы компьютерной алгебры и компьютерной вёрстки для конструирования генераторов много вариантных заданий.

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

5. Анализ методов создания пакетов многовариантных заданий с помощью готовых генераторов многовариантных заданий преподавателями с разным уровнем квалификации.

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

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

8. Исследование разработанных методов и внедрение результатов работы в учебный процесс.

Научная новизна На защиту выносятся результаты, обладающие научной новизй.

1. Метод создания генераторов на основе предметно-ориентированного языка, поддерживающего использование систем компьютерной алгебры и компьютерной вёрстки.

2. Инструментальное средство для автоматизации процесса подготовки комплектов многовариантных заданий и их вёрстки.

3. Инструментальное средство для создания генераторов пользователями высокой квалификации с помощью предметно-ориентированного языка, основанного на ECMAScript и поддерживающего использование системы компьютерной алгебры Maxima.

Практическая значимость Результаты, полученные в диссертации, используютна практике для следующих целей:

1. С помощью методов генерации задаиий подготовлены многовариантные задания для использования в рамках ресурса «Математика в школе, XXI век», разработанного в рамках конкурса НФПК «Разработка Инновационных учебно-методических комплексов (ИУМК) для системы общего образования».

2. С помощью методов генерации заданий подготовлены варианты задач интернет-олимпиады по математике, проведенной в СПбГУ ИТМО в 2007 и 2009 годах.

3. Технологии генерации используются всеми преподавателями кафедры Высшей Математики 2, факультета компьютерных технологий и информатики СПбГЭТУ «Л ЭТИ».

4. Разработанный подход, методы и инструменты включены в качестве раздела магистерского курса «Информационные технологии в образовании и представлении знаний» в СПбГЭТУ «ЛЭТИ».

5. Разработанный подход, методы и инструменты включены в качестве в качестве раздела курса «Технологии разработки обучающих программ» на математико-механическом факультете СПбГУ.

6. Разработанная концепция, предметно-ориентированный язык и автоматизированная технологическая цепочка реализована в рамках открытого интернет-приложения и используется преподавателями Санкт-Петербурга.

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

Апробация результатов работы. Основные положения диссертационной работы докладывались на научно-методических конференциях: Международный форум «Современное образование: содержание, технологии, качество», СПбГЭТУ 2010, научно-методическая конференция «Дистанционное обучение — образовтельная среда XXI века», Минск, 2011, конференция преподавательского состава СПбГЭТУ «ЛЭТИ» (2011), труды научно-технической конференции «Компьютерное моделирование 2009» (23-24 июня 2009 года, Санкт-Петербург, Политехнический университет), на XXXIX Научной и учебно-методической конференциях СПбГУ ИТМО в 2010 г., на городском семинаре «Компьютерные инструменты в преподавании математики» в 2008-2010 г.г., на курсах повышения квалификации преподавателей математики, проводимых под эгидой комитета по образованию Санкт-Петербурга (2012), на семинаре для учителей информатики в Академии постдипломного профессионального образования (2012), на 12-ом международном конгрессе по математическому образованию 1СМЕ-12 (2012).

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

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

Публикации. Материалы диссертации опубликованы в 10 печатных работах, из них 5 статей в рецензируемых журналах [19. 20. 22-24] , 3 тезисов докладов на конференциях [16, 21, 25]. 2 статьи в профильных журналах [15, 18].

Личный вклад автора Содержание диссертации и основные положения, выносимые на защиту, отражают персональный вклад автора в опубликованные работы. Подготовка к публикации некоторых полученных результатов проводилась совместно с соавторами, причём в шести публикациях из десяти вклад автора был определяющим [18-21, 23, 25] . Все представленные в диссертации результаты получены лично автором.

Структура и объем диссертации Диссертация состоит из введения, обзора литературы, 4 глав, заключения и библиографии. Общий объем диссертации 120 страниц, из них 110 страниц текста, включая 20 рисунков. Библиография включает 40 наименований на 2 страницах.

Заключение диссертация на тему "Автоматизация процесса разработки и использования многовариантных учебных заданий"

4.3. Выводы к четвертой главе

1. Система поддержки генерации должна быть способна работать и на общедоступном сервере, и на компьютере пользователя. В первом случае системой можно пользоваться через браузер без установки каких-либо дополнительных программ, в частности ИТ^Х и систем компьютерной алгебры, во втором случае, появляется возможность использовать полноценные среды разработки генераторов и работать без подключения к Интернету. Большинство компонентов системы имеют локальную и удаленную версию, причем локальные компоненты могут пользоваться не только локальными, но иногда и удаленными компонентами.

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

3. Создание генераторов в указанном формате происходит с помощью сред разработки, расположенных, как и другие компоненты системы, либо на компьютере пользователя, либо на сервере. Во втором случае работа с ними происходит через браузер. Важным примером среды является среда разработки генераторов на языке Possum. При работе в браузере используется один из существующих браузерных редакторов кода, имеющий как минимум возможность подстветки синтаксиса. При работе на компьютере в качестве редактора может использоваться любая популярная среда разработки на JavaScript, такая как Eclipse или IntelliJ IDEA. Разрабатывать генераторы можно либо с помощью специальным образом настроенной среды, либо с помощью заранее заготовленных модулей расширений для этих сред, которые позволяют проделывать все 11 астро й к и автом ат и ческ и.

4. Реализация интерпретатора языка Possum основана па открытом движке Rhino, который предполагает программирование на Java. Определенную сложность представляет связь с системой компьютерной алгебры Maxima, для которой не предусмотрено прямых способов общения с внешними программами.

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

6. Возможность генераторов иметь параметры усложняет проектирование практически каждого компонента системы, но с большинством возникающих проблем удается справит!).

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

Заключение

В проведенном исследовании поставленной проблемы получены следующие результаты:

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

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

3. Предложен метод создания генераторов на основе предметно-ориентированного языка, поддерживающего использование систем компьютерной алгебры и компьютерной верстки.

4. Создано инструментальное средство для автоматизации процесса подготовки комплектов многовариантных заданий и их верстки.

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

6. Создано инструментальное средство для создания генераторов пользователями высокой квалификации с помощью языка, основанного на ECMASeript и поддерживающего использование системы компьютерной алгебры Maxima.

7. С помощью методов генерации заданий подготовлены многовариантные задания для использования в рамках ресурса «Математика в школе, XXI век», разработанного в рамках конкурса НФПК «Разработка Инновационных учебно-методических комплексов (ИУМК) для системы общего образования».

8. С помощью методов генерации заданий подготовлены варианты задач интернет-олимпиады по математике, проведенной в СПбГУ ИТМО в 2007 и 2009 годах.

Отличия системы от наиболее характерных аналогов сведены в таблице 4.1. Д — система, разработанная в данном диссертационном исследовании. УЯП — универсальный язык программирования (Java, Pascal, .), М — Wolfram Mathematica или аналогичная СКА, Док — Wold или Excel или др. текстовый процессор. I — сайты, аналогичные mytestbook.com. Плюс означает наличие возможности, минус — отсутствие.

Библиография Посов, Илья Александрович, диссертация по теме Автоматизация и управление технологическими процессами и производствами (по отраслям)

1. Амзараков М. Б. Автоматическая генерация вариантов педагогиеческого теста // Труды 1. Международной конференции-выставки «Информационные технологии в образовании» («ИТО-99»), 9-12 ноября 1999 г. Москва. 1999.

2. Ашкинази J1. А., Гришкина М. П. Генератор задач по физике // Московский государственный институт электроники и математики (МИЭМ). 2007. URL: http://ito.edu.ru/2007/Moscow/II/l/II-1-6899.html.

3. Башмаков А. И. Башмаков И. А. Разработка компьютерных учебников и обучающих систем. М.: Издательский дом «Филинъ», 2003. С. 616.

4. Беляев К. В. Об автоматической генерации закрытых тестовых заданий // Обозрение прикладной и промышленной математики. М.: Издательство «ТВП». 2005. Т. 12. С. 912-913.

5. Борисов С. И. Язык представления тренажеров для решения задач по высшей математике // Открытое и дистанционное образование. 2004. № 4. С. 57-69.

6. Гагарина Д. А. Разработка тестирующих систем для гуманитарного образования // Интернет и современное общество: Труды IX Всероссийской объединенной конференции. СПб: Филологический ф-т СПбГУ, 2006. С. 59-60.

7. Дмитриев С. Языково-ориентированное программирование: следующая парадигма // RSDN Magazine. 2005. № 5.

8. Кирсанов М. Н. Генератор задач по теоретической механике и математике. 2012. URL: http://vuz.exponenta.ru

9. Кнут Д. Э. Искусство программирования. М.:«Вильямс». 2007-8. Т. 2.

10. Конопко К. С. Некоторые проблемы создания и использования DSL и как они решаются в среде разработки JetBrains MPS / / Компьютерные инструменты в образовании. 2009. № 6. С. 22-30.

11. Кручинин В. В. Генераторы в компьютерных учебных программах. Томск: Изд-во Том. ун-та, 2003. С. 200. URL: http://fdo.tusur.ru/articles/docs/ 4011c3e688289belb8975fа770963703.pdf.

12. Кручинин В. В. Методы построения алгоритмов генерации и нумерации комбинаторных объектов на основе деревьев И/ИЛИ. Томск: Изд-во «В-Сиектр». 2007. С. 200.

13. Левинская М. А. Автоматизированная генерация заданий по математике для контроля знаний учащихся // Educational Technology & Society. 2002. Т. 5(4).1. С. 214-221.

14. Некин Л. Универсальный генератор задач Math-o-Gen. 2008. URL: http://nekin. narod.ru/math/n003.htm.

15. Паньгии А. А. Поздняков С. Н. Посов И. А., Рыбин С. В. Возможности информационно-поисковой системы учебно-методических материалов SCISEARCH // Компьютерные инструменты в образовании. 2007. № 4. С. 63-67.

16. Поляков К. ЕГЭ по информатике (2012). 2012. URL: http://kpolyakov.narod.ru/ school/ege.htm.

17. Посов И. А. Автоматическая генерация задач // Компьютерные инструменты в образовании. 2007. № 1. С. 54-62.

18. Посов И. А. Программирование генераторов задач // Компьютерные инструменты в образовании. 2010. № 3. С. 19-31.

19. Посов И. А. Web-сайт для создания и обмена генерируемыми задачами по математике /'/ Международный журнал Образовательные техпологиии и общество. 2010.— июль. Т. 13, № 3. С. 360-373. URL: http://ifets.ieee.org/russian/perodical/ V1332010EE.html.

20. Посов И. А. Рукшин С. Е. Архитектура системы проведения удаленных соревнований и организации работы с математическими задачами // Научно-технические ведомости СПбГПУ. 2010. № 3(101). С. 49-53.

21. Посов И. А. Рукшин С. Е. Генерируемые задачи в системе для организации удаленной работы с задачами // Научно-технический вестник СПБГУ ИТМО. 2010. № 5(69). С. 130. URL: http: //books, if mo. ru/ntv/vipuski .php?IssueID=201005°/0 2869%29.

22. Посов И. А., Рукшип С. E. Модель оценки учебной деятельности учащихся по результатам решения задач // Компьютерные инструменты в образовании. 2011. № 3.1. С. 31 41.

23. Поеов И. А., Смирнов И. Б. Интернет-сервис для хранения базы генерируемых задач по математике // Современное образование: содержание, технологии, качество: материалы международного форума (21-22 апреля, СПб), — СПбГЭТУ. 2010. Т. 2. С. 84-85.

24. Сергушичева А. П. Метод и алгоритмы автоматизированного построения компьютерных тестов контроля знаний по техническим дисциплинам: Кандидатская диссертация / Вологодский государственный технический университет. 2007.

25. Степанов А. В. Система компьютерной генерации заданий по математике // Компьютерные инструменты в образовании. 2000. № 34. С. 28-31.

26. Тузов В. А. Математическая модель языка. JI.: Издательство ленинградского университета, 1984.

27. Фаулер М. Предметно-ориентированные языки программирования. Вильяме, 2011. P. 57G.

28. Финогенов А. Генератор задач. 2012. URL: http://generatorzadach.narod.ru/ index.html.

29. Шестаков А. П. Генерация дидактических материалов по математике. 2000. URL: http: //comp-science. narod. ru/mat em/mat em. html.

30. Almeida V. J. D. Random problem generator. United States Patent 6,112,051. 2000.

31. Bauer C., Frink A., Kreckel R. Introduction to the GiNaC Framework for Symbolic Computation within the C-f- ! Programming Language //' Journal of Symbolic Computation. 2002. T. 33, № 1. C. 1-12.

32. Byung Y. Computer Algebra System by SPREADSHEET. 2012. URL: http://www. choga21.org/.

33. Hcilman M. Smith N. A. Good Question! Statistical ranking for question generation // Human Language Technologies: The 2010 Annual Conference of the North American Chapter of the ACL. 2010. C. 609-617.

34. Jean-Daubias S., Lefevre M., Gum N. Generation of exercises within the PERLEA project // Matherials of 2nd Workshop on Question Generation, The International Conference on Artificial Intelligence in Education (AIED 2009). Т. 1. 2009. C. 43-77.

35. Reed D. Rethinking.CSO with JavaScript /'/ SIGCSE Bull. 2001. T. 33, № 1. C. 100-104. URL: http: //doi. acm. org/10.1145/366413.364552.

36. Slagle J. R. A Heuristic Program that Solves Symbolic Integration Problems in Freshman Calculus // J. ACM. 1963. October. T. 10. C. 507-520. URL: http://doi.acm.org/ 10.1145/321186.321193.