Научная статья на тему 'МЕТОДОЛОГИЯ РЕАЛИЗАЦИИ МОДУЛЕЙ В СДО MOODLE'

МЕТОДОЛОГИЯ РЕАЛИЗАЦИИ МОДУЛЕЙ В СДО MOODLE Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
273
86
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
DISTANCE LEARNING / E-LEARNING / LMS / MOODLE / PLUGINS / MODULES / PHP / ДИСТАНЦИОННОЕ ОБУЧЕНИЕ / ЭЛЕКТРОННОЕ ОБУЧЕНИЕ / СДО / ПЛАГИНЫ / МОДУЛИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зайцев Константин Александрович

В данной статье рассмотрено понятие «системы дистанционного обучения» на примере СДО Moodle. Исследована и описана методология реализации модулей в СДО Moodle.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Зайцев Константин Александрович

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

Текст научной работы на тему «МЕТОДОЛОГИЯ РЕАЛИЗАЦИИ МОДУЛЕЙ В СДО MOODLE»

УДК 004

Информационные технологии

Зайцев Константин Александрович, магистрант, Московский Автомобильно-дорожный Институт - МАДИ, Россия, г. Москва

МЕТОДОЛОГИЯ РЕАЛИЗАЦИИ МОДУЛЕЙ В СДО MOODLE

Аннотация: В данной статье рассмотрено понятие «системы дистанционного обучения» на примере СДО Moodle. Исследована и описана методология реализации модулей в СДО Moodle.

Ключевые слова: дистанционное обучение, электронное обучение, СДО, Moodle, плагины, модули, php.

Annotation: This article discusses the concept of « learning management systems» on the example of LMS Moodle. The methodology for implementing modules in Moodle is studied and described.

Keywords: distance learning, e-learning, LMS, Moodle, plugins, modules,

php.

Системы дистанционного обучения (СДО или LMS, от английского -learning management systems) позволяют организовать учебный процесс «с нуля» и отслеживать успешность учеников посредством создания онлайн-курсов или виртуальных классов, доступных в любое время и в любой точке мира, где есть интернет [1]. Все учебные материалы при этом хранятся в одном месте, их удобно адаптировать и пересматривать в зависимости от целей обучения и сферы деятельности компании или организации.

Moodle - система дистанционного обучения предназначенная для предоставления всем участникам учебного процесса единой надежной, безопасной и интегрированной системы для создания персонализированной учебной среды [2]. Является полностью бесплатной, распространяется под

лицензией General Public License и обеспечивает высокий уровень функциональности в создании и управлении образовательными онлайн-курсами.

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

Процесс реализации состоит из 4-х основных этапов, характерных для всех типов модулей для СДО Moodle:

■ подготовка;

■ разработка;

■ тестирование;

■ установка.

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

Рисунок 1. Этапы реализации модуля для СДО Moodle

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

Этап подготовки

Все установленные и разработанные модули в системе Moodle расположены на веб-сервере в корневом каталоге с исходным кодом в директории mod.

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

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

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

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

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

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

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

Для поддержки мультиязычности и возможности перевода плагина на несколько языков, необходимо создать директорию lang, в которой необходимо разместить соответствующие языковые подпапки. Внутри каждой такой папки должен располагаться файл с расширением php и названием, соответствующим наименованию плагина. Например, название папки en соответствует английскому языку, а ru - русскому. Файл с языковыми настройками состоит из ассоциативного массива $string, ключом которого является кодовое название строки, а значением - строка на нужном языке. Благодаря встроенной функции get_string () в любом месте исходного кода Moodle можно получить необходимую строку. Для этого данной функции необходимо передать два параметра - название плагина и кодовое название строки.

Наименование, версию плагина, метаданные, минимальные системные требования к системе Moodle и дополнительные используемые плагины необходимо описать в файле version.php расположенном в корневом каталоге разрабатываемого модуля.

Обобщенная файловая структура для разработки плагина в СДО Moodle представлена на рис. 2.

Плагин

> СИ йь

р'х

- с1авзев

>

1апд

| —^ ¡пс1ех.рИр

—^ ую\л?.рЬ|р

- —^ уегзюп.рИр

Рисунок 2. Обобщенная файловая структура плагина в СДО Мооё1е

Этап разработки

Этап разработки состоит из создания и написания исходных файлов, отвечающих за функциональность плагина, которые располагаются в описанных выше директориях [3].

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

