Научная статья на тему 'Разработка сетевой тестирующей системы'

Разработка сетевой тестирующей системы Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Неудахин А. В.

Neudahin A.V. Elaboration of network testing system. The article contains the in-formation on elaboration of the network testing system which allows optimizing time expenses for organization of testing and getting information about it.

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

Elaboration of network testing system

Neudahin A.V. Elaboration of network testing system. The article contains the in-formation on elaboration of the network testing system which allows optimizing time expenses for organization of testing and getting information about it.

Текст научной работы на тему «Разработка сетевой тестирующей системы»

УДК 681.142.37

РАЗРАБОТКА СЕТЕВОЙ ТЕСТИРУЮЩЕЙ СИСТЕМЫ

© A.B. HeygaxHH

Neudahin A.V. Elaboration of network testing system. The article contains the in-formation on elaboration of the network testing system which allows optimizing time expenses for organization of testing and getting information about it.

ВВЕДЕНИЕ

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

Системы компьютерного тестирования — это системы тестирования, позволяющие проводить анализ знаний учащихся при помощи современных информационных технологий.

Важным направлением развития компьютерного тестирования является разработка систем удаленного тестирования или ШеЪ-ориентированных тестирующих систем. Т. е. тестируемый, находясь в любом месте (удаленного от центра тестирования), имея возможность доступа к сети Интернет, может пройти тестирование, тем самым обеспечивая свой дальнейший образовательный процесс [1].

Система удаленного тестирования - компьютерная система, позволяющая осуществлять процесс тестирования удаленно от центра тестирования.

ШеЪ-ориентированная тестирующая система - это система удаленного тестирования, использующая возможности сети Интернет.

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

ТРЕБОВАНИЯ К РАЗРАБАТЫВАЕМОЙ СИСТЕМЕ СЕТЕВОГО ТЕСТИРОВАНИЯ

Разрабатываемая система должна поддерживать выполнение следующих функций: организация сетевого тестирования по выбранному тесту; проектирование, модификация и удаление тестов; управление пользователями и их правами.

ТЕХНИЧЕСКОЕ РЕШЕНИЕ

Для успешной разработки системы выбираются следующие программные средства:

1) с целью реализации логической функциональности системы выбран язык PHP (http://www.php.ru/ download/php521/);

2) для хранения данных, необходимых для функционирования системы, выбрана база данных MySQL (http://www.php.ru/download/mysql4/);

3) для трансляции РНР-скриптов выбран HTTP-сервер Apache 2 (http://www.php.ru/download/apache2/).

РАЗРАБОТКА СХЕМЫ ВЗАИМОДЕЙСТВИЯ СИСТЕМЫ С ПОЛЬЗОВАТЕЛЕМ

Для работы системы и взаимодействия её с пользователем был использован следующий алгоритм (рис.

1).

1) Пользователь посылает запрос HTTP-серверу, содержащий некоторые данные. В качестве клиента системы используется любой Итернет-браузер (Internet Explorer, Mozilla Firefox, Opera и др.), при использовании которого устанавливается соединение с HTTP-сервером.

Клиент-браузер (internet ExpIorer, MoziIIa Firefox, Opera, ... )

запрос

пользователя

ответ сервера HTML

HTTP-сервер Apache

2

данные

запроса

пользователя

\k

HTML -страница

^результат " запроса

PHP

скрипты

запрос к базе

База данных MySQL

Рис. 1. Схематический вид алгоритма взаимодействия пользователя с системой

2) HTTP-сервер транслирует PHP-скрипты, действующие в соответствии с запросом пользователя.

3) PHP-скрипты обращаются к базе данных с запросом.

4) Результаты запроса направляются PHP-скриптам на обработку.

5) Результатом обработки является сгенерированная HTML-страница.

6) HTTP-сервер посылает ответ пользователю в виде сгенерированной HTML-страницы, которая выводится в окне Интернет-браузера пользователя.

