105
Виктория Евгеньевна Сорокина, старший преподаватель кафедры радиоэлектроники информационных систем Института радиоэлектроники и информационных технологий Уральского федерального университета им. Б.Н. Ельцина
РАЗРАБОТКА ПРОГРАММЫ СЕРТИФИКАЦИОННОГО ТЕСТИРОВАНИЯ СРЕДСТВАМИ MICROSOFT.NET ДЛЯ СИСТЕМЫ ОБРАЗОВАТЕЛЬНЫХ ПОРТАЛОВ РОССИИ
В статье представлена программа сертификационного тестирования, которая предназначена для системы образовательных порталов России и служит для оценки качества знаний профессорско-преподавательского состава. Подробно расписан алгоритм создания этой программы.
В настоящее время проблема обеспечения преподавателя новыми знаниями после окончания вуза стоит очень остро. Существуют несколько способов, призванных решать эту задачу. Это аспирантура, различные центры повышения квалификации, дистанционное обучение и самостоятельная работа (рис. 1). Ни для кого не секрет, что ни один из этих способов не достигает в достаточной степени поставленных целей. Аспирантура не всем доступна. В центрах повышения квалификации преподают методику, педагогику и психологию, а знания педагога в его специализации, в основном, никак не пополняются. Из этого следует, что весь груз ответственности по повышению квалификации ложится на плечи самого пре-
подавателя. Но кто-то должен взять ответственность за качество его знаний.
В Министерстве образования РФ находятся в разработке проекты по формированию единого образовательного пространства с созданием региональных ресурсных центров.
Одна из задач, которую, с нашей точки зрения, необходимо решать в этом проекте — обеспечение соответствия уровня знаний преподавателя требованиям современных технологий. Это можно делать с помощью организации системы повышения квалификации нового уровня, обеспечивая оперативный доступ к вновь поступающей информации по конкретным специальным дисциплинам и новым методическим разра-
106
боткам. В дальнейшем требуется обязать широко применяется на Западе и в послед-
весь преподавательский состав проходить нее время такие корпорации, как Microsoft,
периодическое тестирование с выдачей соот- Novell, Cisco Microsystems внедряют эту тех-
ветствующего сертификата. Процедура сер- нологию и в нашей стране. тификационного тестирования не нова. Она
Рис. 1. Системы, используемые для повышения квалификации преподавателей
Процедуру сертификационного тестирования и призвана выполнять разрабатываемая нами программа.
Инструментальной средой для создания проекта необходимо выбрать одну из современных систем проектирования сетевых приложений, например, средства Microsoft. NET или семейство продуктов IBM Rational Product Packaging Architecture, являющееся частью платформы IBM WebSphere. Эти технологии в последнее время получили широкое распространение для разработки сетевого программного обеспечения во всём мире.
Данные платформы состоят из двух частей:
• исполняющего ядра, под названием «общеязыковая исполняющая среда»;
• библиотеки классов, открывающих доступ к системным функциям, включая и те, что прежде были доступны только через API Windows. Кроме того, библиотека классов предоставляет доступ к прикладным функциям для Web-разработки, для доступа к данным, обеспечения безопасности и удалённого управления.
В подобного рода среде можно разрабатывать приложения для Windows (или другой
ОС) и Web. Разработанная программа должна работать через Web-интерфейс. Функционально Web-приложения осуществляют архитектуру «клиент-сервер». Собственно, web-приложение находится на сервере и обрабатывает запросы, которые передают ему через Интернет многочисленные клиенты.
На стороне клиента Web-приложение может быть доступно через браузеры. Пользовательский интерфейс передаётся на клиентскую машину в виде страниц на языке HTML.
На стороне сервера Web-приложение работает под управлением какого-либо Web-сервера, например, Microsoft Internet Information Server или IBM WebSphere Application Server. Web-сервер управляет работой приложения, передаёт ему клиентские запросы и возвращает клиентам результаты исполнения их запросов по протоколу HTTP.
Web-приложение компонует отклик из серверных ресурсов, к которым относится исполняемый код, Web-формы, HTML-стра-ницы, графические файлы и ряд других составляющих.
Web-приложения во многом напоминают традиционные web-сайты, но, в отличие от них, отображают пользователю динамическое содержимое, генерируемое исполняемым кодом приложения, а не статические страницы, хранящиеся на сервере в готовом виде.
Интерфейс программы должен работать через локальную сеть или сеть Интернет. При разработке необходимо создать серию процедур. Схема их взаимодействия описана далее.
Разработанная система сертификации должна состоять из двух частей. Одна
107
из них — это интерфейс для пользователя, желающего пройти тестирование и получить сертификат. В этой части пользователь должен зарегистрироваться, пройти процедуру аутентификации, выбрать тему теста, пройти собственно само тестирование и при успешном выполнении тестовых заданий получить сертификат. Интерфейс же администратора предполагает обслуживание базы данных тестов. Администратору доступно добавление тестовых заданий, редактирование тестов и их удаление. На плакате представлена процедура формирования и отправки сертификата. Сертификат создаётся, если испытуемый ответил больше, чем на 70% вопросов. Далее происходит проверка наличия установленного почтового сервера. Если почтовый сервер установлен, то сертификат отсылается по электронной почте. В ином случае создаётся сообщение администратору о необходимости отправки сертификата по обыкновенной почте (см. рис.2).
Программирование и отладка задачи
Программа сертификационного тестирования для системы образовательных порталов России представляет собой Web-приложение, созданное авторами с помощью среды Visual Studio.NET. Программа работает под управлением операционной системы Windows Server 2008 с установленными службами IIS, Microsoft SQL Server и Microsoft.NET Framework. Приложение CertificationTests размещается на IIS. Начальной страницей программы является Default.aspx.
Разработка структуры базы данных
Вся информация, использующаяся в разработанном приложении, хранится на SQL-
108
Server. Такой формат базы данных выбран не случайно. Этот поставщик данных взаимодействует с программой напрямую, без
промежуточного интерфейса, такого, как ODBC или OLEDB, что даёт значительный прирост производительности.
V ■
Рис. 2. Алгоритм пересылки сертификата
Разработанная база данных Certifica-tionTestsSQL состоит из следующих таблиц:
• users — используется для хранения персональных данных пользователя;
• info — содержит информацию обо всех выданных сертификатах;
• specializations — содержит список доступных специализаций;
• subjects — информация о предметах;
• divisions — содержит список доступных разделов;
• topics — информация о темах;
• Q_N, A_N, Q_(N+1), A_(N+1), и т.д.,
где N — порядковый номер темы из таблицы topics.
При добавлении новой темы в базе данных будут создаваться две таблицы: таблица с вопросами (Q_N) и таблица с ответами
(A_N), где N — номер темы из таблицы Topics. Рассмотрим структуру этих таблиц на примере Q_10 и A_10.
Таблица Q_10
• id — уникальный номер вопроса (тип поля — числовое, размер поля — длинное целое);
• slog — сложность вопроса: 1 — вопрос с одним вариантом ответа; 2 — вопрос с несколькими вариантами ответов; 3 — вопрос, в котором нужно вписать свой ответ; 4 — вопрос на установление соответствий (тип поля — числовое, размер поля — длинное целое);
• q — текст вопроса (тип поля — текстовое, размер поля — 200);
.....................109
• ris — наличие иллюстрации к вопросу (тип поля — логическое, размер поля — 1);
• a_3 — количество ответов для вопроса 3 сложности (тип поля — числовое)
Таблица A_10id — уникальный номер вопроса (тип поля — числовое, размер поля — длинное целое);
• a — текст ответа (тип поля — текстовое, размер поля — 50);
• prav — правильность ответа (тип поля — логическое).
Полная структура базы данных Certifica-tionTestsSQL с тестовыми заданиями приведена на рисунке 3.
Рис. 3. Структура базы данных CertificationTestsSQL
Создание приложения
Разработанная программа CertificatюnTests состоит из двух больших частей: пользовательской и части, предназначенной для администратора. Задачи, решаемые пользовательской частью: • регистрация пользователя;
110
• аутентификация и авторизация пользователей;
• выбор нужного теста из большого списка доступных тестов;
• тестирование;
• сздание и отсылка сертификата;
• занесение проделанных операций в файл журнала администратора.
Задачи, решаемые администраторской частью:
• добавление тестовых заданий;
• редактирование тестов;
• удаление тестов;
• редактирование времени на прохождение теста;
• проверка сертификатов.
Сначала создадим модуль Test.vb, в котором будут объявлены все глобальные переменные приложения.
Создание пользовательской части приложения
Начнём новый проект, зададим для него имя CertificationTests, создадим форму Default. aspx и поместим в неё необходимые элементы управления. Затем с помощью мыши разместим эти элементы в форме, изменим их размер и зададим свойства. Это начальная форма приложения. В ней пользователю будет предложено ввести свой логин и пароль для входа в систему сертификационного тестирования. Если же пользователь ещё не зарегистрирован в системе, он сможет зарегистрироваться, нажав на кнопку «Регистрация». Далее, в окне Code Designer добавим код для этой формы.
Затем создадим Web-форму Register, которая будет вызываться из формы Default нажатием на кнопку «Регистрация». В этой форме пользователю будет предложено вве-
сти свои персональные данные. При нажатии на кнопку «Зарегистрироваться», данные занесутся в таблицу Users базы данных CertificationTestsSQL, и пользователю будет выдано сообщение об успешности или неудаче проделанной операции. Поместим на неё Web-элементы управления. Затем добавим код обработки данной Web-формы.
Следующим шагом создадим Web-форму Choice, где пользователь будет осуществлять выбор теста. Разместим элементы управления как необходимо.
Выбор теста осуществляется четырьмя Web-элементами управления DropDownList. При первой загрузке страницы Choice.aspx информация из таблицы Specializations счи-тывается и заносится в верхний DropDown List. При нажатии на него раскрывается список доступных специализаций. При выборе специализации генерируется серверное событие, и второй сверху DropDownList заполняется информацией из таблицы Subjects.
При нажатии второго DropDownList раскрывается список доступных предметов выбранной ранее специализации. Когда пользователь выберет предмет, третий DropDownList заполняется значениями из таблицы Divisions. И, наконец, при раскрытии третьего списка и выборе раздела, заполняется последний DropDownList значениями из таблицы Topics. Далее при выборе темы пользователь может подтвердить свой выбор, нажав на кнопку «Продолжить».
Следующая форма, которая загрузится в браузер, будет StartTest.
Эта Web-форма играет в основном информационную роль. В ней будет отображаться информация о выбранном тесте и о правилах его выполнения. Если пользователь случайно ошибся в выборе теста, он сможет осуще-
ствить повторный выбор, нажав на кнопку «Выбрать заново». Если же испытуемый будет готов к тестированию, то ему нужно будет нажать на кнопку «Начать». Следующей формой, которая предстанет перед ним, будет Test.
Это, пожалуй, основная страница в приложении. Алгоритм её работы следующий:
1) считывается текущее локальное время;
2) подсчитывается количество вопросов в данном тесте и формируется массив этого размера;
3) количество вопросов, умножается на переменную, в которой находится число секунд, необходимых для ответа на один вопрос;
4) полученное число секунд прибавляется к числу, определённому в первом пункте. Это и будет временем окончания теста;
5) далее происходит генерация случайного числа из предела существующих вопросов;
6) затем выполняется чтение вопроса и ответов с уникальным номером, сформированным в 5 пункте;
7) в последующем определяется, какого типа этот вопрос: если это вопрос с одним вариантом ответа, то активизируется Web-элемент RadioButtonList, в котором можно выбрать один ответ; если вопрос с несколькими вариантами ответа, то выполняется загрузка элемента Check BoxList, где возможен выбор нескольких ответов; если это вопрос, где нужно печатать свой вариант ответа, то происходит активация элемента TextBox, для ввода ответа; а если это вопрос на установление соответствия, то загружаются две
111
таблицы с вариантами и несколько элементов TextBox, в которых нужно вводить соответствующие порядковые номера;
8) следующий шаг — определение наличия иллюстрации для ответа; если она существует, то активизируется Web-элемент Image, куда и помещается картинка;
9) в массив, сформированный во втором пункте, заносится номер вопроса и информация о том, что вопрос задан; это будет учитываться в пункте 5, для того чтобы вопросы не повторялись;
10) далее пользователю предстоит выбрать или ввести свой вариант ответа и нажать на кнопку «Ответить»;
11) затем, происходит проверка времени; если время на выполнение теста закончилось, то пользователь перенаправляется на страницу EndTest.aspx, причём, все неотвеченные вопросы помечаются как отвеченные неверно;
12) в последующем осуществляется проверка ответов; если ответ верный, то количество правильных ответов на вопросы увеличивается на единицу;
13) и, наконец, определяется количество заданных вопросов; если все вопросы заданы, то происходит загрузка Web-формы EndTest.aspx; если же ещё остаются незаданные вопросы, то осуществляются все действия, начиная с 5 пункта.
Далее создадим последнюю форму EndTest. В этой форме будет производиться анализ тестирования. При правильном ответе на более, чем 70% вопросов произойдёт создание сертификата. При создании серти-
112
фиката информация будет записываться в таблицу Info. Сертификат же будет отсылаться пользователю по почте или по e-mail. Результаты проделанных операций занесутся в файл журнала администратора.
Создание администраторской части приложения
Для создания администраторской части добавим в проект следующие Web-формы:
• Admin.aspx.
• AdminAdd.aspx.
• AdminAdd1.aspx.
• AdminAdd2.aspx.
• AdminAdd3.aspx.
• AdminAddA.aspx.
• AdminAdd.aspx.
• AdminAddEnd.aspx.
• AdminAddQ.aspx.
• AdminDel.aspx.
• AdminDelQA.aspx.
• AdminDelTests.aspx.
• AdminProv.aspx.
• AdminRed.aspx.
• AdminRedA.aspx.
• AdminRedQ.aspx.
• AdminRedSelectA.aspx.
• AdminRedSelectQ.aspx.
• AdminSettings.aspx. Admin.aspx
Начальная страница администраторской части приложения. В ней администратору будет предложено выбрать следующие операции:
1) добавить тест, вопрос или ответ;
2) редактировать вопросы или ответы;
3) удалить вопросы или ответы;
4) удалить тест;
5) редактировать настройки;
6) осуществить проверку сертификатов.
AdminAdd.aspx
На этой странице производится выбор существующей специализации или добавление новой. Выбор специализации происходит посредством элемента DropDownList, а название новой специализации вводится в элементе TextBox.
AdminAddl.aspx, AdminAdd2.aspx Принцип работы этих страниц схож с работой AdminAdd.aspx, только в них происходит ввод предметов и разделов соответственно.
AdminAdd3.aspx
Эта страница работает почти так же, как три предыдущие, за исключением следующих операций:
1. При вводе новой темы создаются две таблицы: таблица вопросов данной темы Q_N, где N — порядковый номер темы в таблице Topics, и таблица ответов A_N, где N — порядковый номер темы в таблице Topics.
2. При нажатии на кнопку «Продолжить» происходит загрузка Web-формы Admin AddQ.aspx
AdminAddQ.aspx
Здесь осуществляется добавление вопросов к выбранной теме. Администратору предстоит:
1) ввести тип вопроса (с одним вариантом ответа, с несколькими, с вводом ответа, с установлением правильной последовательности);
2) ввести текст вопроса;
3) отметить, нужна ли иллюстрация; если нужна, то указать файл с картинкой.
В нижней области отображаются вопросы, уже существующие в данной теме. Для того чтобы перейти к добавлению ответов,
нужно будет нажать соответствующую кнопку — «Перейти к добавлению ответов».
AdminAddA.aspx
Эта форма вызывается из АёштАёёр. азрх. Для добавления ответа администратору необходимо:
• ввести текст ответа;
• отметить, правильный ли это ответ.
В нижней части страницы будут выведены уже существующие ответы.
AdminAddEnd.aspx
Эта страница играет информационную роль. В ней будет отображаться: название добавленной темы, количество добавленных вопросов и ответов.
AdminDel.aspx
Данная форма предназначена для выбора тестов, в которых будет происходить удаление вопросов и ответов. Принцип её работы аналогичен принципу работы страницы Choice.aspx. При нажатии на кнопку «Продолжить» происходит загрузка страницы AdminDelQA.aspx.
AdminDelQA.aspx
На этой странице осуществляется удаление вопросов и ответов в существующих тестах. В нижней области формы будут выводиться существующие вопросы. Администратору предстоит ввести номер вопроса и нажать кнопку «Удалить». Причём, будет происходить удаление вопроса, ответов к этому вопросу и файла иллюстрации, если он существует.
AdminDelTests.aspx
Эта форма предназначена для удаления тестов. Принцип её работы таков: из верхнего списка выбирается специализация. Если попытаться её удалить, то происходит проверка существующих в ней предметов. Если
113
предметов не существует, то стирается соответствующая запись из таблицы Specializations. При наличии в ней предметов, выдаётся сообщение о том, что необходимо стереть все предметы, входящие в её состав. Аналогичным образом работают и два последующих DropDownList. При удалении же темы, удаляются к тому же две таблицы: Q_N и A_N, где N> — порядковый номер темы в таблице Topics. AdminProv.aspx
Алгоритм работы данной Web-формы следующий:
1) осуществляется определение текущей даты;
2) происходит выборка записи из таблицы Info;
3) затем произойдёт сравнение текущей даты и даты получения сертификата;
4) если до окончания срока действия сертификата останется 7 дней и меньше, то пользователю будет выслано сообщение о необходимости подтвердить свои знания и вновь пройти тестирование;
5) если срок действия сертификата истечёт, то информация из таблицы Info будет удалена;
6) и так для каждой записи. AdminRed.aspx
На этой странице будет происходить выбор теста для редактирования. Принцип работы этой формы аналогичен Choice.aspx. AdminRedSelectQ.aspx В этой Web-форме осуществляется выбор вопроса для редактирования. В нижней части страницы будут выведены существующие вопросы. Администратору предстоит выбрать номер вопроса для редактирования из выпадающего списка и нажать кнопку «Перейти к редактированию».
114
AdminRedQ.aspx На этой странице будет осуществляться ввод обновлённых данных о вопросе. Работа этой формы аналогична работе AdminAddQ.aspx.
AdminRedSelectA.aspx
Эта страница аналогична AdminRed SelectQ.aspx, только в ней осуществляется выбор ответа для редактирования.
AdminRedA.aspx
В этой форме осуществляется редактирование ответов. Принцип работы полностью совпадает с работой страницы AdminAddA. aspx.
AdminSettings.aspx
На этой странице будет происходить редактирование времени для ответа на вопрос.
Заключение
Таким образом, разработана программа сертификационного тестирования в среде Visual Studio.NET, которая предназначена для системы образовательных порталов России и служит для оценки качества знаний профессорско-преподавательского состава.
Система предусматривает работу с пользователем, которому доступна вся процедура тестирования. Существует также интерфейс администратора для редактирования базы данных тестовых заданий.
Программа сертификационного тестирования представляет собой Web-приложение, опробована в сети под управлением Windows Server 2008 с установленной службой Internet Information Services (IIS) и системой управления базами данных Microsoft SQL Server.
Перед размещением программы на IIS на сервере установлено Microsoft.NET Framework. Далее приложение Certification Tests размещено на IIS.
Для эффективного использования описанной системы оценки квалификации преподавателей, безусловно, необходима большого объёма работа по составлению тестов по различным, имеющимся в учебных планах, дисциплинам. Кроме того, необходима поддержка и систематическое обновление банков данных по информационному наполнению тематик, соответствующих дисциплинам нужных специализаций. А также — организация возможности доступа к этой информации.
После внедрения всего комплекса задач будет достигнута поставленная цель — обеспечение соответствия уровня знаний преподавателя требованиям современных технологий.