Обзор и анализ состояния проблемы обработки

Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
УДК 004.75
А.Н. Дуккардт, И.А. Шкамардин, Е.А. Слепцова
СРЕДА КОМПЬЮТЕРНОГО ТЕСТИРОВАНИЯ НА ОСНОВЕ ОБЛАЧНЫХ
ТЕХНОЛОГИЙ. ПРОГРАММНЫЙ ИНТЕРФЕЙС
В данной статье рассмотрены основные проблемы создания и использования систем компьютерного тестирования знаний обучающихся. Обоснован выбор
облачных технологий в качестве наиболее эффективного средства реализации
систем тестирования среди существующих на сегодняшний день технологий.
Освещены особенности и достоинства облачных вычислений. Кроме того предложена реализация системы тестирования в виде двух программных модулей:
модуля администрации и модуля программного интерфейса (API). В статье выявлены базовые требования к программному интерфейсу и разрабатываемой системе тестирования в целом. Подробно рассмотрены функциональные компоненты и архитектура модуля API, его основные возможности и преимущества по
сравнению с альтернативными вариантами реализации процедуры тестирования,
а также представлен алгоритм работы пользователя с вышеозначенным модулем.
Облачные технологии, тестовые задания, тестовый контроль знаний, компьютерное тестирование.
Duckardt A.A., Shkamardin I.A., Sleptsova E.A.
THE ENVIRONMENT OF COMPUTER TESTING ON THE BASIS OF
CLOUDY TECHNOLOGIES. PROGRAM INTERFACE
The article is devoted to basic problems of creating and usage of computer-based
testing systems. The choice of cloud technology as the most effective means of implementing systems testing among currently existing technologies. Then the main features
and advantages of cloud computing were highlighted. Much attention is given to implementation of the testing systems in the form of two software modules: Administration
module and module of Application programming interface (API). Also the basic requirements for API and testing systems as a whole are determined in the article. It is
spoken in detail about the functional components and the architecture of the API module, its main features and benefits compared to alternative methods of realization of the
testing procedures, as well as the user's operation algorithm.
Cloud technologies, test task, test control of knowledge, computer testing.
Введение. Систематическая проверка знаний большого числа обучаемых
приводит к необходимости автоматизации проведения тестирования знаний, использованию компьютерной техники и соответствующих программ проверки знаний.
Компьютерное тестирование как эффективный способ контроля знаний находит в образовании все большее применение. Оно позволяет более рационально
использовать время урока, охватить больший объем содержания, быстро установить обратную связь с учащимися и определить результаты усвоения материала,
сосредоточить внимание на пробелах в знаниях и умениях и внести в них коррек1
Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
тивы. Одним из его достоинств является минимум временных затрат на получение
достоверных итогов контроля. Результаты автоматизированного тестирования
лучше поддаются анализу, чем субъективно выставляемые оценки.
Применение компьютерных тестов является экономически выгодным и обеспечивает повышение эффективности учебного процесса, объективности оценки
уровня знаний и является рациональным дополнением к другим методам проверки
знаний [1-2].
На сегодняшний день существует множество компьютерных программ, позволяющих создавать и редактировать тестовые задания, а также осуществлять
тестирование обучающихся. Однако в связи с развитием и распространением сетевых технологий появилась возможность создания распределенных систем тестирования. Одним из вариантов реализации подобных систем является использование
облачных технологий.
Облачные вычисления – технология распределѐнной обработки данных, в которой компьютерные ресурсы и мощности предоставляются пользователю как Интернет-сервис.
По документации IEEE, облачные технологии – это "парадигма, которая постоянно хранит пользовательскую информацию на интернет-серверах и лишь временно кэшируется на стороне пользователя". Самой главной функцией облачных
технологий является удовлетворение потребностей пользователей, нуждающихся в
удаленной обработке данных [3-4].
Разрабатываемая система компьютерного тестирования реализует следующие
услуги:
1. Storage-as-a-Service ("хранение как сервис"). Данная услуга дает возможность
сохранять данные во внешнем хранилище, в "облаке". Реализация этого
сервиса позволит зарегистрированным пользователям хранить информацию
на серверах системы тестирования, что избавит их от необходимости тратить
ресурсы собственного учебного заведения.
2. Application-as-a-Service ("приложение как сервис") или Software-as-a-Service
("программное обеспечение как сервис"). Данный сервис позиционируется
как "программное обеспечение по требованию", которое развернуто на удаленных серверах и каждый пользователь получает к нему доступ посредством
Интернета. Система предоставляет преподавателям функционал по созданию
тестовых заданий и тестов, а также настройке параметров тестирования и обработке его результатов.
3. Security-as-a-Service ("безопасность как сервис"). Данный вид услуги предоставляет возможность обеспечения безопасного использования вебтехнологий, что позволяет экономить на развертывании и поддержании своей
собственной системы безопасности.
Применение облачных технологий при организации компьютерного тестирования позволит использовать такие преимущества облачной парадигмы, как быстрое развертывание (добавление ресурсов или приложений осуществляется почти
мгновенно), тарифицированная стоимость (оплата производится по факту использования ресурсов хранения, вычислительных мощностей и приложений повышает
эффективность затрат на ИТ), доступность (доступ к информации, хранящейся на
облаке, может получить каждый, кто имеет компьютер или любое мобильное устройство, подключенное к сети Интернет), мобильность (пользователь не привязан
к одному рабочему месту), надежность (многие эксперты утверждают, что надежность, которую обеспечивают современные облачные вычисления, гораздо выше,
чем надежность локальных ресурсов) [5−7].
2
Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
В ходе исследования представленных на рынке аналогов системы тестирования знаний, а также дальнейшего анализа полученных результатов было отмечено,
что большинство программных продуктов не позволяют внедрять элементы тестирования, а также организовывать процедуру контроля знаний непосредственно на
сайте пользователя. Тем не менее, подобный подход представляется гораздо более
удобным для преподавателей и обучаемых.
Для того чтобы реализовать возможность интеграции тестов и тестовых заданий на сторонний сайт необходимо разработать единый программный интерфейс
приложения – API.
Интерфейс программирования приложений (API) – набор готовых классов,
процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений.
Согласно другому определению, интерфейс программирования приложений –
это описание способа, который позволяет какому-либо фрагменту программного
обеспечения обращаться к другой программе за получением сервиса. Этим сервисом может быть предоставление доступа к данным или выполнение конкретной
функции.
API определяет функциональность, которую предоставляет программа
(модуль, библиотека), при этом он позволяет абстрагироваться от того, как именно
эта функциональность реализована.
По существу, прикладной интерфейс программы определяет корректный способ, который разработчик может использовать для вызова сервисов, необходимых
конкретной программе. Разработчики могут выполнять запросы, добавляя вызовы
в код своих приложений. Синтаксис описывается в документации вызываемого
приложения.
Предоставляя средства для запроса программных сервисов, API гарантирует
доступ к приложению и обеспечивает взаимодействие приложений между собой
[8].
Использование общего API реализует многие из требований стандарта
SCORM к платформонезависимости и многократности использования. То, каким
образом осуществляется взаимодействие между реализацией API, заложенной в
конкретной системе, и серверной частью этой системы, в данном стандарте не оговаривается, и эта реализация может быть такой, какая необходима разработчикам
системы.
Реализация функций API – это часть программного обеспечения, занимающаяся выполнением и предоставлением доступа к функциям API. Экземпляр API –
это конкретный, индивидуальный контекст выполнения и состояния реализации
API. Экземпляр API представляет собой ту часть выполняемого программного
приложения, с которой взаимодействует пользователь во время выполнения.
Программный интерфейс системы даст возможность пользователю, создав
некоторое количество тестов и заданий, подключить их на сайт своей системы
обучения и использовать, как его неотъемлемую часть, не изучая механизмов работы.
Для того чтобы встроить разработанный тест на сайт, пользователю понадобится только скопировать размещенный в системе код на JavaScript и поместить
его на страницу собственного сайта.
На рис. 1 представлена общая схема использования API.
3
Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
Рис. 1. Общая схема использования API
Кроме того, в результате анализа существующих аналогов были выявлены
следующие требования к разрабатываемой системе тестирования в целом и модулю программного интерфейса в частности:
•
при реализации модуля API необходимо использовать технологии, поддерживаемые наиболее распространенными веб-браузерами;
•
модуль должен предоставлять пользователям функционал, максимально удовлетворяющий их профессиональным потребностям;
•
модуль API должен быть масштабируемым и надежным;
•
программный интерфейс должен предоставлять гибкую систему настроек,
которая позволит удовлетворить максимально широкий спектр потребностей
пользователей;
•
программный интерфейс должен обеспечивать безопасность данных пользователей;
•
модуль должен иметь грамотно составленную документацию, которая поможет пользователям легко и быстро приобрести навыки работы с системой.
Архитектура модуля API. Модуль API дает возможность пользователям
системы организовать процедуру контроля знаний, а также обеспечивает обработку его результатов и формирование статистических данных. Программный интерфейс позволит зарегистрированным в системе пользователям интегрировать созданный ранее тест на собственный веб-сайт.
В модуле программного интерфейса можно выделить две функциональные
компоненты:
•
Внутренний программный интерфейс реализует обработку запросов
пользователя, содержит методы, позволяющие записывать информацию в БД,
считывать необходимые данные, производить их обработку;
•
Внешний программный интерфейс позволяет интегрировать тесты на сайт
пользователя, отвечает за представление данных на веб-странице,
обеспечивает проведение процедуры тестирования знаний, реализует
интерфейс взаимодействия обучаемого с системой.
Взаимодействие функциональных компонент модуля программного интерфейса представлено на рис. 2.
4
Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
Рис. 2. Функциональные компоненты модуля API
Внутренний программный интерфейс, получая запрос с сайта пользователя
системы, осуществляет выбор теста и составляющей его совокупности тестовых
заданий из базы данных. Затем внешний программный интерфейс в зависимости от
вида тестового задания формирует его представление, которое впоследствии отправляется на сайт пользователя и встраивается в его веб-страницу.
Кроме того, внешний программный интерфейс позволяет отобразить такие
параметры теста, как название, тему конкретного тестового задания, количество
времени, если оно было задано в процессе создания теста, а также общее количество вопросов. Функциями внешнего программного интерфейса осуществляется навигация между тестовыми заданиями.
При выполнении теста ответы обучаемого поступают с сайта клиента системы
и при помощи методов внутреннего программного интерфейса записываются в
базу данных.
При завершении тестирования по запросу системы из базы данных выбирается совокупность ответов обучаемого, после чего внутренний программный интерфейс производит их обработку и на основании заданных алгоритмов рассчитывает
итоговую оценку студента. Полученные данные записываются в базу данных и
средствами внешнего программного интерфейса визуализируются на веб-странице
пользователя.
Алгоритм работы пользователя. Работая с модулем администрации, пользователь по завершении составления тестового задания может сгенерировать код,
который позволит разместить данное тестовое задание на странице его веб-сайта.
Для этого необходимо нажать на кнопку "Get Code" на странице выбора тестового
задания. После этого, скопировав выведенный системой участок кода (рис. 3) и
вставив его на свою страницу, преподаватель сможет увидеть отображение разработанного тестового задания (рис. 4).
5
Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
Рис. 3. Сгенерированный системой участок кода
Рис. 4. Отображение тестового задания
Аналогично, завершив формирование теста, пользователь получает возможность разместить его на странице своего сайта. При этом если создавался фиксированный тест, его формирование осуществляется в модуле администрации преподавателем, который вручную указывает какие именно тестовые задания должны войти в тест, а программный интерфейс отвечает только за отображение заданий на
сайте клиента системы. В случае, если создавался динамический тест, модуль API
совершает его формирование в соответствии с заданными преподавателем настройками непосредственно перед визуализацией, а затем отображает полученный
тест на сайте пользователя.
В процессе тестирования модуль API дает обучаемому возможность переходить от одного тестового задания к другому, возвращаться предыдущим заданиям
и менять ответы на них.
Если тест выполняется в режиме самообучения, модуль программного интерфейса обрабатывает ответы пользователя, в случае необходимости выводит подсказку или комментарии к вариантам ответов или всему заданию в целом. Если же
тест выполняется в режиме контроля, обучаемый не имеет возможности воспользоваться подсказкой или узнать верно ли он выполнил определенное задание теста.
После завершения тестирования модуль API производит обработку результатов тестирования обучаемого, вычисляет его оценку и формирует статистику, которая поможет студенту определить, с какими темами тестирования он справился,
а с какими – нет. Кроме того, эти статистические данные будут доступны преподавателю и позволят скорректировать программу обучения конкретного тестируемого.
Выводы. В результате обзора существующих программных интерфейсов были определены основные требования к модулю API, механизмы его функционирования и способы реализации.
Выделенные функциональные компоненты модуля программного интерфейса
позволяют внедрять разработанные в системы тесты на сайт пользователя, формировать представление элементов контроля, организовывать и управлять процессом
проведения тестирования, а также выполнять проверку ответов обучающихся, про6
Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
изводить их обработку и на основании заданных алгоритмов рассчитывать итоговую оценку студента.
Описанный выше способ реализации системы компьютерного тестирования
представляет собой новый подход, который заключается в интеграции разработанных тестов и тестовых заданий на личный или корпоративный сайт пользователя
для проведения тестирования, что в значительной степени повышает качество
оценки знаний обучаемых.
1.
2.
3.
4.
5.
6.
7.
8.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
Компьютерное тестирование в образовании (Источник: Компьютерное тестирование
в образовании – программы, статьи, готовые тесты), – http://slmini.narod.ru/
Тестирование как форма контроля знаний учащихся (Источник: Дистанционный курс
«Электронные тесты»), – http://elektest.narod.ru/p7aa1.html
Облачные вычисления, краткий обзор или статья для начальника (Источник:
Хабрахабр) , – http://habrahabr.ru/post/111274/
Что такое облачные технологии? (Источник: IT Company Solik.Biz), –
http://solik.biz/oblako-technology
Облачные технологии для земных пользователей (Источник: Заметки Сис.Админа), –
http://sonikelf.ru/oblachnye-texnologii-dlya-zemnyx-polzovatelej/
Облачные вычисления: определения и решения // Директор информационной службы ,
2011, № 03, – http://www.osp.ru/cio/2011/03/13007508/
Бизнес в облаках. Чем полезны облачные технологии для предпринимателя (Источник:
СКБ Контур), – http://kontur.ru/articles/225
Прикладной программный интерфейс // Computerworld Россия. – 2000. – № 09. –
http://www.osp.ru/cw/2000/09/3539/
Дуккардт Александр Николаевич
Федеральное государственное автономное образовательное учреждение высшего
профессионального образования «Южный федеральный университет».
E-mail: [email protected]
347928, г. Таганрог, Некрасовский, 44.
Тел.:8(8634) 37-16-51.
Кафедра систем автоматизированного проектирования; к.т.н., ассистент.
Шкамардин Иван Александрович
Федеральное государственное автономное образовательное учреждение высшего
профессионального образования «Южный федеральный университет».
E-mail: [email protected]
347928, г. Таганрог, Некрасовский, 44.
Тел.:8(8634) 37-16-51.
Кафедра систем автоматизированного проектирования; к.т.н., ассистент.
Слепцова Евгения Александровна
Федеральное государственное автономное образовательное учреждение высшего
профессионального образования «Южный федеральный университет».
E-mail: [email protected]
347928, г. Таганрог, Некрасовский, 44.
Тел.:8-918-590-1440.
Duckardt Alexander Nikolaevich
Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”.
7
Информатика, вычислительная техника и инженерное образование. – 2014. − № 2 (17)
E-mail: [email protected]
44, Nekrasovskiy, Taganrog, 347928, Russia.
Phone: 8(8634) 37-16-51.
The Department of Computer Aided Design; PhD, assistant.
Shkamardin Ivan Alexanderovich
Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”.
E-mail: [email protected]
44, Nekrasovskiy, Taganrog, 347928, Russia.
Phone: 8(8634) 37-16-51.
The Department of Computer Aided Design; PhD, assistant.
Sleptsova Eugenia Alexandrovna
Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”.
E-mail: [email protected]
44, Nekrasovskiy, Taganrog, 347928, Russia.
Phone Number:8-918-590-1440.
8