Благодаря встроенному редактору для файлов 1ш1а11.хт1, который доступен главному администратору системы после установки СДО Мооё1е, имеется возможность создавать, просматривать и изменять файлы установки, а также просматривать связи между таблицами.

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

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

Файл index.php содержит в себе визуальное представление всех экземпляров данного элемента курса.

Файл mod_form.php служит для отображения веб-интерфейса плагина в режиме редактирования.

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

Файл view.php содержит веб-интерфейс отображения плагина в режиме использования на странице курса.

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

Файл settings.php необходим, если плагин должен иметь функционал настройки со стороны администратора системы. Например, в настройках плагина «Тест» предоставляется возможность указать ограничение по времени, задать количество попыток, максимальную оценку и метод оценивания.

Этап тестирования

Этап тестирования необходим для проверки разработанных на предыдущем этапе функций, а также написания тестов для ещё не реализованных функций. Написание тестов в СДО Moodle происходит с использованием популярного фреймворка PHPUnit, основанного на модульном тестировании.

Функциональные возможности РНРипй [4]:

■ тестирование исключений;

■ провайдеры данных;

■ создание модульных тестов;

■ тестирования кода, взаимодействующего с базой данных;

■ поддержка фиктивных объектов;

■ генераторы отчетов;

■ интерфейс командной строки для выполнения тестов.

Для тестирования функций, реализованных в файле lib.php необходимо в директории tests создать файл lib_test.php и унаследовать класс от advanced_testcase.

Перед запуском каждого теста вызывается метод setUp, после выполнения теста вызывается метод tearDown. Методы setUpBeforeClass и tearDownAfterClass вызываются единожды перед началом и окончанием всех тестов соответственно. При запуске тестирования фреймворк PHPUnit начинает выполнение всех методов, начинающихся со слова test [5].

Внутри тестовых методов используется один из методов проверки, начинающихся с префикса assert. К примеру, при использовании метода assertEquals тест считается успешным, если плановое и фактическое значения равны. Пример тестового класса представлен на рис. 3.

l <?php

2

¿class modvtstream testcase extends advanced testcase

Jwwwwwwv-Vwwwwwwv —

