Научная статья на тему 'Возможности автоматической проверки заданий в LMS Moodle'

Возможности автоматической проверки заданий в LMS Moodle Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1060
127
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЭЛЕКТРОННОЕ ОБУЧЕНИЕ / СМЕШАННОЕ ОБУЧЕНИЕ / СИСТЕМА УПРАВЛЕНИЯ ОБУЧЕНИЕМ / LMS MOODLE / ПЛАГИН / CODERUNNER / МЕТОДЫ ОЦЕНИВАНИЯ / АВТОМАТИЧЕСКОЕ ОЦЕНИВАНИЕ / E-LEARNING / BLENDED LEARNING / LEARNING MANAGEMENT SYSTEM / PLUGIN / MEASURING LEARNING / AUTOMATIC ASSESSMENT

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Перязева Юлия Валерьевна

В работе обосновывается актуальность применения традиционных систем управления обучением (learning management system, LMS) в учебном процессе, которые по-прежнему доминируют в образовательных учреждениях. Из большого количества существующих платформ выделена LMS Moodle, которая в течение многих лет остается популярной. Востребованность этой системы обусловлена, прежде всего, возможностью расширения функционала с помощью плагинов, над которыми работает сильное сообщество, сформировавшееся за много лет существования платформы. В настоящий момент, одной из ключевых тенденций в образовании является растущее значение методов и инструментов оценивания деятельности, учебных достижений и других показателей студента, понимания и возможности использования учебной аналитики. В LMS Moodle есть для этого соответствующие средства. Одним из таких инструментов для организации эффективного автоматического оценивания результатов является плагин CodeRunner. Наиболее распространенное использование CodeRunner в курсах по программированию, где студентов просят написать программный код в соответствии с поставленной задачей, и этот код затем оценивается путем запуска его на серии тестов. Но кроме этого, CodeRunner можно использовать и по другим дисциплинам для таких вопросов, оценить правильность ответов на которые, можно только с помощью программы. В работе показаны способы расширения областей применения плагина, а, следовательно, и Moodle в целом, за счет создания новых типов вопросов c автоматической проверкой ответов, которые сочетают в себе различные пользовательские интерфейсы ответа, языки программирования для проверки, шаблоны, способы оценивания и вывода результата. Продемонстрированы возможности применения плагина на примере разработки заданий для курса компьютерной поддержки дисциплины "Прикладная теория автоматов".

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Перязева Юлия Валерьевна

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

EXTENDING MOODLE FUNCTIONALITY WITH COMPUTER-ASSISTED ASSESSMENT

Digital learning environments in education are still dominated by traditional learning management system (LMS). LMS Moodle is one of the leading open source learning management systems. The system is supported by a strong active community that contributes to the development and extends the capabilities of Moodle. One way to enhance the functionality of Moodle is to add plugins to the default Moodle install. Various plugins are available to install in Moodle, one of them is CodeRunner. One of the key trends in educational technology is growing focus on measuring learning. LMS Moodle offers tools to assess, measure, and document learning, and CodeRunner is one of them. First of all, CodeRunner is a Moodle question-type plug-ing which allows setting questions, where the answer is program code, and runs the program in order to grade a student's answer. But the scope of the plug-in can be expanded by the ability to add new types of questions that combine different user interfaces of the answer, programming languages, templates and methods for grading and displaying the result. This allows using CodeRunner in other courses of computer science and engineering to test assignment for which a program should be used to evaluate correctness, in other words, for the questions with computer assisted assessment. Capabilities of plug-in CodeRunner of LMS Moodle are demonstrated by the example of creating the e-course “Applied Automata Theory”.

Текст научной работы на тему «Возможности автоматической проверки заданий в LMS Moodle»

УДК 378.1

DOI: 10.25559/SITITO.15.201904.876-885

Возможности автоматической проверки заданий в LMS Moodle

Ю. В. Перязева

Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И.

Ульянова (Ленина), г. Санкт-Петербург, Россия

197376, Россия, г. Санкт-Петербург, ул. Профессора Попова, д. 5

peryazeva@list.ru

Аннотация

В работе обосновывается актуальность применения традиционных систем управления обучением (learning management system, LMS) в учебном процессе, которые по-прежнему доминируют в образовательных учреждениях. Из большого количества существующих платформ выделена LMS Moodle, которая в течение многих лет остается популярной. Востребованность этой системы обусловлена, прежде всего, возможностью расширения функционала с помощью плагинов, над которыми работает сильное сообщество, сформировавшееся за много лет существования платформы.

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

Ключевые слова: электронное обучение, смешанное обучение, система управления обучением, LMS Moodle, плагин, CodeRunner, методы оценивания, автоматическое оценивание.

Для цитирования: Перязева Ю. В. Возможности автоматической проверки заданий в LMS Moodle // Современные информационные технологии и ИТ-образование. 2019. Т. 15, № 4. С. 876885. DOI: 10.25559/SITITO.15.201904.876-885

I© Перязева Ю. В., 2019|

Контент доступен под лицензией Creative Commons Attribution 4.0 License. The content is available under Creative Commons Attribution 4.0 License.

Современные информационные технологии и ИТ-образование

Том 15, № 4. 2019 ISSN 2411-1473 sitito.cs.msu.ru

E-LEARNING AND IT IN EDUCATION

Extending Moodle Functionality with Computer-Assisted Assessment

J. V. Peryazeva

Saint Petersburg Electrotechnical University "LETI", St. Petersburg, Russia 5 Professora Popova Str., St. Petersburg 197376, Russia peryazeva@list.ru

Abstract

