WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


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

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

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

05.13.06 – Автоматизация и управление технологическими процессами и производствами (образование)

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

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

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

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

Официальные оппоненты: Копыльцов Александр Васильевич, доктор технических наук, профессор, РГПУ им. Герцена, заведующий кафедрой информатики Тимофеев Адиль Васильевич, доктор технических наук, профессор, СПИИРАН, Заведующий лабораторией информацион­ ных технологий в управлении и робототех­ нике

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

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

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

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

Ученый секретарь диссертационного совета Д 212.227.06, доктор технических наук, профессор Лисицына Л. С.

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

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

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

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

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

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

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

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

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

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

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-ом международном конгрессе по математическому образованию ICME-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 приведен пример многовариантной контрольной работы (паке­ та многовариантных заданий). Каждый вариант состоит из трёх задач, каждая задача имеет свой набор входных данных в каждом из вариантов.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Условие: С помощью алгоритма Евклида вычислите наибольший общий делитель чисел %a и %b Ответ: НОД(%a, %b) = %d a = случайное от 1 до 1b = случайное от 1 до 1d = НОД(a, b) проверить, что:

d >= d <= a mod b ! = b mod a ! = Рисунок 2 – Пример шаблона В первом и втором разделе заданы условие и ответ к задаче. Символы, пе­ ред которыми написан знак процента, в каждом варианте условия заменяются на конкретные числа. После задания шаблонов условия и ответа перечисляются методы формирования параметров. a и b выбираются как случайные числа от 1 до 100, d выбирается как наибольший общий делитель чисел a и b. Условия на параметры нужны, чтобы генерировать задачи одинаковой заранее заданной сложности. Более правильным было бы указать условие на параметры, что ко­ личество шагов в алгоритме Евклида находилось бы в определённом диапазоне, например, от 4 до 5. Мы не готовы реализовывать здесь полностью алгоритм Евклида, чтобы посчитать количество его шагов, потому что в этом случае этот генератор пришлось бы отнести к предыдущему рассмотренному классу генера­ торов общего назначения, для создания которых требуется писать программы.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

log(int_answers, ’ генерировать целые корни’ );

statement = ’ Решите квадратное уравнение $%p = 0$’ ;

answer = ’ $x_1 = %x1$, $x_2 = %x2$’ ;

function getIntegerEq() { x1 = rnd_not_0(-10, 10);

x2 = rnd_not_0(-10, 10);

assert(x1 ! = x2 && x1 ! = -x2);

p = $(’ expand(( x - %x1)*(x - %x2))’ );

} function getFractionalEq() { x1 = rnd_not_0(-5, 5) + ’ /’ + rnd( 1, 9);

x2 = rnd_not_0(-5, 5) + ’ /’ + rnd( 1, 9);

assert(test_not($(’ abs(%x1) = abs(%x2)’ )));

p = meval( $( ’ num( rat((x - %x1)*(x - %x2)))’ ));

} if (int_answers) getIntegerEq();

else getFractionalEq();

p = tex(p);

x1 = tex(x1);

x2 = tex(x2);

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

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

Рисунок 5 – Общая схема предлагаемой реализации системы На рисунке 5 изображены основные компоненты системы и их назначение.

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

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

Рисунок 6 – Общая схема предлагаемой реализации системы Разработка и отладка генераторов а также создание документации происхо­ дит с помощью среды разработки. Запуск генератора для целей отладки состоит из двух шагов: генерация условий и формирование печатного варианта заданий.

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

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

Таблица 1 – Сравнение системы с аналогами Д УЯП M Док I Кр Лев Серг Степ Нек Фин 1) Расширяемость + - - - - + + + + + 2) Расшир. некв. п-ми + - - - - - + - - + 3) ПОЯ + - - - - - + + + + 4) Составление тестов + - - - - - + + + + + 5) Печать + + + + + - - - + + + 6) Произвольный алгоритм + + + + - + - - + - + 7) Инфрастр. проблемы + - - - + + + + + + + 8) Формулы и символы + - + - - + + - + + + 9) CAS + - + - - - - - - - 10) Общедоступность + - - - - - - - - + + 11) Обмен генераторами + - - - - - - - - - 12) Онлайн генерация + - - - + - - - - - 13) Онлайн прогр. ген. + - - - - - - - - - После того как генератор создан и отлажен, его необходимо записать в ба­ зу генераторов на сервере, в этот момент происходит его индексирование, и он становится доступен для поиска. С помощью сайта генератор находит препода­ ватель и добавляет его в один из своих тестов. При добавлении генератора в тест ему необходимо задать параметры генерации, это также происходит на сай­ те и данные о параметрах сохраняется в тесте. Составление печатного варианта теста происходит с помощью комплектатора. Он запускает генераторы, подго­ A тавливает LTEX документ и запускает его компиляцию. Поддержка генераторов их авторами может производиться за счёт того, что сайт позволяет оставлять комментарии к генераторам.

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

Остальные системы описаны в литературе или выложены на страницах препода­ вателей. Плюс означает наличие возможности, минус — отсутствие.

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

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

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

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

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

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

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%2869%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.







© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.