РАЗРАБОТКА СТРУКТУРЫ ДАННЫХ

Для хранения необходимой для работы системы информации разработана структура связанных между собой таблиц (рис. 2).

В разработанной структуре присутствуют 6 таблиц, каждая из которых хранит определенную информацию.

Info users - хранит информацию о пользователях системы (табл. 1).

Temptesting - хранит информацию о незаконченном тестировании (табл. 2).

Infotests - хранит информацию о тестах (табл. 3).

Infotesting - хранит информацию о результатах тестирования (табл. 4).

Levelstests - хранит информацию об уровнях сложности тестов (табл. 5).

Questions - хранит информацию о вопросах теста (табл. 6).

Таблица 1

Содержание таблицы info_users

Название поля Тип Описание

login varchar(64) логин

passw varchar(20) пароль

name varchar(20) имя

lastname varchar(20) фамилия

gruppa int(11) номер группы

email varchar(50) электронный адрес

gender varchar(10) пол

city varchar(10) город проживания

power int(10) уровень полномочий

data datetime дата регистрации

Таблица 2 Содержание таблицы temp_testing

Название поля Тип Описание

id record int(15) идентификационный номер записи

login varchar(64) логин

title t varchar(255) название теста

total balls int(11) количество баллов для прохождения теста

quantity q int(11) колчество выдаваемых вопросов

level varchar(64) название уровня сложности

take balls int(11) набранное количество баллов

mas vopr text массив вопросов теста

late vopr text массив пропущенных вопросов

r time time оставшееся время теста

num v int(11) номер последнего выданного вопроса

date datetime дата тестирования

Таблица 3

Содержание таблицы info_tests

Название поля Тип Описание

id t int(100) идентификационный номер теста

author varchar(64) логин автора теста

title t varchar(255) название теста

col v int(11) количество вопросов теста

descript text описание теста

date dev datetime дата разработки

Таблица 4

Содержание таблицы info_testing

Название поля Тип Описание

id rec int(11) идентификационный номер записи

login varchar(64) логин

gruppa int(11) номер группы (для учащихся)

email varchar(255 ) элктронный адрес пользователя

title t varchar(255 ) название теста

level varchar(64) название уровня сложности

total balls int(11) количество баллов, необходимое для прохождения теста

take balls int(11) набранное количество баллов

time time время прохождения теста

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

result varchar(70) результат тестирования

id t int(11) идентификационный номер теста

date testing datetime дата тестирования

Таблица 5

Содержание таблицы levels_tests

Название поля Тип Описание

id_l int(11) идентификационный номер уровня сложности

id t int(11) идентификационный номер теста

level varchar(64) название уровня сложности

quantity_q int(11) количество выдаваемых вопросов теста

balls int(11) количество баллов, необходимое для прохождения теста

time time ограничение времени тестирования

Таблица 6

Содержание таблицы questions

Название поля Тип Описание

id v int(11) идентификационный номер вопроса

id t int(11) идентификационный номер теста

text v varchar(255) текст вопроса

type v int(1) тип вопроса

a 1 varchar(255) первый вариант ответа

a 2 varchar(255) второй вариант ответа

a 3 varchar(255) третий вариант ответа

a 4 varchar(255) четвёртый вариант ответа

a 5 varchar(255) ответ - строка

num tr varchar(11) массив правильных ответов

пользователи

info_users

login | varchar(64) | = passw | varchar(64) | _ name | varchar(20) | lastname | varchar(20)| gruppa | int( 11) | email | varchar(50) | gender | varchait10) | city | varchar(10) | data | datetime | power | int(10) |

точки

восстановления

temp_testing

id_record | int(15) | login | varchar(64) | title_t | varchar(255) | total_balls | int(11) | quantity_q | int(11) | level | varchar(64) | take_balls | int(11) | mas_vopr | text | late_vopr | text | r_time | time | num_v | int(11)| date | datetime |

