УДК 004.422.8
Вестник СибГАУ Том 18, № 1. С. 25-32
ПРОГРАММНАЯ МОДИФИКАЦИЯ И РЕАЛИЗАЦИЯ ПРИЛОЖЕНИЯ MOODLE MOBILE
И. В. Василенко, Т. Н. Иванилова, В. А. Семенов
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
E-mail: Vasilenko_irina@myrambler.ru
Создание множества новых мобильных технических средств связи привело к активному развитию разнообразных мобильных приложений, в частности, в дистанционной образовательной сфере. Именно информационно-спутниковая технология, т. е. дистанционная образовательная технология, основанная на использовании преимущественно космических спутниковых средств передачи данных, а также глобальных и локальных сетей для обеспечения взаимодействия участников образовательного процесса, доступа обучающихся к информационным образовательным ресурсам, является наиболее инновационной и востребованной. Отсутствие в удаленных и труднодоступных местах, где недостаточно развиты или полностью отсутствуют сотовые и проводные телекоммуникации, уже не будет являться препятствием осуществления обучения на расстоянии через безопасный и надежный доступ в Интернет.
Мобильные спутниковые технологии дают возможность использовать быстрые каналы передачи данных: позволяют принимать и отправлять электронную почту, файлы, обращаться к базам данных, корпоративным сетям, просматривать интернет-страницы, проводить видеоконференции. Вне зависимости от территориального расположения пользователей мобильного дистанционного обучения спутниковые сети помогут без проблем передавать большие массивы данных, например, файлы выполненных работ.
Одним из назначений мобильных спутниковых связей является обеспечение связи при проведении выездных мероприятий (обучение, семинары, презентации и т. д.).
Существует механизм поддержки и развития дистанционного и электронного обучения у системы дистанционного обучения (СДО) Moodle - официального кросс-платформенного мобильного приложения Moodle Mobile 2, программный код которого находится в открытом доступе.
По заказу Центра технологий дистанционного обучения СибГАУ, в котором используется СДО Moodle, было составлено техническое задание по модификации Moodle Mobile 2 для того, чтобы предоставить пользователю более полную информацию об учебном процессе.
В результате исследования структуры мобильного приложения Moodle Mobile и дальнейших разработок была дописана серверная составляющая путем создания ркр-скриптов. Также реализованы дополнительные модули в Moodle Mobile с использованием HTML, CSS, JavaScript, Ionic framework, Apache Cordova, которые отображают контактную информацию преподавателей курса, учебный план с предоставлением пользователю списка дисциплин по семестрам, Ф. И. О. преподавателя и итоговую единицу дисциплины.
Выполнена сборка приложения под операционную систему Android. Приложение протестировано сервисом TestFairy, интегрировано в систему дистанционного обучения СибГАУ и размещено на портале дистанционного обучения СибГАУ под названием Moodle Mobile SibGTU с краткой инструкцией по установке.
Дополнительно разработанные возможности данного приложения способствуют повышению уровня коммуникации, информирования и успеваемости обучающихся, а также предоставляют доступ к информации в автономном режиме (без доступа в Интернет) при условии, что ранее эта информация была просмотрена.
Обучающимися могут быть как студенты, так и слушатели дополнительного образования, которые обучаются дистанционно, т. е. работники различных сфер, для которых созданы курсы.
Ключевые слова: спутниковая связь, мобильная передача данных, кросс-платформенное мобильное приложение, Moodle Mobile, HTML, CSS, JavaScript, Ionic, Apache Cordova.
Sibirskii Gosudarstvennyi Aerokosmicheskii Universitet imeni Akademika M. F. Reshetneva. Vestnik Vol. 18, No. 1, P. 25-32
SOFTWARE MODIFICATION AND IMPLEMENTATION OF MOODLE MOBILE APPLICATIONS
I. V. Vasilenko, T. N. Ivanilova, V. A. Semenov
Reshetnev Siberian State Aerospace University 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: Vasilenko_irina@myrambler.ru
Creation of a number of new mobile communications technologies has led to the development of a variety of mobile applications, in particular in the field of distance education. It is information and satellite technology, ie distance learning technologies based on the use of space mainly satellite-based data transfer, as well as global and local networks for interaction between the participants of the educational process, student's access to information and educational resources that is the most innovative and popular. Absence in remote and inaccessible areas, where insufficient or completely absent cellular and wireline telecommunications, will no longer be an obstacle to the implementation of distance learning through a safe and reliable Internet access.
Mobile satellite technology makes it possible to use fast data channels and can send and receive e-mail, files, access databases, corporate networks, browse Internet pages, video conferencing. Regardless of geographic location of mobile users of distance learning satellite network will help easily transfer large amounts of data, such as files of the executed works.
One of the purposes of mobile satellite communications is to provide communication during outdoor events (training, seminars, presentations, etc.).
There is a mechanism of support and development of distance and e-learning in distance learning system (LMS) Moodle - a formal cross-platform mobile 2 Moodle Mobile app, the code of which is publicly available.
By order of distance learning technologies SibSA U Center, which uses the Moodle LMS, the terms of reference were drawn up for the modification of Moodle Mobile 2 in order to provide the user with more information about the learning process.
As a result of studying the structure of Moodle Mobile mobile applications and further development, the server component was unfinished, by creating a php script. Additional modules are also implemented in Moodle Mobile by using HTML, CSS, JavaScript, Ionic framework, Apache Cordova, which reflect: the contact information of the course teachers; curriculum with the presentation to the user a list of subjects per semester, the teacher's name and the final unit discipline.
Applications for the Android operating system have been assembled.
The app has been tested by the service TestFairy, integrated into the system of distance learning SibSA U and posted on the portal of distance learning SibSA U called "Moodle Mobile SibGTU" with the brief instructions for installation.
Additionally developed possibilities of this application enhance the level of communication, information and academic performance of students, as well as provide access to information in offline mode (without internet access) provided that before this information has been viewed.
Learners can be both students and students of additional education who are trained remotely, that is, employees of various fields, which created courses.
Keywords: satellite connection, mobile data, cross-platform mobile application, Moodle Mobile, HTML, CSS, JavaScript, Ionic, Apache Cordova.
Введение. Актуальность исследований, представленных в данной статье, определяется необходимостью проведения современных разработок в области внедрения мобильных приложений в образовательную сферу деятельности, а именно, в область, связанную с дистанционными образовательными технологиями с применением космических спутниковых средств передачи данных [1]. Наиболее распространенной системой дистанционного обучения (СДО) в России и за рубежом на данный момент времени является СДО Moodle. Система с открытым программным кодом позволяет дописывать приложения, необходимые для реализации конкретных задач пользователей.
В данной статье рассматриваются исследования, предназначенные для модификации официального мобильного приложения Moodle Mobile 2 [2-4].
Мобильное приложение Moodle Mobile 2 работает под управлением таких минимальных версий мобильных операционных систем, как Android v.4.1.1, iOS v.3.9.1 и др. При этом версия системы дистанционного обучения Moodle должна быть не ниже v.2.4. Для подключения к конкретному сайту Moodle необходимо иметь доступ в Интернет.
Так как исходный код приложения Moodle Mobile находится в открытом доступе, появилась возможность расширения функционала приложения [5].
Авторами был произведен этап установки всех необходимых зависимостей и программ: Node.js, Ionic Framework, Cordova, Moodle Mobile. Для разработки использовались HTML, CSS и JavaScript [6; 7].
В процессе разработки было проведено проектирование организации учебного процесса с использованием дистанционных технологий. Проектирование осуществлялось в программе BPwin, в которой были реализованы две модели - As-Is и To-Be.
Была разработана контекстная диаграмма организации учебного процесса Moodle SibGTU (рис. 1). Организация учебного процесса в As-Is состоит:
- из подготовки учебного процесса;
- дистанционного учебного процесса;
- формирования результата учебного процесса.
Для организации учебного процесса необходимо
получить информацию о студенте, информацию о преподавателе и дистанционных курсах.
Разработанная модель To-Be отличается от модели As-Is тем, что в ней представлены новые возможности реализации дистанционного обучения через Moodle, такие как формирование индивидуального учебного плана и средство получения контактной информации о преподавателе, с помощью которой студент может написать или позвонить преподавателю, задать вопросы или договориться о консультации.
Модифицированное приложение содержит модули «Контактная информация преподавателей курса», «Учебный план», добавлена ссылка «Преподаватели» и модифицирован модуль отображения участников курса.
Разработка программного модуля «Контактная информация преподавателей курса». В Moodle Mobile 2 в пункте меню «Мои курсы» в блоке каждого курса есть ссылка на его участников, где отображаются все пользователи, подписанные на данный курс, независимо от роли участника [8]. Представим, что на курс подписано большое количество пользователей, и выделить среди них преподавателя будет достаточно сложно, что особенно важно для студентов заочного обучения, поэтому было решено разделить участни-
ков курса на студентов и преподавателей путем добавления отдельной ссылки «Преподаватели».
При реализации данного модуля в структуру приложения были внесены следующие изменения и дополнения:
- изменение модуля отображения участников курса (фильтрация по роли «студент»);
- добавление ссылки «Преподаватели».
Изменение модуля отображения участников
курса. Структура подкаталога Райара^ - «Участники», расположенная в каталоге addons, представлена на рис. 2.
На рис. 2 можно увидеть, что в структуре подкаталога РайМраШъ есть контроллер controllers/list.js и шаблон templates/list.html, которые отображают полный список участников курса.
Рис. 1. Организация учебного процесса Moodle SibGTU (The organization of educational process Moodle SibGTU)
▼ Q participants T Q controllers
0« list.js ► Ù lancj С services
0î handlers,js Ë participants.js T С templates E list.html Ё main.js
Рис. 2. Структура подкаталога Рarticipants (The structure of the subdirectory 'Tarticipants")
Контроллер list.js будет получать и передавать шаблону данные на отображение всех участников с помощью вспомогательной службы, определенной в participants.js. Контроллер будет также осуществлять дополнительные функциональные возможности, например, поддержка функции «потяните вниз, чтобы обновить».
/services - каталог содержит службы приложений. Служба handlers.js предназначена для работы со ссылками, которая их обрабатывает и по необходимости перенаправляет на сайт Moodle. /lang - каталог языковых файлов. /main.js - это обязательный файл. Он создает модуль AngularJS, определяет, где будет отображаться работа плагина в приложении, подключает контроллеры и шаблоны, подключает необходимые плагины в зависимости от того, что нажал пользователь.
Добавление ссылки «Преподаватели». При добавлении модуля «Контактная информация преподавателей курса» была разработана такая же структура подкаталога ТеасИег в каталоге addons, представленная на рис. 3.
В структуре подкаталога ТеасИег расположен контроллер controllers/list.js и шаблон templates/list.html, которые отображают список преподавателей курса.
Контроллер list.js будет получать и передавать шаблону данные на отображение всех преподавателей с помощью вспомогательной службы, определенной в teacher.js. Контроллер будет также осуществлять дополнительные функциональные возможности, например, поддержка функции «потяните вниз, чтобы обновить».
/services - каталог содержит службы приложений. Служба handlers.js предназначена для работы со ссылками, которая их обрабатывает и по необходимости перенаправляет на сайт Moodle. /lang - каталог языковых файлов. /main.js - это обязательный файл. Он создает модуль AngularJS, определяет, где будет отображаться работа плагина в приложении, подключает контроллеры и шаблоны, подключает необходимые плагины в зависимости от того, что нажал пользователь.
Результат работы модуля приложения на мобильном устройстве представлен в разделе меню «Мои курсы» (рис. 4).
Т С teacher
Т С controllers.
Л list.js ► С lang Y С services
л handlers.js Qj teacher.js С templates
0 list.html Qf main.js
Рис. 3. Структура подкаталога ТеасИег (The structure of the subdirectory 'Teacher")
Рис. 4. Раздел меню «Мои курсы» (Section menu "My Courses")
При переходе по ссылке «Преподаватели» открывается список преподавателей данного курса. Выбрав нужного преподавателя, открывается его профиль, где показана расширенная контактная информация: электронная почта, телефон, адрес. Также есть возможность отправить сообщение, добавить контакт, заблокировать контакт и просмотреть оценки.
Данное разделение участников курса на учащихся и преподавателей поможет быстро найти нужного пользователя. При первом открытии списка учащихся, преподавателей или профиля пользователя данные сохраняются в памяти телефона, что позволяет получить доступ к информации даже в автономном режиме (т. е. без доступа в Интернет).
Разработка программного модуля «Учебный план». Учебный план - это документ, определяющий состав учебных предметов, последовательность их изучения и общий объем отводимого на это времени.
В учебном плане высших учебных заведений определяется количество часов на семестр и на все время обучения (от 2 до 6 лет). В нем уточняются виды занятий по учебным предметам: количество лекций, семинарских, практических и лабораторных занятий, практикумов. Указаны учебные предметы, выносимые на зачеты и экзамены в каждом семестре, разные виды практики (производственная, педагогическая, преддипломная и др.).
При добавлении модуля «Учебный план» в мобильное приложение Moodle Mobile 2, в подкаталог Core были добавлены подкаталоги Semester и Plan, структура которых показана на рис. 5 и 6 соответственно.
Рис. 5. Структура подкаталога Semester (The structure of the subdirectory "Semester")
В структуре подкаталога Semester расположен контроллер controllers/semester.js и шаблон templates/ semester.html, которые отображают список семестров. /lang - каталог языковых файлов. /main.js - это обязательный файл. Он создает модуль AngularJS, определяет, где будет отображаться работа плагина в приложении, подключает контроллеры и шаблоны, подключает необходимые плагины в зависимости от того, что нажал пользователь.
В структуре подкаталога Plan расположен контроллер controllers/list.js и шаблон templates/plans.html, которые отображают список дисциплин, Ф. И. О. преподавателя каждой дисциплины и итоговую единицу дисциплины.
Контроллер list.js будет получать и передавать шаблону данные на отображение всех дисциплин для выбранного семестра с помощью вспомогательной службы, определенной в services/plans.js. /lang - каталог языковых файлов. /main.js - это обязательный файл. Он создает модуль AngularJS, определяет, где будет отображаться работа плагина в приложении, подключает контроллеры и шаблоны, подключает необходимые плагины в зависимости от того, что нажал пользователь.
В слайд-меню приложения добавлена ссылка на учебный план, как показано на рис. 7. Рассмотрим работу модуля на примере студента, подписанного на группу 21-10 очно-заочной формы обучения, для которой в системе Moodle представлен упрощенный учебный план на два семестра (рис. 8).
Василенко Ирина Витальевна Дистанционное обучение
(•) Мои курсы Щ-] Учебный план
Главная страница А Уведомления Сообщения 1 События календаря ■ Мои файлы
Сайт ^^ Помощь
Ди
си<
Kai
Ин
за< cm
Ка.
Рис. 6. Структура подкаталога Plan (The structure of the subdirectory "Plan")
Рис. 7. Слайд-меню приложения (Slide-menu the application)
При выборе, например, первого семестра, пользователь увидит список всех дисциплин, Ф. И. О. преподавателя каждой дисциплины и вид промежуточной аттестации, названной «Итоговая единица» (рис. 9).
— Учебный план
Рис. 8. Окно выбора семестра (Semester selection window)
Преподаватель: Рафикова Светлана Анатольевна Предмет История Итоговая единица: Экзамен
Преподаватель: Подгорбунская Ирина Геннадьевна Предмет: Иностранный язык Итоговая единица: Зачет
Преподаватель: Яковлева Светлана Федоровна Предмет: Математика, Математический анализ Итоговая единица: Зачет
Преподаватель: Яковлева Светлана ©едоровна Предмет Математика. Алгебра и геометрия Итоговая единица: Экзамен
Преподаватель: Тоебис Елена Михайловна Предмет Технология программирования Итоговая единица: Зачет
Преподаватель: Иванилова Татьяна Николаевна Предмет Дискретная математика Итоговая единица: Зачет
Преподаватель: Жиленко Нагалья Александровна Предмет Экология Итоговая единица: Зачет
Рис. 9. Учебный план первого семестра (The curriculum of the first semester)
Аналогичным образом, через мобильное приложение Moodle Mobile 2 студенты других групп, для которых в системе СДО Moodle заполнен учебный план, могут его просматривать. Учебный план заполняет администратор сайта на основании данных, полученных в деканате.
Данная возможность позволяет пользователям получить необходимую информацию по дисциплинам в автономном режиме (т. е. без доступа в Интернет) при условии, если эта информация однажды была просмотрена, так как мобильное приложение устроено таким образом, что оно загружает в память телефона все действия пользователя.
После модификации и сборки приложения было произведено тестирование с помощью сервиса ТеБМгу [9-11]. Данный сервис бесплатный и прост в использовании. При загрузке проекта на сервис создается специальный проект для тестирования. После того, как прошло тестирование, сервис позволяет проследить то, как использовалось приложение на устройстве по диаграммам (рис. 10).
На диаграммах показана:
- задержка отзывчивости;
- производительность памяти;
- производительность процессора;
- пропускная способность сети.
Рис. 10. Результаты тестирования (Test results)
Анализ диаграмм и статистики сервиса TestFiry показали, что приложение работает исправно на различных устройствах и под разными версиями операционной системы Android.
Заключение. В результате программной модификации и реализации приложения Moodle Mobile были выполнены следующие задачи:
1) подготовлено техническое задание на доработку мобильного приложения;
2) проведен этап проектирования дистанционного учебного процесса;
3) исследована структура мобильного приложения Moodle Mobile;
4) дописана серверная составляющая путем разработки php-скриптов;
5) разработаны модули в Moodle Mobile SibGTU с использованием HTML, CSS, JavaScript, Ionic framework, Apache Cordova:
- отображение учебного плана группы;
- отображение контактной информации преподавателей курса;
- модифицирован модуль «Участники» курса;
6) разработан новый дизайн интерфейса мобильного приложения;
7) выполнена сборка приложения под операционную систему Android;
8) приложение протестировано сервисом TestFairy, интегрировано в систему дистанционного обучения СибГАУ и размещено на портале дистанционного обучения СибГАУ под названием Moodle Mobile SibGTU с краткой инструкцией по установке [12-15].
Библиографические ссылки
1. Персональная спутниковая связь [Электронный ресурс]. URL: http://compress.ru/article.aspx?id=11523 (дата обращения: 14.09.2016).
2. Setting up your development environment for Moodle Mobile 2 [Электронный ресурс]. URL: https:// docs.moodle.org/dev/Setting_up_your_development_envi
ronment_for_Moodle_Mobile_2 (дата обращения: 14.09.2016).
3. Moodle Mobile features [Электронный ресурс]. URL: https://docs.moodle.org/30/en/Moodle_Mobile_features (дата обращения: 1.12.2015).
4. Moodle Mobile [Электронный ресурс]. URL: https:// docs.moodle.org/dev/Moodle_Mobile#Ionic_.2F_AngularJS (дата обращения: 02.02.2016).
5. GidHub. MoodleMobile [Электронный ресурс]. URL: https://github.com/moodlehq/moodlemobile (дата обращения: 12.09.2016).
6. Современный учебник JavaScript [Электронный ресурс]. URL: https://learn.javascript.ru/ (дата обращения: 10.03.2016).
7. Ionic Book: Table of Contents [Электронный ресурс]. URL: http://ionicframework.com/docs/guide/ (дата обращения: 1.03.2016).
8. Moodle Mobile Plugins Development [Электронный ресурс]. URL: https://docs.moodle.org/dev/ Moodle_Mobile_Plugins_Development (дата обращения: 24.02.2016).
9. Инфраструктура разработки приложения на PhoneGap для iOS и Android [Электронный ресурс]. URL: https://habrahabr.ru/company/arcadia/blog/257749/ (дата обращения: 5.03.2016).
10. TestFiry [Электронный ресурс]. URL: https:// free.testfairy.com (дата обращения: 16.09.2016).
11. IntelliJ IDEA [Электронный ресурс]. URL: https://www.jetbrains.com/idea/ (дата обращения: 04.04.16).
12. Центр технологий дистанционного обучения : сайт СибГАУ [Электронный ресурс]. URL: http:// ctdo.sibgtu.ru (дата обращения: 10.12.2016).
13. Мобильное приложение для обучения муниципальных служащих - специалистов лесничеств / И. В. Василенко [и др.] // Хвойные бореальные зоны. Теоретический и научно-практический журнал. 2016. Т. XXXIV, № 3-4. С. 141-145.
14. Интеграция расширенной версии Moodle Mobile 2 с электронной образовательной средой СибГТУ / И. В. Василенко [и др.] // Экологическое
образование и природопользование в инновационном развитии региона : межрегион. науч.-практ. конф. : сб. статей школьников, студентов, аспирантов и молодых ученых / СибГТУ, Красноярск. 2016. С. 81-84.
15. Возможности Moodle Mobile в дистанционном обучении / И. В. Василенко [и др.] // Вестник СибГТУ : теоретический и научно-практический журнал. 2015. № 1. С 13-16.
References
1. Personal satellite communications. Available at: http://compress.ru/article.aspx?id=11523 (accessed 14.09. 2016).
2. Setting up your development environment for Moodle Mobile 2. Available at: https://docs.moodle.org/ dev/Setting_up_your_development_environment_for_ Moodle_Mobile_2 (accessed 14.09.2016).
3. Moodle Mobile features. Available at: https://docs. moodle.org/30/en/Moodle_Mobile_features (accessed 1.12.2015).
4. Moodle Mobile. Available at: https://docs.moodle. org/dev/Moodle_Mobile#Ionic_.2F_AngularJS (accessed 02.02.2016).
5. GidHub. MoodleMobile2. Available at: https:// github.com/moodlehq/moodlemobile2 (accessed 12.09.2016).
6. Modern manual JavaScript. Available at: https:// learn.javascript.ru/ (accessed 10.03.2016).
7. Ionic Book: Table of Contents. Available at: http://ionicframework.com/docs/guide/ (accessed 1.03.2016).
8. Moodle Mobile Plugins Development. Available at: https://docs.moodle.org/dev/Moodle_Mobile_Plugins_ Development (accessed 24.02.2016).
9. Infrastructure application development on PhoneGap for iOS and Android. Available at: https:// habrahabr.ru/company/arcadia/blog/257749/ (accessed 5.03.2016).
10. TestFiry Available at: https://free.testfairy.com (accessed 16.09.2016).
11. IntelliJ IDEA. Available at: https://www.jetbrains. com/idea (accessed 04.04.16).
12. The center of distance learning technologies: website SibGTU. Available at: http://ctdo.sibgtu.ru (accessed 10.12.2016).
13. Vasilenko I. V., Semenov V. A. et al. [The mobile application for training municipal employees - forestry specialists]. Khvoynye boreal'nye zony. 2016, Vol. XXXIV, No. 3-4, P. 141-145 (In Russ.).
14. Vasilenko I. V., Semenov V. A. et al. [Integration of the expanded version of Moodle Mobile 2 e-learning environment SibGTU]. Mezhregional'naya nauchno-prakticheskaya konferentsiya "Ekologicheskoe obrazovanie i prirodopol'zovanie v innovatsionnom razvitii regiona" [Interregional Scientific and Practical Conference "Environmental education and natural resources in innovative development of the region"]. Krasnoyarsk, SibGTU Publ., 2016, P. 81-84 (In Russ.).
15. Vasilenko I. V., Semenov V. A. et al. [Moodle mobile opportunities in distance learning]. Vestnik SibGTU. 2015, No. 1, P. 13-16 (In Russ.).
© Василенко И. В., Иванилова Т. Н., Семенов В. А., 2017