{

5

public static function setUpBeforeClass{) {

global $CFG;

require_once($CFG->dirroot . '/mod/lib.php1);

>

11

public function test_deleting() 13 {

$this->resetAfterTest(true); $DB->delete_records{ user'); $this->assertEmpty{$DB->get_records('user'});

}

18

public function test_user_table__was_reset() 20 {

$this->assertEquals{2, $DB->count_records{1 user1, arrayO));

>

23 >

Рисунок 3. Пример тестового класса

Перед выполнением тестов в файле config.php, расположенном в корневой директории Moodle необходимо сконфигурировать тестовую среду, а именно указать сервер базы данных файловый сервер для тестов и произвести её инициализацию командой php admin/tool/phpunit/cli/init.php [6].

Тестирование происходит через консольную утилиту phpunit. При запуске утилиты без параметров, происходит тестирование всех плагинов в системе. Чтобы протестировать определенный файл, утилите необходимо указать путь к файлу и название тестируемого класса. Запуск тестов с помощью консольной утилиты приведен на рис. 4.

-* moodle vendor/bin/phpunit --debug mod_bookref_lib_testcase mod/bookref/tests/lib_test.php Moodle 3.1.4+ (Build: 20170202)

Php: 7,0.15,0.0,16.04,4, mysqll : 5 . 7 .1 7-0ubuntu0 .1 6 , 04 . 2 , OS [ Linux 4.4,0-72-generic x86_64 PHPUnlt 4.B.27 by Sebastian Bergmann and contributors.

Starting test ' mod_bookref_lib_testcase : : test_bookref_type_book_naire_is_valid ' . Starting test 1mod_bookref_lib_testcase: : test_bookref_type_article_naire_is_valid 1 . Starting test 1 mod_bookref_lib_testcase : : test_bookref _type_dissertation_nanie_is_valid 1 . Starting test 1mod_bookref_lib_testcase::test_bookref_type_book_conferenoe_is_valid'. Starting test 1 mod_bookref_lib_testcase : : test_bookref_type_abstract_nanie_Is_valId ' . Starting test ' mod_bookref_lib_testcase : : test_bookref_type_preprint_name_Is_valid ' . Starting test 1mod_bookref_lib_testcase::test_bookref_type_report_name_is_valid1. Starting test 1 mod_bookref_lib_testcase : : test_bookref_type_internet_nanie_is_valid ' .

Time: 393 ms, Memory: 32.00MB OK (B tests, B assertions)

Рисунок 4. Запуск тестов с помощью консольной утилиты

Помимо консольной утилиты, запускать тесты позволяют большинство сред разработки поддерживающих PHP, такие как NetBeans, PHPStorm, и Eclipse.

Этап установки

Установить разработанный плагин типа «элемент курса» в СДО Moodle можно двумя способами.

Первый способ заключается в том, что администратору в настройках системы необходимо перейти в раздел «Плагины», затем перейти к пункту «Установка плагина». Далее необходимо загрузить архив в формате zip c исходными файлами плагина [7].

Второй способ заключается в копировании исходных файлов плагина в каталог mod, расположенный в корневой директории Moodle на веб-сервере. Следующим шагом необходимо перейти на сайт. Администратору системы будет показано предупреждение о плагинах, требующих внимания [8].

Рисунок 5. Уведомление о плагинах, требующих внимания

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

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

В пункте меню «Обзор плагинов» раздела «Плагины» отображаются все установленные в системе плагины (рис. 5.). В данном разделе можно увидеть версию плагина, изменить его настройки (если предусмотрена такая возможность), а также удалить плагин [9].

Обзор плагинов

Проверить наличие обновлений

Последняя проверка обновлений: 9 Март 2020,22:22

Название плагина Версия Доступность Действия Заметки

Модули элементов курсаО

ф Задание тоЬ.аэадп 2019111800 Включено Установки Удалить

Задание 2.2 (Отключено) тоЬ.аБадптеШ 2019111800 Отключено Удалить

Книга тос!_Ьоок 2019111800 Включено Установки Удалить

Чат тос)_сЬа1 2019111800 Включено Установки Удалить

7 Опрос тос1_сИоюе 2019111800 Включено Удалить

| База данных гпос!_с1а{а 2019111800 Включено Установки Требуется для: Шег_с1а1а

Обратная связь тосиее<1Ьаск 2019111800 Включено Установки Требуется для: ЫосМее<ЗЬаск

Рисунок 6. Страница со списком установленных плагинов

Для добавления плагина в курс необходимо перейти в «Режим редактирования» на странице курса, затем нажать на кнопку «Добавить элемент

или ресурс» и выбрать необходимый элемент курса. Пример окна с добавлением элемента или ресурса курса представлен на рис. 7.

Добавить элемент или ресурс

ЭЛЕМЕНТЫ КУРСА

п

Г)

о о

п

О YouTube Stream

dl Анкета

База данных

ki Вики

Внешний

инструмент

AaJ Глоссарий

Задание

Модуль «YouTube Stream» позволяет встраивать видеозаписи с сервиса YouTube, а так же имеет возможность быстрого создания прямых трансляции прямо из интерфейса Moodle.

Рисунок 7. Окно добавления элемента курса

Библиографический список:

1. Системы дистанционного обучения. [Электронный ресурс] URL: https://evergreens.com.ua/ru/articles/best-lms-2020.html (дата обращения: 15.03.2020).

2. Moodle. Open-source learning platform. [Электронный ресурс] URL: https://moodle.org (дата обращения: 15.03.2020).

3. Activity modules. [Электронный ресурс] URL: https://docs.moodle.org/dev/Activity_modules (дата обращения: 18.03.2020).

4. PHPUnit. [Электронный ресурс] URL: https://phpunit.de (дата обращения: 03.04.2020).

5. API. [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/API (дата обращения: 28.03.2020).

6. Steve Foreman The LMS Guidebook: Learning Management Systems Demystified. — Association for Talent Development, 2017. — 248 с.

7. Jason Cole, Helen Foster Using Moodle: Teaching with the Popular Open Source Course Management System. — O'Reilly Media, 2007. — 284 с.

8. Ruth C. Clark, Richard E. Mayer e-Learning and the Science of Instruction: Proven Guidelines for Consumers and Designers of Multimedia Learning. — Wile, 2016. — 528 с.

9. Steve Foreman The LMS Guidebook: Learning Management Systems Demystified. — Association for Talent Development, 2017. — 248 с.

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