уровни сложности

levels tests

id_l | int(11) |

id_t | int( 11) |

level | varchar(20) |

quantity_q | int(11) | balls | int(11) |

time | time |

результаты

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

info_testing

id_rec

login

gruppa

email

title_t

level

| int(11 |

| varchar(64) |

| int(11) |

| varchar(255) | | varchar(255) |

| varchar(50) | total_balls | int(11) | take_balls | int(11) | time | time |

result | varchar(70) |

date_testing | datetime | id_t | int(11) |

тесты

info_tests

id_t | int(100) | -

author | varchar(20) |

title_t | varchar(255) |

col v | int( 11) |

date_dev | datetime |

descrpt | text |

вопросы

questions

id_v I int(11) I

id_t I int(11) I

text_v | varchar(255) |

type v | int(1) |

a_1 I varchar(255) I

a_2 I varchar(255) I

a 3 I varchar(255) I

a_4 I varchar(255) I

a_5 I varchar(255) I

num_tr I varchar(11) I

Рис. 2. Связь таблиц в базе данных и их структура РАЗРАБОТКА ИНТЕРФЕЙСА СИСТЕМЫ

Панель управления системы содержит следующие элементы (рис. 3).

1) Форма аутентификации. Позволяет произвести аутентификацию пользователей и разграничение по правам доступа к системе.

2) Ссылка - Регистрация. Осуществляется переход на страницу регистрации пользователя.

3) Ссылка - Тестирование. Осуществляется переход к тестированию.

4) Информация.

Ссылка - Информация о тестах. Переход к странице, предоставляющей описание всех тестов, содержащихся в системе.

Ссылка - Информация о разработчиках тестов. Переход к странице, предоставляющей информацию о разработчиках тестов.

Ссылка - Контактная информация администраторов. Переход к странице, предоставляющей контактную информацию администраторов системы.

5) Выход из сеанса. Происходит удаление всех переменных, содержащихся в сессии, и сведений об аутентификации.

Аутентификация

9 Информация о тестах ’ 9 Информация о разработчиках тестов 9 Контактная информация администраторов

I—

Рис. 3. Панель управления системы 642

Рис. 4. Схематический вид механизма аутентификации

Здравствуйте Neuciakhin Alexandr!

В этой системе вы обладаете полномочиями администратора

Вам доступны следующие действия

Пере йти к м о дул ю а дм и н и стр это р а Пройти тест

Рис. 5. Аутентификация пользователя с полномочиями администратора

МЕХАНИЗМ АУТЕНТИФИКАЦИИ И РАЗГРАНИЧЕНИЯ ПРАВ ДОСТУПА ПОЛЬЗОВАТЕЛЕЙ

В разработанной системе реализован разноуровневый доступ к её функциональным возможностям. Это достигается ограничением функциональности с помощью механизма аутентификации (рис. 4).

Порядок механизма аутентификации:

1) ввод пользователем логина и пароля в поля формы аутентификации;

2) поиск соответствия введенных данных данным, содержащимся в базе (если результат запроса непустой - соответствия есть, пустой - соответствия нет). Если соответствия нет - повторная попытка ввода информации, если соответствие есть - следующий шаг;

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

3) идентификация пользователя в соответствии с его полномочиями (поле power таблицы info_users) и предоставление возможности перехода к соответствующему модулю.

На рис. 5. показано приветствие пользователя с полномочиями администратора, прошедшего аутентификацию.

УРОВЕНЬ ДОСТУПА К СИСТЕМЕ ПОЛЬЗОВАТЕЛЕМ

Делает возможным выполнение следующих функций:

1) регистрация (для взаимодействия с системой на уровне пользователя необходима регистрация его в системе) (осуществляется с помощью ввода личной информации в поля формы регистрации) (рис. 6);

2) просмотр статистической информации (для пользователя возможен просмотр статистической информации, содержащей данные о прохождении тестирования);