Digital learning environments in education are still dominated by traditional learning management system (LMS). LMS Moodle is one of the leading open source learning management systems. The system is supported by a strong active community that contributes to the development and extends the capabilities of Moodle. One way to enhance the functionality of Moodle is to add plugins to the default Moodle install. Various plugins are available to install in Moodle, one of them is CodeRunner. One of the key trends in educational technology is growing focus on measuring learning. LMS Moodle offers tools to assess, measure, and document learning, and CodeRunner is one of them. First of all, CodeRunner is a Moodle question-type plug-ing which allows setting questions, where the answer is program code, and runs the program in order to grade a student's answer. But the scope of the plug-in can be expanded by the ability to add new types of questions that combine different user interfaces of the answer, programming languages, templates and methods for grading and displaying the result. This allows using CodeRunner in other courses of computer science and engineering to test assignment for which a program should be used to evaluate correctness, in other words, for the questions with computer assisted assessment. Capabilities of plug-in CodeRunner of LMS Moodle are demonstrated by the example of creating the e-course "Applied Automata Theory"

Keywords: E-learning, blended learning, learning management system, LMS Moodle, Plug-in, CodeRunner, measuring learning, automatic assessment.

For citation: Peryazeva J.V. Extending Moodle Functionality with Computer-Assisted Assessment. Sovremennye informacionnye tehnologii i IT-obrazovanie = Modern Information Technologies and IT-Education. 2019; 15(4):876-885. DOI: 10.25559/SITITO.15.201904876-885

Modern Information Technologies and IT-Education

Введение

Границы между физическим учебным пространством и цифровым постепенно размываются, в высшем образовании постоянно возрастает значение электронного обучения (e-learning). В зависимости от степени применения электронных технологий в образовательном процессе выделяются он-лайн-обучение (online learning) и смешанное обучение (blended learning). На практике более распространено смешанное обучение, главная идея которого в сочетании традиционных форм с электронными технологиями [1, 2, 3]. Доступность смартфонов, планшетов и других устройств позволяет интегрировать цифровые ресурсы, различные виды деятельности, игры с событиями в аудитории. Цифровая фиксация и электронная поддержка очного обучения позволяет студентам учиться в интерактивном учебном пространстве, взаимодействовать с другими студентами и преподавателем не только во время занятий, но и в любое удобное время. Электронные технологии не просто дополняют традиционное обучение, а являются неотъемлемой составной частью учебного процесса. Технологии электронного обучения стремительно развиваются, можно выделить следующие основные тренды - дополненная и виртуальная реальности, искусственный интеллект, микрообучение, визуализация контента, мобильное обучение1 [4, 5, 6]. Развитие технологий существенно влияет на образование в целом. Ежегодный анализ влияния новых методик и технологий на систему высшего образования, проводимый некоммерческой организацией EDUCAUSE, в продолжение традиций консорциума New Media (NMC), выделяет ключевые тенденции внедрения технологий в образование на ближайшие пять лет2. Одним из ключевых направлений внедрения в последнем отчете в очередной раз выделено смешанное обучение, хотя уже сейчас во многих российских вузах это можно рассматривать как устоявшийся компонент образования3 [7, 8]. В цифровых учебных средах в образовательных заведениях по-прежнему доминируют традиционные системы управления обучением (learning management system, LMS), предназначенные для администрирования контента, оценивания, отслеживания деятельности, отчетности [9-12]. Существующие системы пока не отражают все современные тенденции, но простой интерфейс, акцент на пользовательский опыт и реализация интуитивно понятных коммуникационных и социальных решений, наличие всех необходимых функций, стандарты совместимости будут сохранять конкуренцию этих систем на этом рынке4. Согласно исследованию издания Finances Online, которое готовит обзоры программ для бизне-

са, число поставщиков LMS5 на 2019 превышает 1000. В топе бесплатных LMS, согласно исследованиям того же Finances Online, второе место занимает LMS Moodle6. Первая версия этой LMS была выпущена в 2002 году, и на протяжении многих лет Moodle остается популярной платформой. Так при подборе программного обеспечения для электронного обучения, например, с помощью сервиса capterra, по критериям: подходит для академического образования, бесплатное, может использоваться для смешанного и мобильного обучения, поддерживается геймификация и т.п., как видно на рис. 1, Moodle остается одной из самых популярных LMS7.

Capterra 1«

LMS Software

Find the best LMS Software for your business or school. Compare product reviews and features, and learn from our LMS Software Research.

Sort by: • Most Review

ned 36 products.

В Academic/Educalion Pricing Options V 1 ■ Fr« Trial Th J Add to Compare Moodle by Moodle Free online learning management system, providing educators aro

! ; One-Time License tal^tlms TalentLMS by Epignosis ★ (267reviews) BBB

■ Asynchronous Learning J Add to Compare An award-winning LMS ideal for delivering engaging online training clicks in a platform suitable for sophisticated as well as inexperienc Combines support for multiple file types and multimedia (presenta SCORM, etc.) with simplicity, and an always eager-to-help support t d, aspiring trainers, ons. videos. iFrame.

EDUffl#TE EduBrite by EduBrite Systems H

□ Add to Compare Online LMS allows businesses, training institutes to provide end-to end training solutions to

Р и с. 1. Результаты поиска LMS по заданным критериям с помощью сервиса Capterra

F i g. 1. Results of the LMS search according to the specified criteria using the Capterra service

Moodle - бесплатная система электронного обучения с открытым исходным кодом, легко объединяется с другими платформами, на данный момент доступно более 30 интеграций, с такими сервисами как, например, WordPress, Joomla, Zoom и т.д. Moodle поддерживает самые популярные стандарты в он-лайн-обучении: IMS, AICC, LTI и SCORM. Первоначальный функционал системы достаточно скромен, но с помощью плагинов легко расширяется. Эти плагины можно бесплатно скачать из Интернета или создать самому. Важным преимуществом этой LMS является то, что за годы разработки вокруг Moodle сформировалось сильное сообщество, которое и создает новые пла-

