УДК 004.422
Шумская Е.А., Зеленко Л.С.
Самарский национальный исследовательский университет им. академика С.П. Королева, г. Самара,
Россия
РЕШЕНИЕ ПРОБЛЕМЫ ХРАНЕНИЯ ДАННЫХ ПРИ РАЗРАБОТКЕ ПРОГРАММНОГО
МОДУЛЯ ДЛЯ LMS MOODLE
АННОТАЦИЯ
В статье рассмотрены существующие программные модули для LMS Moodle, которые могут быть использованы для создания и решения творческого задания «о камнях» из ЕГЭ по информатике, приведены их достоинства и недостатки. Авторы предлагают решение проблемы хранения исходных данных задачи и построенного системой эталонного дерева решения.
КЛЮЧЕВЫЕ СЛОВА
Дистанционное обучение, LMS Moodle, подсистема тестирования, задача «о камнях», структура базы данных, дерево решений.
Shumskaya E.A., Zelenko L.S.
Samara national research university named after academician S. P. Korolyov , Samara, Russia
DECISION OF THE DATA STORAGE PROBLEM IN DEVELOPMENT OF THE PROGRAM
MODULE FOR LMS MOODLE
ABSTRACT
The article describes existing program modules for LMS Moodle, which can be used for creation and decision creative task «about stones» from unified state informatics exam, their advantages and disadvantages are listed. Authors offer decision of storage initial data problem and decision of pattern tree storage problem.
KEYWORDS
E-learning, LMS Moodle, testing subsystem, task "about stones", database structure, decision tree. Введение
Глобализация образования, смещение акцентов с содержания образования на результаты обучения, развитие информационных технологии - все это предполагает разработку новых методов и средств обучения. На базе Самарского национального исследовательского университета имени академика С.П. Королева (СНИУ) работает «Школа информатики СГАУ», основная задача которои - подготовить учащихся старших классов к сдаче ЕГЭ по информатике. Для школы информатики разработан саит дистанционного обучения на базе LMS Moodle [1], где размещены лекционные материалы, демонстрационные ролики, а также тесты, составленные в соответствии с контрольными измерительными материалами (КИМ), представляющими собои комплексы задании стандартизированнои формы. Тесты включают в себя задания с кратким и развернутым ответом (творческие задания). Одним из творческих задании является задача «о камнях» (задание 26 или С3).
В настоящии момент практически не существует программных систем, которые помогали бы школьникам решать задания данного типа, а существующие программы предоставляют только ответ без какого-либо пояснения решения. Это усложняет самоподготовку учащихся к экзамену, т.к. у них нет возможности оценить полученные ими решения. Таким образом, возникла необходимость в разработке авторского программного модуля, встраиваемого в систему на базе LMS Moodle и предоставляющего преподавателю инструменты для создания задания, а обучаемому инструменты для решения задачи в режиме on-line.
Задача «о камнях»
Задача «о камнях» в общем виде имеет следующую формулировку. Перед двумя игроками лежат n куч камнеи, в каждои куче k камнеи. Задан набор возможных операции над камнями из
одной кучи за один ход (например, добавить один камень в кучу, увеличить количество камней в два раза) и условие завершения игры. Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камнеи.
Задача о камнях является комбинаторнои беспристрастнои нормальнои игрои и обладает всеми ее основными своиствами [2]:
• игроки ходят по очереди;
• оба игрока знают все ходы, сделанные в игре;
• игра заканчивается, когда достигнута позиция, в которой нет возможных ходов для игрока, чья очередь ходить, - во всех таких позиция определено, кто из игроков становится победителем;
• выигрывает игрок, сделавший последний ход.
Игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника. Описать стратегию игрока - значит описать, какои ход он должен сделать в любои ситуации, которая ему может встретиться при различнои игре противника. Решением задачи является дерево выигрышной стратегии, представленное в виде графа (рис. 1) или таблицы.
(16, 32*2} =
всего Ж1
18. 64*2) =
всего 1 „М"
Рис.1. Представление дерева выигрышной стратегии в виде графа Описание учебной среды LMS Moodle
Структура и основные преимущества динамическои учебнои среды LMS Moodle описаны в работе [3]. Среда включает встроенную гибкую подсистему тестирования, которая предоставляет широкии спектр возможностеи для построения тестов различного рода, различного уровня сложности:
настраиваемые временные задержки между попытками, время прохождения теста, начало и окончание тестирования;
настраиваемое отображение теста, количество вопросов на одной странице, перемешивание как самих вопросов в тесте, так и вариантов ответов; настраиваемое количество попыток прохождения теста;
обучающий режим: ученик сможет ответить на вопрос несколько раз в рамках одной попытки. Возможно начисление штрафных баллов за каждый неправильный ответ; выбор метода оценивания (в случае нескольких попыток): высшая/низшая оценка, первая/последняя попытка;
настраиваемый режим просмотра результатов: что (свой ответ, баллы, комментарии, все ответы, общий комментарий ко всему тесту) и когда (сразу после попытки, позже, но до того как тест будет закрыт, после того как тест будет закрыт) сможет увидеть ученик;
• настраиваемая защита теста, ограничивающая возможности пользователя во время прохождения теста, задание пароля, сетевого адреса и прочее.
Вопросы в тестах могут иметь разнообразные типы, среди которых множественный выбор, верно/неверно, короткии ответ, эссе и др. Окно выбора типа вопроса представлено на рис 2. Созданные вопросы сохраняются в банке вопросов и могут использоваться в разных курсах.
Выберите тип вопроса для добавления
ВОПРОСЫ
Множественный выбор
* ■ ВерноУНеверно
На соответствие
1=1 Краткий ответ
J а Числовой ответ
П Эссе
[§] Concept Map
it, Freehand Drawing
Вложенные ответы " (Cloze)
Выбор припущенных слов
J V"? Вычисляемый
Множественный " Вычисляемый
. Перетаскивание в
■ т.
текст
Позволяет выбирать один или несколько правильных ответов из заданного списка.
Добавить
Рис.2. Окно выбора типа вопроса в LMS Moodle
Вопросы хранятся по категориям, в каждом курсе есть только одна категория - «По умолчанию». Рекомендуется создать другие категории для удобного хранения вопросов, можно также создать иерархическую структуру категории, для этого нужно перейдите на вкладку «Категории». Каждая категория состоит из названия и короткого описания.
Каждая категория может быть «опубликована», это означает что данная категория (и все вопросы в неи) будут доступны для всех курсов на этом сервере, и преподаватели других курсов смогут использовать ваши вопросы в своих тестах.
Добавляя новую категорию необходимо заполнить следующие поля: доступные категории;
категория, в которую создаваемая будет помещена. Если нет других категорий, то доступно создание в категории «Главная» (корневая категория); названия категорий; имя новой категории; информация о категории; краткое описание категории; опубликовать;
опубликовать эту категорию при создании.
Категории могут также быть созданы или удалены в любое время, при удалении необходимо выбрать другую категорию, куда нужно переместить вопросы из удаляемои категории.
Группа таблиц банка вопросов представлена на рис.3. Таблица «question» включает название вопроса, текст вопроса, информацию о дате создания и авторе вопроса. Таблица «question_categories» предназначена для группировки вопросов по категориям, хранит название категории, порядок сортировки вопросов. Таблица «question_statistics» содержит информацию об изменении вопроса, максимальнои оценке, полученнои обучающимися за ответ на вопрос. При попытке ответа на определенным вопрос хотя бы одним обучающимся формируется запись в таблице «question_attempts», при последующих ответах на этот же вопрос запись изменяется. Таблица «question_attempt_steps» хранит информацию о попытках ответа на вопрос конкретного пользователя.
questions
w
7— questk>n_attenipt_step_data
— question _statistics
Ъ ,. Ф
«■i— question ► rf
question hints ► /
1 ——-' / M /
'I Щ
□ questfcm„answers > — ! Г questra^ calegories ïj
-:- 1 <
M- 1 i
1— question_attempt_steps qu est iondatasets
— - т;--- \
i ™ \ ■— question „attempts ► — '
quest ion_dataset_iteni s
— questfc>n_dataset_definitions —1
Рис.3. Группа таблиц банка вопросов в LMS Moodle
Поиск решения
Задачу «о камнях» нельзя отнести к одному из встроенных типов вопросов. Но существует большое количество разработанных для LMS Moodle программных модулей с открытым исходным кодом, в том числе и те, которые предусматривают создание вопросов с типами, отличающимися от стандартных. В этом списке присутствуют модули для изображения молекулярных связеи, модули для построения музыкальных интервалов, модули автоматически оценки правильности исходных кодов программ и др. [4]. Авторами было проведено исследование существующих плагинов и наидено два наиболее подходящих для создания и решения задачи «о камнях».
Один из таких плагинов - «ConceptMap», которьш разработал профессор и исследователь из Чили Джордж Виллалон [5]. Тип вопроса «Concept map» предполагает построение обучающимся ассоциативнои карты (интеллект-карты), которая используется для структуризации знании. Ассоциативная карта представляет собои граф (рис. 4), поэтому используя данныи тип вопроса, можно предоставить школьнику инструмент для построения дерева выигрышнои стратегии. К сожалению, в том случае система не сможет автоматически оценить правильность решения, так как у нее нет возможности построить эталонное дерево.
Untitled да fi t>
шш _
Caneapls
Рис.4. Окно для работы с интеллект-картой
Второи модуль поддерживает рисование карандашом, с его помощью можно выполнить проверку решения, сравнивая полученное решение с эталонным [6]. К сожалению, на рисование «вручную» уходит большое количество времени, гораздо быстрее построить дерево из имеющегося набора элементов.
Реализация программного модуля
На сервере приложении СНИУ развернута система дистанционного обучения Школы информатики СГАУ разработанная на базе LMS Moodle, в нее был интегрирован разработанныи модуль. На сервере баз данных (БД) Самарского университета развернута БД под управлением СУБД MySQL, которая необходима для работы LMS Moodle. Архитектура системы представлена на рис. 5.
Tnoodle
Модуль для задания CJ
Сервер вазланных СНИУ
4
|*Ы jSJ
Рис.5. Архитектура системы
При разработке модуля для решения задачи «о камнях» необходимо было изучить и расширить существующую структуру базы данных LMS Moodle. База данных LMS Moodle на текущий момент насчитывает 334 таблицы [7]. При работе с БД была использована инструментальная среда разработки «dbForge Studio for MySql», которая предоставляет графическии редактор диаграмм БД. Для добавления нового типа вопроса необходимо представлять часть схемы базы данных, которая относится к разделу «банк вопросов», в него были добавлены следующие таблицы (рис. 6):
21 mdl_question_5tep й
t и тг
action TIMVJNT
StCri4S_£№l*t INT
' question BIG [NT
т ограничения
* Индексы
^FK_questHHi_stsp_i»n«s_i4»orejd □ mdl_qtype_stonc5_optior>5 й
ff id BTGINT
heaps_courit ItfT
IMT
mas^tones INT
« Огцйннчсинп
FK_question_hsap_stones_opcionsJci t
□ nnJLquesNon.heap й
f id bigint
itonis count IMT
f question BIGINT
+ Ограничения
+ Индексы
Рис.6. Добавленная часть схемы базы данных
• mdl_qtype_stones_options хранит максимальное суммарное количество камней в кучах и условие выигрыша, в качестве внешнего ключа используется ссылка на идентификатор вопроса из базовой таблицы mdl_question;
• mdl_question_heap хранит данные о количестве камней в каждой куче;
• mdl_question_step содержится информацию о возможных операциях, применяемых к числу камней в одной из куч.
Эталонное дерево решении хранится в качестве json-строки в таблице mdl_question_answers. Выбор был сделан в пользу формата json, так как многие графические JavaScript-библиотеки включают в себя функцию построения деревьев на основе json-объектов.
Для отображения графа решения используется библиотека jsPlumb, которая предоставляет удобньш API для работы с иерархическими деревьями [8].
Окно для работы с графом представлено на рис. 7. Школьник может добавлять и удалять вершины графа, а также редактировать информацию о количестве камнеи в каждои из куч.
BOD
■ * m ■ +
ч» * Il il -p®4*
и ^P* , № + ■ 41 *
- * II - -IS4* II ■ (4i»1'*
Puc.7. Окно для работы с графом решения
Литература
1. Сайт Школы информатики СГАУ. URL: http://distance.itschool.ssau.ru/.
2. Фролов, И.С. Введение в теорию комбинаторных игр. Простейшие комбинаторные игры / И.С. Фролов // Математическое образование. -2012. - № 3. - С. 38-52.
3. Distance learning and Learning Management Systems / Nadire Cavus // Procedía - Social and Behavioral Sciences. - 2015. - Vol. 191. -P. 872-877.
4. Scalable Autograder and LMS Integration / Karol Danutama // Procedia Technology. - 2013. - Vol. 11. - P. 388-395.
5. Concept Maps In Moodle - Jorge Villalon. URL: http : //www.villalon.cl/concept-maps-in-moodle.html.
6. Freehand Drawing. URL: https://github.com/ethz-let/moodle-qtype_freehanddrawing.
7. Сайт системы LMS Moodle. URL: http://moodle.org/.
8. Сайт библиотеки jsPlumb. URL: https: //jsplumbtoolkit.com/.
References
1. Sayt Shkoly informatiki SGAU. URL: http: / / distance.itschool.ssau.ru/.
2. Frolov, I.S. Vvedenie v teoriyu kombinatornykh igr. Prosteyshie kombinatornye igry / I.S. Frolov // Matematicheskoe obrazovanie. -2012. - № 3. - S. 38-52.
3. Distance learning and Learning Management Systems / Nadire Cavus / / Procedia - Social and Behavioral Sciences. - 2015. - Vol. 191. -P. 872-877.
4. Scalable Autograder and LMS Integration / Karol Danutama // Procedia Technology. - 2013. - Vol. 11. - P. 388-395.
5. Concept Maps In Moodle - Jorge Villalon. URL: http ://www.villalon.cl/concept-maps-in-moodle.html.
6. Freehand Drawing. URL: https://github.com/ethz-let/moodle-qtype_freehanddrawing.
7. Sayt sistemy LMS Moodle. URL: http://moodle.org/.
8. Sayt biblioteki jsPlumb. URL: https://jsplumbtoolkit.com/.
Поступила: 13.09.2016
Об авторах:
Шумская Екатерина Андреевна, аспирант кафедры программных систем Самарского национального исследовательского университета имени академика С.П. Королева, [email protected];
Зеленко Лариса Сергеевна, доцент кафедры программных систем Самарского национального исследовательского университета имени академика С.П. Королева, кандидат технических наук, [email protected].