Для регистрации на сайте заполните, пожалуйста, форму Поля, обозначенные знаком *, обязательны для заполнения

Форма регистрации

"Введите имя_______________11________________________________

’Введите фамилию

"Введите номер группы в которой учитесь

"Введите свой лошн

"Введите пароль ||

"Повторите пароль |[

"Ваш ІЕ-іпаіІ

Город-место вашего нахождения

Укажите ваш пол О Женский О Мужской

Зарегистрироваться

Рис. 6. Форма регистрации нового пользователя

3) тестирование (основной целью пользователя в работе с системой является тестирование знаний по выбранному тесту).

УРОВЕНЬ ДОСТУПА К СИСТЕМЕ АДМИНИСТРАТОРОМ

Уровень администратора предоставляет следующие возможности при работе с системой:

1) просмотр регистрационных данных (просмотр регистрационных данных о пользователях системы по категориям: отдельный пользователь и группа пользователей);

2) просмотр статистической информации о тестировании (просмотр информации о тестировании пользователей по категориям: отдельный пользователь и группа пользователей);

3) регистрация новых пользователей (возможность администратора регистрировать пользователей без их участия в этом) (рис. 7);

4) удаление пользователей (возможность администратора удалять любых пользователей из системы) (рис. 8);

5) удаление группы пользователей (возможность администратора удалять группы любых пользователей из системы) (рис. 9);

6) удаление данных о тестировании пользователей (удаление администратором данных о прохождении пользователями тестирования);

Для регистрации пользователя в системе заполните, пожалуйста, форму

Поля, обозначенные знаком *, обязательны для заполнения

Ферма регистрации

* В ведите имя

‘Введите фамилию

Введите номер группы(студента)

‘Введите свой логин

*Введите пароль

‘Повторите пароль

‘Ваш E-mail

Город-место вашего нахождения

Укажите ваш пол ОЖенский О Мужской

^Укажите уровень полномочий fO-пользователь, Т-администратор, '2-разработчиктестов)

| Регистрировать ~]

Рис. 7. Регистрация пользователей администратором

Все пользователи, зарегистрированные в системе

alex sasha neudakhin 55 2007-05-03 20:05:36 2 developer Саша Неудахин 5520074)3-2212:55:352 sanyok Alexandr Neudakhin 2007-03-0216:41:401 sherhan Александр Неудахин 2007-03-0218:25:340

Удалить пользователя [ Удалить пользователя с данными о тестировании

Рис. 8. Удаление пользователей из системы

Зарегистрированная группа № 55

а1ех зазЬа пе^акЬйп 55 2007-05-03 20:05:36 2 (1еуе1орег Саша Неудахин 55 2007-03-22 12:55:35 2

| Удалить группу ~~|

| Удалить группу с данными о тестировании |

Рис. 9. Удаление группы пользователей

7) удаление данных о тестировании группы пользователей (удаление администратором данных о про хождении группой пользователей тестирования).

УРОВЕНЬ ДОСТУПА К СИСТЕМЕ РАЗРАБОТЧИКОМ ТЕСТОВ

Уровень разработчика тестов предоставляет сле дующие возможности при работе с системой:

1) Предоставление информации по категориям:

a) все тесты (информация о всех тестах, доступных для прохождения);

b) собственные тесты (информация о тестах, разработанных самим разработчиком);

c) прохождение тестов (информация о прохождении выбранных тестов);

64З

[email protected]

История и основные составляющие

бремя

прохождения

теста

ABTop'developer' Названи0_История и основные составляющие Интернета ABTop'developer1 Название_Г ео графия ABTop'developer' Название_тестовый пример

| Показать |

Рис. 10. Таблица прохождения теста

2) Модификация данных теста:

a) новый тест (создание нового теста);

b) удалить тест (удаление теста из системы) (рис.

12);