1 Horizon Report. 2019 Higher Education Edition [Электронный ресурс]. URL: https://library.educause.edU/resources/2019/4/2019-horizon-report (дата обращения: 09.08.2019); Крупнейший в Европе саммит по образованию EdTechXEurope [Электронный ресурс]. URL: https://edtechxeurope.com (дата обращения: 09.08.2019); Кокоулина О. 6 трендов дистанционного обучения, которые нельзя игнорировать // iSpring [Электронный ресурс]. URL: https:// www.ispring.ru/elearning-insights/elearning-trends (дата обращения: 09.08.2019).

2 Horizon Report. 2019 Higher Education Edition [Электронный ресурс]. URL: https://library.educause.edu/resources/2019/4/2019-horizon-report (дата обращения: 09.08.2019).

3 Там же.

4 2020 Global Learning Landscape. An open source taxonomy for the future of education. Mapping the learning and talent innovation landscape [Электронный ресурс]. URL: https://www.globallearninglandscape.org/ (дата обращения: 09.08.2019).

5 Andre L. List of Top LMS Software Companies of 2020 // FinancesOnline [Электронный ресурс]. URL: https://financesonline.com/top-20-lms-software-companies/ (дата обращения: 09.08.2019).

6 Chang J. Free LMS Software: What Are The Top Solutions For 2020? // FinancesOnline [Электронный ресурс]. URL: https://financesonline.com/free-lms-software-what-are-the-top-solutions-for-2018 (дата обращения: 09.08.2019).

7 LMS Software. Find the best LMS Software for your business or school. Compare product reviews and features, and learn from our LMS Software Research // Top Software at Capterra [Электронный ресурс]. URL: https://www.capterra.com/learning-management-system-software/ (дата обращения: 09.08.2019).

Современные информационные технологии и ИТ-образование

Том 15, № 4. 2019

ISSN 2411-1473

sitito.cs.msu.ru

гины для платформы8 [13]. Сейчас таких плагинов9 насчитывается более 1600.

Все возрастающее значение методов и инструментов оценивания деятельности, учебных достижений и других показателей студентов, понимания и возможности использования учебной аналитики требует разработки новых инструментов, расширения возможностей существующих10. Сегодня оценивание рассматривается в двух подходах: формирующее и констатирующее [14]. Формирующее - оценивание заключается в текущей оценке учебных достижений, сборе информации о процессе обучения. Констатирующее - оценка образовательного результата, как правило, проводится в конце учебного периода с целью понять достигнутый студентом уровень овладения знаниями, умениями, навыками и ключевыми компетенциями. Автоматизированные процедуры и инструменты оценивания, интегрированные в LMS, в частности в Moodle, являются основой для перехода к персонализации учебной деятельности, к адаптивному обучению [15-18]. Эти средства можно использовать для разработки разнообразных схем оценивания, для планирования и контроля результатов, для организации обратной связи, для мониторинга активностей и знаний студентов [19-21]. Возможности Moodle по оцениванию можно расширять с помощью плагинов. Один из таких плагинов -CodeRunner, задающий тип вопроса, позволяющий осуществлять автоматическую проверку заданий по программирова-нию11 [22, 23].

CodeRunner в настоящее время поддерживает следующие языки программирования: Python2, Python3, C, C ++, Java, PHP, JavaScript (NodeJS), Octave. Безусловно, наиболее распространенное использование CodeRunner в курсах по программированию, где студентов просят написать программный код в соответствии с заданием, и этот код затем оценивается путем запуска его на серии тестов. Но кроме этого, CodeRunner можно использовать и по другим дисциплинам для таких вопросов, оценить правильность ответов на которые, можно только с помощью программы. Известен опыт использования этого плагина для преподавания теории алгоритмов, операционных систем, компьютерных систем, формальных языков и грамматик и некоторых других дисциплин. Перечень дисциплин можно расширить благодаря гибкости применения и легкости добавления новых подтипов вопросов. Архитектура плагина позволяет расширять функционал, за счет использования разных существующих пользовательских интерфейсов ввода ответа и разработки новых, использования различных языков программирования, шаблонов настройки, способов оценивания и вывода результата.

Цель работы - используя возможности создания новых типов вопросов с автоматической проверкой с помощью CodeRunner, продемонстрировать расширение области применения плагина, и в целом LMS Moodle, на примере типовых заданий курса компьютерной поддержки дисциплины «Прикладная теория автоматов».

Пользовательский интерфейс ввода ответа Рассмотрим возможности плагина CodeRunner по использованию различных пользовательских интерфейсов ответов. Эти интерфейсы позволяют использовать CodeRunner не только для автоматической проверки задач по программированию, но и по другим дисциплинам. Для ответов на обычные вопросы по программированию используется редактор Ace. Этот редактор предоставляет цветную подсветку синтаксиса, сопоставление скобок, автоматический отступ и многие другие возможности, чтобы сделать редактирование программного кода более удобным для пользователя. Начиная с версии 3.3.0, CodeRunner поддерживает подключаемые пользовательские интерфейсы. Автор вопроса выбирает необходимый пользовательский интерфейс через раскрывающееся меню (рис. 2) в разделе настроек формы вопроса. Выбор управляет полями предварительного ответа в форме редактирования вопроса и ответа студента в реальном тесте, определяет форму сохранения ответа.

Рассмотрим подробнее интерфейсы Graph и Table. Пользовательский интерфейс Graph (рис. 2), который в документации указан как экспериментальный, на практике прекрасно работает12 [24].

" Customisation

Template © 1 1

Template controls Q j |s combinator Allow multiple sldins Test splitter (regex)

Grading О Exact match i

Р и с. 2. Меню выбора пользовательского интерфейса ответа F i g. 2. The Answer User Interface Menu

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

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

Input Uls в

► Advanced customisation ' Общее

Название вопроса О

8 Moodle: официальный сайт [Электронный ресурс]. URL: http://moodle.org (дата обращения: 09.08.2019).

9 Plugins // Moodle [Электронный ресурс]. URL: https://moodle.org/plugins (дата обращения: 09.08.2019).

10 Horizon Report. 2019 Higher Education Edition [Электронный ресурс]. URL: https://library.educause.edU/resources/2019/4/2019-horizon-report (дата обращения: 09.08.2019).

