Введение
Глава I. Теоретические предпосылки исследования
Глава II. Инструменты и технологии разработки веб-сайтов и аналитических систем
Глава III. Практическая реализация веб-сайта с аналитическими инструментами.
Заключение
Список использованных источников
Введение
Процесс тестирования знаний сотрудников или учащихся во многом может быть улучшен за счет разработки автоматизированной онлайн-системы тестирования. Данная работа описывает особенности разработки системы подобного типа, используемые технологии, а также анализирует современные подходы к разработке веб-сайтов и аналитических систем. Объектом исследования, лежащим в основе данной работы, является автоматизация процесса тестирования, а его предметом - разработка системы онлайн-тестирования знаний с аналитическими возможностями.
Задача создания такой системы предполагает наличие веб-сайта, который служит местом для создания и проведения тестов. В то же время аналитическая составляющая системы разрабатывается отдельно от сайта и представляет из себя процедуры извлечения, трансформации и загрузки данных из удаленных источников, а также хранилище данных, пригодное для построения OLAP-кубов. Данные для анализа копируются из реляционной БД сайта, которая содержит таблицы для хранения информации о тестах, их вопросах, вариантах ответа, ответов конкретного участника тестирования и т.д. После трансформации эти данные загружаются в хранилище и могут быть использованы для дальнейшего анализа.
Задача составления и проведения теста всегда связана с некоторыми затратами, выраженными в материальном или временном выражении. Проведение тестов с печатными бланками связано как с материальными, так и с временными издержками, такими как бумага, чернила принтера, время поиска аудитории, время самого экзамена. Оценка результатов таких тестов также связана с временными издержками по сбору бланков и подсчету результатов. При этом время, затраченное на подведение итогов, растет вместе с числом участников теста. Для учителей, менеджеров и других людей, которые занимаются проведением различных тестов регулярно, минимизация потраченного на тестирование времени и ресурсов может оказаться критически важной.
Использование онлайн-системы тестирования с аналитическими возможностями позволит ускорить процесс создания типизированных тестов, осуществить их удаленное проведение и провести анализ их результатов с помощью персонального компьютера. Учитывая распространённость сети Интернет среди учащихся и сотрудников учебных и других организаций, можно сказать, что такая система станет доступна для многих. Разрабатываемая онлайн-система сможет стать решением задачи сокращения общего времени проведения тестов и увеличения качества аналитической оценки их результатов.
Разрабатываемая система должна минимизировать время на создание теста и анализ результатов за счет использования современных технологий в сфере веб-разработки и бизнес-аналитики. Выбор архитектуры системы и конкретного набора технологий должен быть осуществлен исходя из требования к максимальной скорости работы системы при взаимодействии с ней пользователей. Аналитическая составляющая системы также должна позволять ответить на наиболее востребованные вопросы пользователей при работе с результатами тестов.
Цель данной работы - разработать систему онлайн-тестирования с высокой скоростью работы и аналитическими возможностями. Вся работа может быть разделена на несколько последовательных задач:
· изучение подходов к тестированию в сфере образования и корпоративного среде
· изучение подходов к созданию универсальных онлайн-тестов
· разработка сценария использования проектируемой системы
· выявление требований к проектируемой онлайн-системе
· выявление требований к аналитической составляющей системы
· анализ существующих систем онлайн-тестирования
· разработка архитектуры проектируемой системы
· разработка веб-сайта
· разработка аналитической системы
· интеграция веб-сайта с аналитической системой
· тестирование системы и исправление возможных ошибок
В первой главе данной работы дано описание современным подходам к разработке веб-приложений, предпосылки к проведению тестирования в корпоративной среде и сфере образования.
Вторая глава содержит анализ существующих технологий веб-разработки и различного ПО для бизнес-аналитики. В Этой главе также произведен обоснованный выбор набора технологий для разрабатываемой системы.
Третья глава содержит практические указания к разработке системы, схему архитектуры веб-приложения, серверной части системы, базы данных сайта и хранилища данных для аналитики.
Глава I. Теоретические предпосылки исследования
Проведение тестирования с использованием бумажных тестов давно является одним из приоритетных способов оценки успеваемости учеников или эффективности сотрудников в учебных заведениях и частных компаниях. В школах и университетах тесты могут быть использованы для промежуточного контроля, а также для оценки поведения, психики, профориентации или мотиваций учащихся. Некоторые государственные экзамены и олимпиады включают в себя тестовую часть с выбором ответа из нескольких вариантов. Проведение таких тестов связано с различными издержками, в первую очередь со временем на проверку, поиск места проведения, оповещения учащихся.
Для решения проблемы долгой проверки тестов в последние несколько десятилетий стали набирать популярность типизированные тесты со специальными типографическими бланками. Такие бланки ускоряют процесс проверки и подведения результатов тестирования, а ответы в них записываются в определенные поля, которые затем распознаются с помощью специального программного обеспечения. Для качественного и объективного анализа результатов используется аналитическая система, которая обрабатывает результаты, полученные в ходе распознавания ответов участников. Такой подход во многом ускоряет процесс проведения тестов, но он не является самым эффективным.
Разрабатываемая система онлайн-тестирования создается с целью совмещения процессов создания, проведения и анализа результатов тестов, тем самым повышая эффективность самого процесса тестирования.
В недавнее время проходила большая дискуссия относительно использования тестов на экзаменах по окончании курса и на национальных экзаменах, таких как экзамены GCSE в Англии. Это спорная тема, и она была подвергнута большому количеству обсуждений в средствах массовой информации, с возмутительными претензиями в отношении ее возможного использования. Несмотря на споры, использование тестов в качестве финальных испытаний возрастает, особенно в сфере высшего образования.
В России тестирование занимает срединное положение - оно используется одинаково часто как для оценки промежуточных результатов, так и для финальных экзаменов. Выпускные экзамены в школах после 9 и 11 классов (ОГЭ и ЕГЭ) частично основаны на тестах с выбором ответа из нескольких вариантов. Доля заданий подобного рода в контрольно-измерительных материалах (КИМ) зависит от сдаваемого предмета. Так, на ЕГЭ 2013 года в вариантах по математике не было ни одного задания с выбором ответа, а по биологии - не менее трети от общего числа. Использование тестов для промежуточного контроля в российских школах никак не регламентируется, хотя учителя все равно используют тесты по своей инициативе. Так, широко используются тесты по истории, географии, обществоведению и иностранным языкам.
В России проводится множество олимпиад для школьников всех классов по различным предметам или по определенной тематике. Такие тематические олимпиады, как «Русский медвежонок», «English Bulldog» и «Кенгуру» почти полностью основаны на тестах с вариантами ответов или заполнением пропусков в тексте. Несмотря на то, что эффективность оценки с использованием тестирования, а не устного экзамена, подвергается критике, их распространенность в сфере российского образования остается высокой.
Отдельное место занимают международные тесты в различных сферах. К ним относятся экзамены на знание иностранного языка (IELTS, TOEFL, тесты Гёте института), на способность к обучению в бизнес-школах (GMAT), на общий уровень знаний (GRE) и другие. Данные экзамены включают как части с тестом (c выбором ответа), так и части со свободным ответом, таким как сочинение, рисунок или решение задачи.
В целом, тесты в образовании обладают следующими характеристиками:
· Разделение на секции
· Ограниченность по времени
· Различные типы вопросов
· Различные типы вариантов ответа
К наиболее распространенным типам вопросов относятся:
· Текстовые вопросы
· Вопросы с картинками
· Заполнение пропусков в тексте
Наиболее популярные типы ответов к таким вопросам являются:
· Единственный ответ из числа перечисленных
· Множественный выбор из числа перечисленных
· Написание текста
· Сопоставление
Проектируемая в рамках работы система должна иметь большинство из указанных распространенных типов ответов и вопросов, а также позволять создавать различные именованные секции теста для дальнейшей аналитики.
За рубежом центры оценки являются эффективным методом выбора высших руководителей государственных и муниципальных должностей, включая начальников полиции и министров. Результаты центров оценки все чаще используются для выявления видов и последовательности деятельности, направленных на подготовку кандидатов к повышению на управленческие и исполнительные должности. Например, многие организации имеют подробные планы преемственности (перехода на более ответственную позицию) и ассессмент-центры являются ключевым компонентом для определения того, каким опытом должен обладать потенциальный будущий руководитель.
Участие в оценке, проводимой ассессмент-центрами, которые могут длиться до нескольких дней, включает как индивидуальное тестирование, так и групповые упражнения. Центры оценки обычно предоставляют информацию о сильных и слабых сторонах каждого человека (например, ассесмент-центры компании AT&T предоставляли рейтинги по 25 отдельным параметрам эффективности и результативности исходя из проведенного ими теста). Также оценочные центры дают обзор различных навыков, связанных с работой (например, планирование, определение приоритетов) и более обобщенные навыки общения с другими людьми (например, устное общение, эмпатия), а также могут предоставлять информацию о ценностях и предпочтениях испытуемых.
Разрабатываемая система позволит облегчить создание тестов для корпоративного использования в ассессмент-центрах. Она станет доступной многим, так как веб-сайт, служащий главным интерфейсом взаимодействия с создателями теста и тестируемыми, может быть открыт на многих устройствах, включая персональные компьютеры, смартфоны и планшеты.
Система тестирования с аналитическими возможностями должна обладать следующим набором функций:
· Регистрация и авторизация пользователей
· Просмотр, создание, редактирование тестов различных типов
· Подписка пользователей на тесты по E-Mail
· Удаленное проведение тестирования участников
· Просмотр и анализ результатов
Разрабатываемая в рамках работы система должна соответствовать указанному выше описанию.
Полная перезагрузка страницы веб-браузером связана с высокими временными затратами, так как при каждом обновлении браузер вынужден заново загружать размещенные на странице изображения, подключенные скрипты JavaScript и каскадные таблицы стилей CSS. Более того, при полной перезагрузке браузер заново перерисовывает все элементы на странице, что может сильно сказаться на скорости работы сайта, если количество элементов на странице большое.
Учитывая тот факт, что при создании теста на странице будут генерироваться большое число интерактивных элементов (поля для ввода названия текста, поля для добавления секций, вопросов и ответов, кнопки, выпадающие списки и т.п.), рекомендуется использовать SPA подход в качестве архитектуры клиентской части разрабатываемой системы.
Получение данных сайтом в SPA подходе осуществляется за счет использования асинхронных HTTP-запросов к серверу, которые поддерживаются во всех браузерах по умолчанию. Запрос осуществляется с помощью JavaScript (сокращенно JS) - языка, который используется для манипуляции элементами страницы. Подход к обмену данными между сервером и веб-приложением с помощью асинхронных запросов в среде веб-разработки имеет название AJAX (от англ. Asynchronous Javascript and XML). Хотя в названии и фигурирует XML, в реальности большинство веб-приложений обмениваются данными в формате JSON (от англ. JavaScript Object Notation). Данные, полученные клиентской частью приложения в данном формате не требуют дополнительной обработки, так как по сути они являются десериализованными JS-объектами.
Таким образом, отображение веб-приложения в браузере может быть изменено в реальном времени основываясь на данных, полученных с сервера, без перезагрузки страницы.
Существуют несколько различных библиотек на языке Javascript, которые созданы с целью упростить создание одностраничных веб-приложений. Как правило, они предоставляют необходимую для работы сайта архитектуру и могут быть дополнены различными другими модулями исходя из бизнес-требований приложения. Среди таких библиотек таки известные фреймворки, как React.JS, Angular.JS, Angular 2, Vue.Js, Backbone и другие. Во второй главе будут рассмотрены некоторые из этих библиотек и будет обоснован выбор одной из них в качестве основы клиентской части системы.