c) модифицировать тест (модификация параметров теста: добавить, редактировать или удалить вопрос, добавить, редактировать или удалить уровень сложности, редактировать название теста, добавить, редактировать или удалить описание теста) (рис. 13, рис. 14).

ТЕХНОЛОГИЯ ТЕСТИРОВАНИЯ

Вопрос _ 1

О Одиночный выбор

Выберете тип вопроса ©Множественный выбор

О Открытый вопрос

Рис. 11. Добавление вопросов в тест

Все тесты, разработанные вами

1 История и основные составляющие Интернета 32 2007435-0614:05:23

2 Гео гр афия 5 2007-06-18 09:53:48

3 тестовый пример 1 2007-05-0709:32:38

41ейу 1 2007-05-14 00:00:35

5 СгаАка 1 2007-05-1507:43:22

| Удалить тест | Вернуться к модулю разработчика

Рис. 12. Удаление тестов из системы

Вернуться к модулю разработчика

Тест: 'tetty*

Описание теста

[ Добавить ]

Рис. 13. HTML-форма для ввода описания теста

Уровень № 1

___________________________________Название уровня_______________

easy

Количество вопросов 20 Баллы для прохождения 17 I

Время прохождения 100:20:00 |

[ Далее |[ Обновить |

| Завершить |

Рис. 14. Редактирование уровня сложности

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

Технология тестирования включает в себя последовательное прохождение определенных этапов (рис. 15). Каждый этап наделен соответствующим функционалом, отвечающим за целостность процесса тестирования.

Аутентификация. Если аутентификация не пройдена, то тестирование не доступно.

Выбор теста. Пользователю предоставляется выбор теста для прохождения с помощью формы. Если у пользователя существуют незаконченные тесты, то появится второе окно с выбором теста для завершения.

Выбор уровня сложности. Пользователю предоставляется выбор уровня сложности прохождения теста. В соответствии с выбором определяются ограничения теста: количество выдаваемых вопросов, ограничение времени, необходимое количество баллов для прохождения теста.

Рис. 15. Этапы тестирования

ё) содержимое теста (информация о содержимом тестов: количество вопросов, варианты ответов, время прохождения и т. д.).

Вопрос № 8 Количество вопросов_20 Баллы 4

8 Может ли одному 1Р-адресу компьютера соответствовать сразу несколько доменных имен

О может

Онеможет______________________________________

□ Нет ответа на вопрос П Позже вернуться к вопросу

Ма прохождение тестирования у вас осталось ВИВ

Рис. 17. Пример HTML-формы с вопросом (одиночный выбор)

Эти переменные хранятся в сессии на протяжении выполнения теста.

Прохождение теста. Этапы прохождения теста.

1) Генерация массива вопросов.

2) Цикл выдачи вопросов (условием выхода из цикла является равенство счетчика вопросов количеству выдаваемых вопросов при условии, что массив пропущенных вопросов пуст).

Переход к следующей итерации цикла происходит при нажатии кнопки «далее».

Каждая итерация данного цикла содержит следующие операции.

a) Выборка данных из базы.

b) Генерация HTML-страницы, содержащей форму вопроса в соответствии с его типом (на основе данных из базы) (рис. 17).

c) Инкрементация счетчика вопросов.

d) Проверка выполнения ограничения по времени (если время истекло - тестирование прекращается).

e) Оценивание ответа тестируемого.

Вопрос с одиночным выбором - инкрементация количества баллов, если выбран правильный ответ.

Вопрос с множественным выбором - если выбраны все варианты, баллы не начисляются; происходит суммирование правильных и неправильных ответов; затем из суммы правильных ответов вычитается сумма неправильных; если полученная разность имеет положительное значение, то она суммируется с набранным количеством баллов; если разность имеет отрицательное или нулевое значение, баллы не начисляются.

Открытый вопрос - ответ тестируемого сравнивается с ответом из базы данных; если происходит соответствие, то количество баллов увеличивается на единицу; если соответствие отсутствует - баллы не начисляются.