11 Question types: CodeRunner // Moodle [Электронный ресурс]. URL: https://moodle.org/plugins/qtype_coderunner (дата обращения: 09.08.2019); CodeRunner [Электронный ресурс]. URL: https://coderunner.org.nz/ (дата обращения: 09.08.2019).

12 Lobb R., Hunt T. CodeRunner. Version: 3.7.5 January 2020 [Электронный ресурс]. URL: https://github.com/trampgeek/moodle-qtype_coderunner/ (дата обращения: 09.08.2019).

Vol. 15, No. 4. 2019 ISSN 2411-1473 sitito.cs.msu.ru

Modern Information Technologies and IT-Education

Минимизировать автомат л„х = {а,ь,с}, вГ1ЫХ = {0,1}, Q = {1,2,3,4,5,6,7.8}, заданный автоматной таблицей:

1 2 3 4 5 6 т 8

г/. 8/° 8/0 г/. 5/0 у.

» Ф у, ■/* 8/0

» з/о з/о ■А

Постройте диаграмму эквивалентного минимального автомата. Answer: (penalty regime: 10,20,... %)

Help 1 с/0 Ь/1 с/0

а/1 /

{ а/0/ / I / / с/р- Ь/1 \ \ Ь/1 / \ с/0 \ / \ \ /3/0

(q2j

Ь/0

■л

Р и с. 3. Пример тестового вопроса с пользовательским интерфейсом Graph F i g. 3. Example of a test question with the Graph user interface

€33859264348004}, 28.300423323501086} ,{"lineAngleAdju;

•anchorangle":-2.677945044588987}, : 3.141532653589793,"parallelPE

: 3.141592653589793,"parallelPs

' : 0.72079421271356,"perpendiculai

1: 0.6315222410343234,"perpet

' :0,"parallelPai

neAngleAdjus-t" : 0, "parallelPi

1: 0.3466671159937993,"perper

1 ! 0 . 6909842561597331,"ри

~t":125.2764019632545 t"! 35.7664144147816}

AngleAdjust": 3.141592653589793,"parallelPart": 0.5833161353391626,"perpendicularPart": -86.18685273219434},("anchoringle"¡0.24497866312686414}],"aodsSeomstty"¡[[110,193],[456,203], 736,210],[385,283]],"nodes":[["00",false],["01",false],["10",false],["11",false]],"edges": [0,0,"0/0"],(0,1,"1/0"],[1,0,"0/1"],[1,3,"I/O"],[2,0,"0/1"],[3,2,"1/0"],[3,0,"0/1"], 2,2,"1/0"]]}

jr-nothing grading Penally regimi

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

Например таблица с параметрами как на рис.5 будет выглядеть как на рис. 6.

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

Answer: (penalty regime: 10. 20,... %}

Вход Q1 Q0 У_МИЛИ У_МУРА А В С J1 К1 J0 КО

А J А , ; .о А 4 ,

А Л , А ][ □п А J

А А i □□ А А

I J , ■J ■J

Р и с. 4. Форма хранения ответа F i g. 4. Response storage form

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

Следующий интересный для нас интерфейс - Table, текстовое поле заменяется html таблицей, в ячейки которой студент должен ввести ответы. Вид таблицы, количество строк и столбцов задается автором вопроса в параметрах (рис. 5).

- CodeRunner question type

Р и с. 6. Пример вопроса с интерфейсом ответа Table F i g. 6. Example of a question with an answer interface Table

Ответ в этом интерфейсе возвращается в виде массива массивов строк JSON, содержащий все ячейки таблицы, за исключением строки заголовка, если ячейка пустая, то сохраняется пустая строка. Проверка реализуется в шаблоне или пишется тест на заданном языке программирования. Важным свойством плагина является возможность создания своих собственных интерфейсов, под конкретную задачу. Плагины интерфейса разрабатываются на JavaScript, размещаются в Moodle с именем, например, ui_name_of_interface.js в папке .../question/type/coderunner/amd/src, и автоматически добавляются в выпадающее меню доступных плагинов (рис. 2). Файлы плагинов должны быть модулями AMD и реализовывать интерфейс, определенный в файле userinterfacewrapper.js. Определяемые пользователем типы вопросов Определение своих типов вопросов дает больше возможностей и в вопросах по программированию, и в тестах по другим дисциплинам. Каждый тип вопроса определяется вопросом-прототипом, который является еще одним вопросом в базе данных и от которого могут наследоваться новые вопросы. Для того чтобы сохранить вопрос как прототип, в панели расширенной настройки необходимо это указать и задать имя нового типа (рис. 7). Рекомендуется отразить в названии вопроса, то, что это прототип, начать название со строки PROTOTYPE_, за которой следует имя типа и сохранить вопрос в отдельную для прототипов категорию. Очевидно, что имя типа вопроса, которое вы используете, должно быть уникальным, по крайней мере, в контексте курса, в котором используется вопрос-прототип. После создания прототипа, новый тип вопроса появляется в форме создания вопроса (Рис.8).

" Advanced customisation

Prototyping i

1 Question type 1 pvtiioti3jable

Р и с. 5. Задание параметров таблицы F i g. 5. Setting table parameters

Р и с. 7. Панель расширенной настройки вопроса F i g. 7. Advanced question set panel

Современные информационные технологии и ИТ-образование

Том 15, № 4. 2019

ISSN 2411-1473

sitito.cs.msu.ru

J. V. Peryazeva

E-LEARNING AND IT IN EDUCATION

881

* CodeRunner question type

Р и с. 8. Список доступных типов вопросов F i g. 8. List of available question types

CodeRunner ищет вопросы-прототипы только в контексте текущего курса. Если необходимо сделать новый тип вопроса доступным глобально, его необходимо переместить в категорию LOCAL_PROTOTYPES. Текст вопроса-прототипа отображается в форме создания вопроса на панели «Question type details».

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

Editing a CodeRunner question©

* CodeRunner question type мшию о I „„.„,

* All-or-nothing grading Penalty regime: 10,20.

► Question type details - Customisation

t splitter Iregexl ]#■

® [ U'Ettpccted', "ецковЛ. [ЧйГ, 'gofH

Р и с. 9. Основные параметры настройки вопроса F i g. 9. Basic Question Settings

Можно настраивать и каждый вопрос, но эффективнее для типовых задач создавать отдельные типы. У каждого настраиваемого вопроса есть шаблон, или импортированный из прототипа или разработанный автором вопроса. Шаблон определяет, как исполняемая программа на выбранном языке программирования создается из ответа студента, тестового кода и пользовательского кода внутри самого шаблона. Обработка шаблона осуществляется механизмом шаблонов Twig13. Движок получает как шаблон, так и переменную с именем STUDENT_ ANSWER, которая представляет собой текст, введенный студентом в поле ответа, и еще один файл с именем TEST, представляющий собой записи, содержащиеся в проверочных тестах вопроса (test cases), который автор задает для конкретного теста.

Например, для типовой задачи нахождения автомата Мура, эквивалентного данному автомату Мили (рис. 11) шаблон может иметь вид как на рис. 12.

Построить диаграмму автомата Мура, эквивалентного автомату Мулм, для построения автомата используйте рассмотренный на лекции алгоритм и обозначения для состояний:

Рис. 11. Пример типовой задачи F i g. 11. Example of a typical task

1 import json

2 3 student_answe r = """{{ STUDENTANSWER | e('py') }}""

4 SEPARATOR = "#<ab@17943918#@>#"

6 error* count = 9

7' def enrols):

S global error count

9 print(s)

19

11

12 • try:

13 graph_rep = json.loads(student_answer)

14 nodes = graph_rep['nodes']

15 edges = graph_rep['edges']

16- for i in range(len(nodes)):

17 nodes[i][0] - ( ' ' - joit( (nodes[i][0]) . split (' J))), cap italizeQ

18 >»»"-[]

19' for i in range(len(edges)):

29 answer.append([])

21' if edges[i][6] != -1:

22 answer[i].append((nodes[edges[l][0]][0]))

23 answer[i].append<(nodes[edgesIi][l]][0]))

24 answer[i].append(edges[i][2])

25 answer.sort(key = lambda row: (row[0],row[lLrow [2]))

26' except json.DSONDecodeError as e:

27 raise Exception("Oops. Illegal graph received (e xception {}). Please report [unless you did s

28

29 {% for TEST in TESTCASES

30 {{ TEST.testcode J-}

31 {{ TEST.extra >}

32 {% if not loop.last %}

33 print(SEPARATOR)

34 {% endif %}

35 {% endfor %}

Р и с. 12. Пример шаблона для типовой задачи с интерфейсом Graph F i g. 12. Example template for a typical task with Graph interface

Про пользовательские интерфейсы ответов было сказано выше, в последнем примере использовался встроенный интерфейс Graph.

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

Также можно просто настроить таблицу результатов, как, например, на рис. 9 заданы параметры для поля Result Columns, в этом случае результат будет выводиться как на рис. 13.

Twig. The flexible, fast, and secure template engine for PHP [Электронный ресурс]. URL: https://twig.symfony.com (дата обращения: 09.08.2019).

Vol. 15, No. 4. 2019 ISSN 2411-1473

sitito.cs.msu.ru

Modern Information Technologies and IT-Education

Help

м □ J о О

Проверить

Р и с. 13. Вывод результатов проверки F i g. 13. The check results output

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

Покажем возможности использования плагина для создания заданий с автоматической проверкой при разработке курса дисциплины «Прикладная теория автоматов» в LMS Moodle (рис. 14). При разработке курса использовались различные возможности платформы, в том числе плагин CodeRunner [25]. Некоторые примеры из этого курса уже демонстрировались выше. По курсу предполагается большое количество задач, ответом для которых являются диаграмма или таблица. Первая группа вопросов требует ответов в виде диаграммы, например, как на рис.11. Для ряда задач этого типа в курсе используется встроенный тип directed_graph, с пользовательским интерфейсом Graph и языком программирования Python3. Для других типовых вопросов разработаны специальные типы, как демонстрируется на рис. 12. Для проверки некоторых нюансов решения задач использовались тесты для каждого отдельного вопроса.

Вторая группа вопросов - ответы в виде таблицы. В задачах по теории автоматов используются различные типы таблиц. Для задач этого типа требуется разработка нового типа вопроса, в курсе для проверки использовался Python3. Ряд задач разработан со стандартным интерфейсом Table. Но стандартные таблицы достаточно громоздкие, что вызывало у студентов определенные затруднения (рис. 15).

Конечные автоматы с выходом (преобразователи). Абстрактный синтез

^ Сановные понятия и определения Й

Эквивалентность автоматов Мили и Мура Й

Основные понятия. Эквивалентность автоматов Мили «Мура(тест клекции) й

Щ Минимизация полностью определенны* автоматов Й

ЙЙ Эквивалентность Мили и Мура. Минимизация (тест к лекции) Й

^ Аудиторная самостоятельная работа Й

й Минимизация частичных автоматов (тест к лекции) К

* Абстрактный синтез Й

Задачи 3 Й

? Индивидуальное задание №2 й

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

Для сд ачи ИД32 □

Й Контрольная работа Й

Структурный синтез конечных автоматов

'и канонический метод структуртюго синтеза

Р и с. 14. Страница курса F i g. 14. Course Page

Р и с. 15. Работа студентов с таблицами F i g. 15. Students work with tables

Также возникала необходимость в дополнительных параметрах таблиц, в возможности изменения не всей таблицы, а части, в использовании выпадающих списков вместо текстовых полей, для упрощения проверки. Все это потребовало разработку специальных типов интерфейсов SM_mealy_table, SM_ moore_table, Struct_synt_table, Triangular_table для работы с разными таблицами (рис. 2, рис. 16).

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

Современные информационные технологии и ИТ-образование

Том 15, № 4. 2019

ISSN 2411-1473

sitito.cs.msu.ru

ьо

qO

Ы

qi

ы 42

Р и с. 16. Примеры специальных таблиц F i g. 16. Special tables examples

Заключение

Возможность расширения функционала LMS Moodle с помощью плагинов позволяет этой платформе оставаться популярной на протяжении многих лет. Один из таких плагинов CodeRunner, ориентированный на автоматическую проверку задач по программированию. Но гибкость применения и легкость добавления новых подтипов вопросов, благодаря архитектуре плагина, позволяют применять его для проверки различных вопросов c открытым ответом, оценить правильность, которых можно только с помощью программы, по таким дисциплинам как информатика, математика и другим техническим дисциплинам. Задача разработки нового плагина достаточно трудоемка, а CodeRunner позволяет без разработки нового плагина существенно расширить количество типов вопросов, типов задач с автоматической проверкой. Добавление возможностей осуществляется за счет использования различных пользовательских интерфейсов ответов или создания новых интерфейсов, разработки новых типов вопросов, которые сочетают в себе различные интерфейсы ответа, языки программирования для проверки, шаблоны и типы оценивания. В работе продемонстрирована возможность расширения области применения плагина CodeRunner и в целом LMS Moodle на примере разработки вопросов с автоматической проверкой для курса компьютерной поддержки дисциплины «Прикладная теория автоматов».

Список использованных источников

[1] Брайан А., Волченкова К. Н. Смешанное обучение: определение, модели, использование в системе высшего образования // Вестник Южно-Уральского государственного университета. Серия: Образование. Педагогические науки. 2016. Т. 8, № 2. С. 24-30. DOI: 10.14529/ped160204

[2] Жучков В. М. Электронное обучение в высшем образовании: современные и перспективные направления развития // Современное образование: традиции и инновации. 2018. № 4. С. 132-134. URL: https://www. elibrary.ru/item.asp?id=37169585 (дата обращения: 09.08.2019).

[3] Alammary A., Sheard J., Carbone A. Blended learning in higher education: Three different design approaches // Australasian Journal of Educational Technology. 2014. Vol. 30, No. 4. Pp. 440-454. DOI: 10.14742/ajet.693

[4] Баев В. Е., Старолетов С. М. Анализ применения технологии дополненной реальности в образовательном процессе // Ползуновский альманах. 2018. № 4. С. 95100. URL: https://www.elibrary.ru/item.asp?id=36470575 (дата обращения: 09.08.2019).

[5] Паскова А. А. Технологии искусственного интеллекта в персонализации электронного обучения // Вестник Майкопского государственного технологического университета. 2019. № 3. С. 113-122. URL: https://www. elibrary.ru/item.asp?id=41437795 (дата обращения: 09.08.2019).

[6] Соломатин К. В., Утемесов Р. М., Филимонова А. Ю., Шим-ко Е. А. Система LMS Moodle в виртуальной образовательной среде // Высокопроизводительные вычислительные системы и технологии. 2019. Т. 3, № 1. С. 155-160. URL: https://www.elibrary.ru/item. asp?id=39242613 (дата обращения: 09.08.2019).

[7] Фомина А. С. Смешанное обучение в вузе институциональный, организационно-технологический и педагогический аспекты // Теория и практика общественного развития. 2014. № 21. С. 272-279. URL: https://elibrary. ru/item.asp?id=23049656 (дата обращения: 09.08.2019).

[8] Андреева Н. В. Практика смешанного обучения: история одного эксперимента // Психологическая наука и образование. 2018. Т. 23, № 3. С. 20-28. DOI: 10.17759/ pse.2018230302

[9] Андрюшкова О. В., Горбунов М. А., Козлова А. В. Learning Management System как необходимый элемент Blended Learning // Открытое образование. 2017. Т. 21, № 3. С. 80-88. DOI: 10.21686/1818-4243-2017-3-80-88

[10] Liu Y., Bai Y., Chen Z. Research on E-Learning Supporting System: A Review from the Perspective of Knowledge Management // 2009 International Conference on E-Learning, E-Business, Enterprise Information Systems, and E-Government, Hong Kong, 2009. Pp. 329-332. DOI: 10.1109/EEEE.2009.95

[11] Muljo H. H., Perbangsa A. S., Pardamean B. Online learning prototype for higher education // 2017 International Conference on Information Management and Technology (ICIMTech), Yogyakarta, 2017. Pp. 49-53. DOI: 10.1109/ ICIMTech.2017.8273510

[12] Judge D. S., Murray B. Student and Faculty Transition to a New Online Learning Management System // Teaching and Learning in Nursing. 2017. Vol. 12, Issue 4. Pp. 277-280. DOI: 10.1016/j.teln.2017.06.010

[13] Jin S. Design of an online learning platform with Moodle // 2012 7th International Conference on Computer Science & Education (ICCSE), Melbourne, VIC, 2012. Pp. 1710-1714. DOI: 10.1109/ICCSE.2012.6295395

[14] Вертьянова А. А. Особенности применения технологии критериального оценивания в современном учебном процессе // Вестник Пермского государственного гуманитарно-педагогического университета. Серия № 1. Психологические и педагогические науки. 2016. № 2-2. С. 131-139. URL: https://elibrary.ru/item.asp?id=28341028 (дата обращения: 09.08.2019).

Modern Information Technologies and IT-Education

[15] Живенков А. Н., Иванова О. Г. Реализация информационной адаптивной системы обучения на базе LMS Moodle // Вестник Воронежского государственного университета. Серия: Системный анализ и информационные технологии. 2010. № 2. С. 88-92. URL: https://www. elibrary.ru/item.asp?id=15617366 (дата обращения: 09.08.2019).

[16] Moscinska K, Rutkowski J. Effective computer-assisted assessment: Challenges and solutions // 2018 IEEE Global Engineering Education Conference (EDUCON), Tenerife, 2018. Pp. 969-978. DOI: 10.1109/EDUC0N.2018.8363335

[17] Marchisio M., Barana A., Fioravera M., Rabellino S., Conte A. A Model of Formative Automatic Assessment and Interactive Feedback for STEM // 2018 IEEE 42nd Annual Computer Software and Applications Conference (COMPSAC), Tokyo, 2018. Pp. 1016-1025. DOI: 10.1109/C0MPSAC.2018.00178

[18] Barana A., Marchisio M. Ten Good Reasons to Adopt an Automated Formative Assessment Model for Learning and Teaching Mathematics and Scientific Disciplines // Procedia - Social and Behavioral Sciences. 2016. Vol. 228. Pp. 608613. DOI: 10.1016/j.sbspro.2016.07.093

[19] Смирнова Ж. В., Красикова О. Г Современные средства и технологии оценивания результатов обучения // Вестник Мининского университета. 2018. Т. 6, № 3. С. 9. DOI: 10.26795/2307-1281-2018-6-3-9

[20] Горисев С. А., Лобаненко О. Б., Решетникова С. Л., Ситни-кова О. В. Использование сервисов Moodle для мониторинга учебной деятельности студентов // Уровневая подготовка специалистов: государственные и международные стандарты инженерного образования. Сборник трудов Научно-методической конференции. Томск: ТПУ 2013. С. 134-135. URL: https://www.elibrary.ru/item. asp?id=20885782 (дата обращения: 09.08.2019).

[21] Bonk C., Graham C. R. The Handbook of Blended Learning: Global Perspectives, Local Designs. Pfeiffer Publishing, San Francisco, 2006.

[22] Чепасов П. А. Использование плагина CodeRunner из LMS Moodle для автоматической проверки задач по программированию на уроках информатики // Образование и информационная культура: теория и практика. Сборник научных трудов. Ульяновск, 2017. С. 134-135. URL: https://www.elibrary.ru/item.asp?id=30789407 (дата обращения: 09.08.2019).

[23] Lobb R., Harlow J. Coderunner: a tool for assessing computer programming skills // ACM Inroads. 2016. Vol. 7, No. 1. Pp. 47-51. DOI: 10.1145/2810041

[24] Wünsche B. C. et al. CodeRunnerGL - An Interactive Web-Based Tool for Computer Graphics Teaching and Assessment // 2019 International Conference on Electronics, Information, and Communication (ICEIC), Auckland, New Zealand, 2019. Рp. 1-7. DOI: 10.23919/ ELINFOCOM.2019.8706402

[25] Карманова Е. В. Особенности реализации смешанного обучения с использованием среды Moodle // Информатика и образование. 2018. № 8(297). С. 43-50. DOI: 10.32517/0234-0453-2018-33-8-43-50

Поступила 09.08.2019; принята к публикации 20.10.2019; опубликована онлайн 23.12.2019.

|об авторе:|

Перязева Юлия Валерьевна, доцент кафедры вычислительной техники, Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина)

(197376, Россия, г. Санкт-Петербург, ул. Профессора Попова, д.

5), кандидат физико-математических наук, ORCID: http://orcid.

org/0000-0002-7021-2899, peryazeva@list.ru

Автор прочитал и одобрил окончательный вариант рукописи.

References

[1] Bryan A., Volchenkova K.N. Blended Learning: Definition, Models, Implications for Higher Education. Bulletin of the South Ural State University. Series "Education. Educational Sciences". 2016; 8(2):24-30. (In Eng., abstract in Russ.) DOI: 10.14529/ped160204

[2] Zhuchkov V.M. Elektronnoe obuchenie v vysshem obrazo-vanii: sovremennye i perspektivnye napravleniya razvitiya [E-learning in higher education: modern and promising areas of development]. Sovremennoe obrazovanie: tradicii i innovacii. 2018; (4):132-134. Available at: https://www. elibrary.ru/item.asp?id=37169585 (accessed 09.08.2019). (In Russ.)

[3] Alammary A., Sheard J., Carbone A. Blended learning in higher education: Three different design approaches. Australasian Journal of Educational Technology. 2014; 30(4):440-454. (In Eng.) DOI: 10.14742/ajet.693

[4] Baev V.E., Staroletov S.M. Analysis of the application of augmented reality technology in the educational process. Polzunovskij al'manah. 2018; (4):95-100. Available at: https://www.elibrary.ru/item.asp?id=36470575 (accessed 09.08.2019). (In Russ.)

[5] Paskova A.A. Artificial intelligence technologies in e-learn-ing personalization. Vestnik Majkopskogo gosudarstvennogo tehnologiceskogo universiteta = The Bulletin of Maikop state technological university. 2019; (3):113-122. Available at: https://www.elibrary.ru/item.asp?id=41437795 (accessed 09.08.2019). (In Russ., abstract in Eng.)

[6] Solomatin K.V., Utemesov R.M., Philimonova A.Y., Shimko E.A. LMS MOODLE System in a the Virtual Educational Environment. High-performance computing systems and technologies. 2019; 3(1):155-160. Available at: https://www.eli-brary.ru/item.asp?id=39242613 (accessed 09.08.2019). (In Russ., abstract in Eng.)

[7] Fomina A. Blende Learning in Higher Schools: Institutional, Organization, Tehnological and Pedagogical Aspects. Theory and Practice of Social Development. 2014; (21):272-279. Available at: https://elibrary.ru/item.asp?id=23049656 (accessed 09.08.2019). (In Russ., abstract in Eng.)

[8] Andreyeva N.V. Blended Learning Practice in Russia: the History of one Experiment. Psychological Science and Education. 2018; 23(3):20-28. (In Russ., abstract in Eng.) DOI: 10.17759/pse.2018230302

[9] Andryushkova O.V., Gorbunov M.A., Kozlova A.V. Learning management system as a necessary element of blended learning. Open Education. 2017; 21(3):80-88. (In Russ., abstract in Eng.) DOI: 10.21686/1818-4243-2017-3-80-88

[10] Liu Y., Bai Y., Chen Z. Research on E-Learning Supporting System: A Review from the Perspective of Knowledge Man-

Современные информационные технологии и ИТ-образование

Том 15, № 4. 2019

ISSN 2411-1473

sitit0.cs.msu.ru

agement. In: 2009 International Conference on E-Learning, E-Business, Enterprise Information Systems, and E-Govern-ment, Hong Kong, 2009, pp. 329-332. (In Eng.) DOI: 10.1109/EEEE.2009.95

[11] Muljo H.H., Perbangsa A.S., Pardamean B. Online learning prototype for higher education. In: 2017 International Conference on Information Management and Technology (ICIM-Tech), Yogyakarta, 2017, pp. 49-53. (In Eng.) DOI: 10.1109/ ICIMTech.2017.8273510

[12] Judge D.S., Murray B. Student and Faculty Transition to a New Online Learning Management System. Teaching and Learning in Nursing. 2017; 12(4):277-280. (In Eng.) DOI: 10.1016/j.teln.2017.06.010

[13] Jin S. Design of an online learning platform with Moodle. In: 2012 7th International Conference on Computer Science & Education (ICCSE), Melbourne, VIC, 2012, pp. 1710-1714. (In Eng.) DOI: 10.1109/ICCSE.2012.6295395

[14] Vertianova A.A. Peculiarities Of Criterion-related Assessment Implementation in the Modern Educational Process. Vestnik Permskogo gosudarstvennogo gumanitarno-peda-gogicheskogo universiteta. Seriya № 1. Psihologicheskie i pedagogicheskie nauki. 2016; (2-2):131-139. Available at: https://elibrary.ru/item.asp?id=28341028 (accessed 09.08.2019). (In Russ., abstract in Eng.)

[15] Zhivenkov A.N., Ivanova O.G Implementation of Information Adaptive Learning System on the Basis of LMS Moodle. Proceedings of Voronezh State University. Series: Systems analysis and information technologies. 2010; (2):88-92. Available at: https://www.elibrary.ru/item.asp?id=15617366 (accessed 09.08.2019). (In Russ., abstract in Eng.)

[16] Moscinska K., Rutkowski J. Effective computer-assisted assessment: Challenges and solutions. In: 2018 IEEE Global Engineering Education Conference (EDUCON), Tenerife, 2018, pp. 969-978. (In Eng.) DOI: 10.1109/EDU-CON.2018.8363335

[17] Marchisio M., Barana A., Fioravera M., Rabellino S., Conte A. A Model of Formative Automatic Assessment and Interactive Feedback for STEM. In: 2018 IEEE42ndAnnual Computer Software and Applications Conference (COMPSAC), Tokyo, 2018, pp. 1016-1025. (In Eng.) DOI: 10.1109/COMP-SAC.2018.00178

[18] Barana A., Marchisio M. Ten Good Reasons to Adopt an Automated Formative Assessment Model for Learning and Teaching Mathematics and Scientific Disciplines. Procedia - Social and Behavioral Sciences. 2016; 228:608-613. (In Eng.) DOI: 10.1016/j.sbspro.2016.07.093

[19] Smirnova Y.K. The role of «model of mental» in coordination and incorporation of attention in indicative part of joint activities of preschoolers. Vestnik of Minin University. 2018; 6(3):11. (In Russ., abstract in Eng.) DOI: 10.26795/23071281-2018-6-3-11

[20] Gorisev S.A., Lobanenko O.B., Reshetnikova S.L., Sitnikova O.V. Use of Moodle services for monitoring educational activities of students. In: Proceedings of the Scientific and Methodological Conference "Level training of specialists: state and international standards of engineering education". TPU, Tomsk, 2013, pp. 134-135. Available at: https://www. elibrary.ru/item.asp?id=20885782 (accessed 09.08.2019). (In Russ.)

[21] Bonk C., Graham C.R. The Handbook of Blended Learning:

Global Perspectives, Local Designs. Pfeiffer Publishing, San Francisco, 2006. (In Eng.)

[22] Chepasov P.A. Using the CodeRunner plugin from LMS Moodle for automatic verification of programming tasks in computer science lessons. In: Proceedings of the Scientific and Methodological Conference "Education and Information Culture: Theory and Practice". Ulyanovsk, 2017, pp. 134-135. Available at: https://www.elibrary.ru/item.as-p?id=30789407 (accessed 09.08.2019). (In Russ.)

[23] Lobb R., Harlow J. Coderunner: a tool for assessing computer programming skill. ACM Inroads. 2016; 7(1):47-51. (In Eng.) DOI: 10.1145/2810041

[24] Wünsche B. C. et al. CodeRunnerGL - An Interactive Web-Based Tool for Computer Graphics Teaching and Assessment. In: 2019 International Conference on Electronics, Information, and Communication (ICEIC), Auckland, New Zealand, 2019, pp. 1-7. (In Eng.) DOI: 10.23919/ELINFO-COM.2019.8706402

[25] Karmanova E.V. The Features of Organizing Blended Learning Using LMS Moodle. Informatika i obrazovanie = Informatics and Education. 2018; (8):43-50. (In Russ., abstract in Eng.) DOI: 10.32517/0234-0453-2018-33-8-43-50

Submitted 09.08.2019; revised 20.10.2019; published online 23.12.2019.

About the author:

Julia V. Peryazeva, Associate Professor of the Department of Computer Science and Engineering, Saint Petersburg Electrotechnical University "LETI" (5 Professora Popova Str., St. Petersburg 197376, Russia), Ph.D. (Phys.-Math.), ORCID: http://orcid.org/0000-0002-7021-2899, peryazeva@list.ru

The author has read and approved the final manuscript.

Modern Information Technologies and IT-Education

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