f) Обновление аварийной записи базы данных, содержащей набранное количество баллов, массив пропущенных вопросов (если его размер не равен 0), оставшееся время на прохождение, порядковый номер вопроса, дата последнего обновления записи.

Допускается пропуск вопросов с последующим возвратом к ним. Порядковый номер пропущенного вопроса записывается в массив пропущенных вопросов (рис. 18).

3) Определение результата тестирования (рис. 19).

a) По выходу из цикла выдачи вопросов фиксируется время окончания тестирования (формат timestamp).

b) Вычисление времени прохождения теста.

с) Сравнение набранного количества баллов с заданным количеством необходимого для прохождения теста .

ё) Если набранное количество баллов соответствует или больше заданного количества: тест пройден.

е) Если набранное количество баллов меньше заданного: тест не пройден.

1) Занесение результатов тестирования в базу данных.

По завершению прохождения теста данные о тестировании заносятся в соответствующую таблицу базы данных.

Пропущенные

огрось *

Вопрос N2 12 3

Количество вопросов_20 9

Баллы 4 10

5 Протокол передачи гипертекста в сети Интернет 11

Введите ответ)

□ Нет ответа на вопрос

| Q Позже вернуться к вопросу

| Далее |

I I

На прохождение тестирования у вас осталось |00 |:[0Э |;|51 |

Рис. 18. HTML-страница с формой вопроса и формой с пропущенными вопросами

Рис. 19. Определение результатов тестирования ОБЗОР СИСТЕМЫ

Система состоит из набора РНР скриптов, которые динамически генерируют НТМ-страницы.

Основным функционалом системы можно воспользоваться, пройдя аутентификацию. Без прохождения аутентификации возможны: регистрация пользователя; просмотр информации о тестах, разработчиках и контактной информации администраторов.

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

Система является кросс-платформенной.

Доступ к системе - аутентификация; разграничение уровней доступа.

Пользователи - регистрация, управление, удаление.

Тесты - создание; установка уровней сложности (задания ограничения по количеству выдаваемых во-

просов, ограничение времени, допустимое количество баллов); поддержка графики в вопросах; детальная модификация; удаление.

Тестирование - тестирование на разных уровнях сложности (если тест это поддерживает); пропуск вопросов с последующим возвратом к ним; точки восстановления тестирования.

Информация - хранение в базе данных; детальный просмотр; модификация; составление отчетов.

Для работы системы необходимо наличие следующего программного обеспечения на сервере:

1) MySQL-сервер версии 4.1. или выше;

2) Сервер Apache 2.0 или выше;

3) PHP 5.1.4 или выше.

ВЫВОДЫ

Система позволяет совершенствовать организацию и проведение тестирования за счет:

1) сетевого тестирования;

2) сокращения временных затрат на проектирование, реализацию и дальнейшую модификацию тестовых заданий;

3) доступности системы (т. е. пользователь удаленно от центра тестирования, имея возможность установить связь с системой, может осуществить действия, установленные в его полномочиях);

4) повышения продуктивности тестирования (одновременное тестирование большого количества человек, мгновенная выдача результатов).

Область применения данной системы:

1) образовательные учреждения (для выявления уровня знаний учащихся по различным дисциплинам);

2) предприятия и организации (для выявления уровня подготовленности сотрудников к выполнению определенных полномочий и функций).

ЛИТЕРАТУРА

1. Brown D.J. Writing Web-based questions with Mallard // FIE'97, Frontiers in Education Conference Stipes Publishing L.L.C. 1997.

2. Айнштейн В.Г., Гольцова И.Г. Об адекватности экзаменационных оценок // Высшее образование в России. 1993. №3. С. 40-42.

3. Челышкова М.Б. Теория и практика конструирования педагогических тестов: учеб. пособие. М.: Логос, 2002.

Поступила в редакцию 8 сентября 2007 г.

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