Разработка защищенной системы тестирования с использованием WEB-программирования
Организация проверки результатов обучения и оценки знаний, использование систем тестирования, основные требования к ним. Создание современной модели WEB-сервиса тестирования знаний; программная реализация; защита от копирования информации и списывания.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 11.05.2012 |
Размер файла | 24,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
СОДЕРЖАНИЕ
Введение
1. Основные требования к системам тестирования
2. Защита копирования
3. Защита от списывания, использования сторонних источников информации
Заключение
Список используемых источников
Приложение А. Исходный код верстки, запрещающий копирование и выделение текста
Приложение Б. Исходный код функции, запрещающей использование сторонних источников информации
ВВЕДЕНИЕ
В современном мире большую роль играет контроль знаний учащихся школ, работников, студентов вузов и.т.д. Как известно, под контролем понимается система научно обоснованной проверки результатов обучения. Более узкое определение гласит, что контроль - это выявление, измерение и оценка знаний, умений и навыков.
Существует множество форм контроля - экзамен, зачет, аттестация, контрольная. Но наиболее корректным средством измерения знаний на сегодняшний день является тест. Тест - это совокупность специальным образом подготовленных и подобранных заданий, позволяющая провести выявление требуемых характеристик процесса обучения. Одно из главных преимуществ тестов состоит в том, что они позволяют опросить всех участников по всем вопросам нужного материала в одинаковых условиях, применяя при этом ко всем без исключения одну и ту же, заранее разработанную шкалу оценок. Это значительно повышает объективность, нерасплывчитость и обоснованность оценки по сравнению, скажем, с экзаменом.
В настоящее время выработано четыре основных формы тестовых заданий, которые являются основой для составления тестов по любым учебным дисциплинам:
1) Задания закрытой формы. Инструкция: обвести кружком, либо отметить крестиком, галочкой нужный вариант ответа. Вариативность заданий закрытой формы весьма велика, но в основе всегда лежит один и тот же принцип: испытуемому предлагается выбрать ответ на задание из нескольких предложенных, причем только один из них является правильным. При этом подразумевается, что все предложенные варианты ответа являются равнопривлекательными.
Например:
3*3 равно:
3
6
12
9
2) Задания открытой формы. Инструкция: дополнить. В отличие от заданий закрытой формы здесь не предлагается вариантов ответа, а делается пропуск смысловой единицы в каком-либо утверждении, причем предполагается, что заполнить этот пропуск можно строго однозначно.
Например:
3*3 = ?
3) Задания на соответствие. Инструкция: установить соответствие. Здесь необходимо установить соответствие между смысловыми единицами в правом и левом столбиках, причем, справа иногда вариантов дается больше, чем слева, то есть заведомо предполагается, что какие-то из них являются в данном случае неправильными.
Например:
2*2 = 49
3*3 = 4
7*7 = 9
4) Задания на установление правильной последовательности. Инструкция: установить правильную последовательность. Достаточно сложная форма, проверяющая глубокие и прочные знания учебного материала. Смысл ее состоит в установлении последовательности каких-либо событий, действий, терминов и т.д. В пустых квадратиках надо расставить цифры.
Например: квадрат _______ равен сумме _______ катетов.
Существуют различные разновидности и модификации тестовых заданий, однако все они основываются на этих четырех формах.
Стоит отметить положительные стороны теста на конкретном примере. К примеру, если при оценке результатов за каждое правильно выполненное задание ставится единица, а в противном случае ноль, то уровень знаний по проблематике данного теста будет выражен в определенной сумме баллов. Расставив сдававших по возрастанию или убыванию, мы получим структурированный ряд уровня знаний по данной дисциплине. Если такая проверка проводится регулярно в течение всего изучения предмета, в конце преподаватель будет иметь достаточно четкое представление об уровне знаний данного курса. Создается своеобразный рейтинг обучаемых по изучаемой дисциплине. По итогам выполнения всех тестовых заданий видны пробелы в знаниях каждого, что позволяет составить индивидуальную программу для дополнительных занятий.
Тесты и тестовые задания получили свое распространение в сферах, где нужно точно определить знания по всему курсу обучения, где много сдающих, где нужен жесткий отбор участников: экзамены в ГИБДД, аттестация работников предприятий, прием на работу, аттестация и контроль остаточных знаний студентов, дистанционное образование, экзаменационный тест и.т.д.
В настоящее время, в эпоху информационного общества, глобальной компьютеризации, развития технологии Интернет и передачи данных все более актуальными становятся разнообразные компьютерные системы тестирования, способные дополнить или заменить традиционные методы контроля и методики преподавания. Благодаря компьютерным системам тестирования стало намного удобнее проводить тестирования во всех сферах, где применялись и применяются обычные тесты. Например, дистанционное образование, которое стало распространенным способом получения знаний.
Сегодня компьютерное тестирование обладает рядом преимуществ перед традиционным тестированием. Оно отличается высокой оперативностью, производительностью процесса тестирования и объективностью результатов контроля знаний - преподаватель может провести опрос гораздо большего числа студентов за меньшее время по сравнению с очным опросом, и позволяет проанализировать качество подготовки тестирующихся по большому кругу различных вопросов; также адаптация содержания и сложности тестовых вопросов уровню знаний обучаемых, возможность самоконтроля. В отличие от бланковых систем тестирования, компьютерные тесты позволяют использовать сложные методы контроля оценки знаний учащихся, снизить финансовые и временные затраты при проведении тестирования, применить в тестах мультимедийные задания, а так же повысить открытость процесса тестирования. Но наряду с достоинствами, у компьютерных тестов есть и свои недостатки: повышается вероятность случайного выбора ответа, понижается внимание на оформление решения, теряется логика рассуждения, теряется информация о процессе выполнения отдельных заданий учащимися, отношение многих людей к компьютеру не как к средству получения и контроля знаний, а как к средству развлечения.
1. Основные требования к системам тестирования
Создание модели системы тестирования на базе web технологий является крайней перспективной и актуальной научной задачей. Целью курсовой работы является создание современной модели web-сервиса тестирования знаний с помощью средств web-разработки и программная реализация для эффективной работы тестовой системы - защита от копирования информации и списывания при контроле знаний, т.е. выход в Интернет, поиск информации на самом компьютере, использование приложений и.т.д.
Перед формированием модели WEB-сервиса тестирования нужно четко очертить набор функций и требований к нему. Перечислим основные функции, требования, характеристики системы тестирования:
- основная функция - обеспечение эффективного тестирования знаний;
- точная и способная к адаптации оценка результатов тестирования;
- удобство и легкость создания и модификации тестов;
- отсутствие твердой привязки к какого-нибудь предмету, области знаний;
- возможность одновременного тестирования неограниченного количества пользователей;
- отсутствие жесткой привязки к конкретному аппаратному и программному обеспечению;
- легкая наращиваемость, масштабируемость системы;
- высокая безопасность, защищенность;
- неограниченное количество тестов, тем, вопросов и вариантов ответов на них;
- контроль времени тестирования ;
- поддержка режима модульного контроля, в процессе которого существует ряд вопросов и время, в течении которого на них необходимо ответить.
Содержание заданий тестов должно принадлежать одной предметной области, иметь известную меру трудности, выполнение его должно требовать напряжения. Задания должны быть краткими, ясными и корректными, не допускать двусмысленности. Все ответы в случае необходимости их выбора должны быть правдоподобными и равнопривлекательными.
Поэтому стоит упомянуть требования к тестовым заданиям:
- содержание тестового задания должно требовать от испытуемого однозначного ответа;
- содержание тестового задания должно быть ориентировано на получение ответа только по одной задаче из конкретной области знаний;
- следует избегать тестовых заданий, требующих развернутых ответов;
- основные термины тестового задания должны быть явно и ясно определены;
- тестовые задания должны быть прагматически корректными и рассчитаны на испытуемых с заданным (исходным) уровнем подготовки по конкретной предметной области;
- тестовое задание должно формулироваться в утвердительном или повелительном предложениях;
- количество слов в тестовом задании не должно превышать 10.
Рассмотрим пункты «легкая наращиваемость, масштабируемость системы», «удобство и легкость создания и модификации тестов», «высокая безопасность, защищенность» и « обеспечение эффективного тестирования знаний». Это базовые параметры и присутствие их необходимо. Первые два пункта решаются, например, созданием банка вопросов, которые будут выбираться оттуда случайным образом, а так же перемешиванием вариантов ответа. Поэтому даже в том случае, если некоторые студенты получат одни и те же вопросы (причем порядковый номер у них будет наверняка разный), то номера правильных вариантов ответа у них тоже будут разными.
Последние два означают создание равных для всех условий прохождения контроля знаний, невозможность списывания и использования сторонних источников информации и вспомогательных приложений (например, калькулятор) как на компьютере, так и в Интернете, а так же создание защищённого web-интерфейса. Это подразумевает защиту информации, защиту от копирования, распространения вопросов, выдача предупреждающих сообщений, ануллирования тестирования, защиту целостности, Рассмотрим подробнее каждый из них.
2. Защита от копирования
Защита от копирования - особый вид защиты информации, применяемый в отношении программного обеспечения и других объектов интеллектуальной собственности в тех случаях, когда создатель желает сделать информацию доступной только для чтения (воспроизведения, просмотра, запуска программ), но не хочет допускать несанкционированное копирование, тиражирование, распространение.
В этом разделе будут рассмотрены основные механизмы защиты от копирования информации непосредственно с web-страницы.
В вопросе защиты контента сайта от копирования существует несколько отличных друг от друга подходов. Один из вариантов это использование возможностей функционирования JavaScript. Так как выполнение сценариев JavaScript можно отключить в настройках браузера, этот метод легко обойти. Поэтому рассмотрим другие методы.
Например можно размещённую в виде файлов формата HTML информацию разбивать на файлы, размер каждого такого файла не должен превышать одной страницы. Это не создаёт больших неудобств при чтении (может даже быть полезным - при хорошей структурированности), но для полного копирования размещённой информации нужно будет затратить немало труда. Но этот метод предназначен скорее для затруднения копирования, но предотвратить его не может.
Так же можно в целях защиты поверх текста разместить прозрачную и невидимую картинку. При просмотре web-страницы ее наличие не будет заметно, однако попытка выделения текста обернется неудачей. Или же можно размещать всю информацию в виде изображений.
Если требуется разместить на одной web-странице большое количество текста, который хотелось бы предоставить для чтения, но уберечь от копирования, то можно фрагменты текста разместить на странице в элементах формы. Браузер не может выделить одновременно содержимое всех этих элементов, чтобы можно было перенести в другое приложение.
И наиболее простой метод - это запрет вызова контекстного меню правой клавиши мыши и соответствующей кнопкой клавиатуры, а так же запрет на выделение и копирование текста в буфер обмена. Исходный код данного метода - блокирования функций, позволяющий защитить информацию от копирования, представлен в Приложении А.
В этом разделе были рассмотрены основные способы защиты от копирования, которые используются в настоящее время. Каждый из них подходит для применения к тестовым системам, сделанных с помощью средств web-разработки. При этом пользователь не сможет скопировать вопросы, например к себе на флешку и распространить остальным пользователям, поэтому решается проблема частого обновления вопросов.
3. Защита от списывания, использования сторонних источников информации
Борьба с плагиатом и списыванием ведется неустанно многим учебным заведениям, том числе и высшим, особенно при проведении любого мероприятия, связанного с проверкой знаний. Безусловно, передовая цель такого мероприятия - получить максимально объективные данные о действительных знаниях, умения и навыков проверяемых. Поэтому контроль и защита от списывания - конечно же, главные признаки успешности проверки испытуемых. Рассмотрим два случая.
Если, например, тест, экзамен, контрольная проводятся без использования технических средств - т.е. на бумажных носителях, то вариантов списывания, как правило, возникает несколько. Основные - это шпаргалки, лекции, учебники на бумажных и электронных носителях, мобильные средства связи. Ограничить их использование достаточно просто - допускать на проверку знаний без лишней аппаратуры и бумажных носителей, а так же непосредственный визуальный контроль. Однако у данного способа проверки знаний есть ряд серьезных недостатков, упоминавшихся ранее. И конечно целесообразней использовать компьютерную систему для данных целей, особенно если сдающих очень много. Для примера будем рассматривать систему тестирования на базе web технологий. Здесь появляется еще больше возможностей и источников списывания - Интернет, который нужен для передачи данных на сервер, приложения на компьютере и все предыдущие варианты. Одни из очевидных методов решения данной проблемы:
1) Непосредственное наблюдение за сдающими тест. Сразу же возникает недостаток - если сдающих 100 или 1000 человек? Для наблюдения будет нужна целая группа людей, а это лишние затраты.
2) Установка камер наблюдения. Опять же, это довольно дорогая процедура.
3) Попросить не списывать, честно сдавать тест. Нету никаких затрат, но это и малоэффективно.
Поэтому один из эффективных способов - использование возможностей прикладных языков web программирования Вариантов создания алгоритмов и сценариев таких ограничений множество. Схема их работы зависит от конкретной поставленной задачи, от профессиональности программиста, от использования языка или нескольких языков. Один из эффективных и быстрых способов - использование возможностей JavaScript.
В рамках данной курсовой работы было решено реализовать следующие решения:
1) Невозможность запуска нескольких сессий браузера;
2) Запуск активного окна в полноэкранном режиме без лишних функций браузера - адресной строки, панели инструментов, полосы прокрутки, строки состояния;
3) Активное окно нельзя свернуть никаким способом;
4) Размеры активного окна нельзя изменить;
5) Нельзя создать новую вкладку;
6) Вывод предупреждающих сообщений при нарушении правил.
Реализация этих решений позволяет решить большинство проблем. Прохождение теста начинается в полноэкранном режиме, чтобы убрать все ненужные функции браузера и сконцентрировать внимание на тестировании. При попытке щелкнуть по значкам управления окном (закрыть, свернуть, развернуть) выводится предупреждающее сообщение. При попытке свернуть окно комбинациями «windows+d», «alt+tab» так же появляется предупреждающее сообщение. При попытке выйти из полноэкранного режима или изменении размеров окна текст содержимого теста пропадает и выводится предупреждающее сообщение. По сути дела воспользоваться чем-либо вообще не представляется возможным до окончания тестирования, как только зафиксируется "подглядывание", тест выдаст предупреждение, и не позволит воспользоваться сторонними источниками информации.
знание тестирование программный модель
ЗАКЛЮЧЕНИЕ
В данной курсовой работе была реализована первоначальная защита от действий, нежелательных или недопустимых (в зависимости от теста) при прохождении тестирования. В ходе выполнения работы были спроектированы две основные задачи:
- создание условия ограничения копирование информации;
- создание условия эффективного контроля знаний.
В перспективах развития этой темы можно реализовать кроссплатформенную систему, допуск к тестированию только с помощью аутентификации - ввод логина и пароля, отсутствие подключения к Интернету на компьютерах для тестирования, сохранение результатов тестирования в отдельном файле.
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ
1. Берденникова Н.Г., Меденцев В.И., Панов Н.И. Организационное и методическое обеспечение учебного процесса в вузе [Текст]: Учебно-методическое пособие. - СПб.: Д.А.Р.К., 2006
2. Аванесов В.С. Научные проблемы тестового контроля знаний. [Текст] - М., 1994
3. Аванесов В.С. Теоретические проблемы разработки заданий в тестовой форме. [Текст] М.:, 1995
4. Агапонов С.В., Джалиашвили З.О., Средства дистанционного обучения. Методика, технология, инструментарий. [Текст]: Спб: BHV-СПб, 2007
5. Морев И.А. Образовательные информационные технологии. Часть 2. Педагогические измерения [Текст]: Учебное пособие. - Владивосток: Изд-во Дальневост. ун-та, 2004.
6. Белов, Е.А. Проблема оценки знаний методом тестирования в системах дистанционного обучения [Текст] Под ред. О.А. Горленко. - Брянск: БГТУ, 2001. - С. 161-162.
7. Белов, Е.А. Разработка автоматизированной тестирующей системы с ответами испытуемого на естественном языке / Е.А. Белов // Единое образовательное пространство славянских государств в XXI веке: Проблемы и перспективы: Материалы II Междунар.науч.-практ.конф. /под ред. В.И. Аверченкова. - Брянск: БГТУ; СГА, 2006. - С. 242-245.
8. Опыт создания системы тестового контроля на историческом факультете http://hist.asu.ru/aik/testcont.html
9. Применение заданий в тестовой форме в новых образовательных технологиях
10. Защита информации в системах дистанционного обучения с монопольным доступом Карпов Андрей Сдавался 2004 г., Тула,
11. http://javascript.ru/
12. http://www.woweb.ru/
13. http://www.perkoka.ru/
14. http://www.emanual.ru
ПРИЛОЖЕНИЕ А
Исходный код верстки, запрещающий копирование и выделение текста
<body onselectstart="return false" oncontextmenu="return false">
onselectstart="return false" - запрет выделение текста
oncontextmenu="return false" - запрещает вызов контекстного меню правой кнопки мыши и соответствующей клавиши.
ПРИЛОЖЕНИЕ Б
Исходный код функции, запрещающей использование сторонних источников информации
/*переносимый способ регистрации обработчиков события onload.
данный модуль определяет единственную функцию runOnLoad,
выполняющую регистрацию переносимым способом функций -
обработчиков, которые могут вызываться только после полной
загрузки документа, когда будет доступна структура DOM*/
function runOnLoad(f){
if(runOnLoad.loaded)f(); // если документ уже загружен просто
вызывать f();
else runOnLoad.funcs.push(f); // иначе сохранить для вызова позднее
}
runOnLoad.funcs=[]; // массив функция которые должны быть вызваны
после загрузки документа
runOnLoad.loaded=false; //функции еще не запускались
runOnLoad.run=function() {
if (runOnLoad.loaded) return; // если функции запускались, значит ни
чего не делаем
for (var i=0;i<runOnLoad.funcs.length;i++) {
try {
runOnLoad.funcs [i]();
} catch(e) {} // исключения вызванные в какой либо функции ни как не
должно повлиять на вызов остальных
}
runOnLoad.loaded=true; // запомнить факт запуска
delete runOnLoad.funcs; // Но не запоминать сами функции
delete runOnLoad.run // забываем о существовании данных функций
}
// регистрируем runOnLoad как обработчик событий onload
if (window.addEventListener) {
window.addEventListener("load",runOnLoad.run,false);
}
else if(window.attachEvent) {
window.attachEvent("onload",runOnLoad.run);
}
else window.onload=runOnLoad.run;
// вызываем регистрацию событий onload функции sizeBody
runOnLoad(sizeBody);
/* функция обработчик изменения размера окна, она показывает или
скрывает тег "закрытия текста" */
function sizeBody() {
var bodySize=document.documentElement.clientHeight; // высота браузера
if(parseFloat(bodySize)>=(screen.height-5)) { // screen.height-5
(высота монитора пользователя) "минус 5" сделано для совместимости
с браузером Firefox, так как в полноэкранном режиме он почему то
"оставляет 5 пикселей верхнего тулбара"
document.getElementById("noTextBody").style.display="none"; //
скрываем тег "оповещения"
} else{ document.getElementById("noTextBody").style.display="block";
// делаем оповещение, путем добавления "видимости" тега в наш
документ
}
}
Размещено на Allbest.ru
Подобные документы
Основные функции, требования и характеристики системы тестирования. Создание современной модели WEB-сервиса тестирования знаний студентов с помощью средств WEB-разработки. Описание пользовательского интерфейса сайта, этапы прохождения тестовых заданий.
курсовая работа [6,4 M], добавлен 14.07.2012Обзор существующих решений построения систем взаимодействия. Классическая архитектура клиент-сервер. Защита от копирования и распространения материалов тестирования. Задачи ИБ компьютерных систем тестирования и обзор современных способов их реализации.
курсовая работа [36,9 K], добавлен 26.04.2013Использование информационных технологий в учебном процессе. Тестирование как средство контроля знаний. Разработка компьютерной системы тестирования знаний. Описание языка программирования. Вредные факторы воздействия компьютера на здоровье человека.
дипломная работа [562,2 K], добавлен 06.06.2014Программная реализация современной модели системы тестирования знаний студентов с помощью кроссплатформенных средств разработки. Элементы пользовательского интерфейса тестовой системы, поэтапный процесс ее функционирования. Алгоритм оценивания ответов.
курсовая работа [648,7 K], добавлен 14.07.2012Создание системы компьютерного тестирования для контроля знаний. Проблемы, возникающие при создании тестовой оболочки в среде Ren`Py. Разработка проектных решений по системе и её частям. Структура тестирования, вопросы и ответы тестирующей системы.
дипломная работа [501,6 K], добавлен 12.09.2016Проектирование программы в среде Delphi для тестирования знаний студентов по программированию, с выводом оценки по окончанию тестирования. Разработка экранных форм и алгоритма программы. Описание программных модулей. Алгоритм процедуры BitBtn1Click.
курсовая работа [365,0 K], добавлен 18.05.2013Основные стандарты usability-тестирования интерфейсов информационных систем. Количественные и качественные методы оценки тестирования. Технология Eye-tracking. Постановка целей и задач для тестирования сайта Налоговой службы Российской Федерации.
дипломная работа [3,3 M], добавлен 11.06.2017Создание сетевой системы тестирования с целью автоматизации процесса контроля знаний, оценивания результатов и создания тестовых заданий. Файлы проекта и их назначение. Описание алгоритмов и модулей программы. Работа с сетью, руководство пользователя.
контрольная работа [928,3 K], добавлен 23.12.2012Разработка автоматизации процесса тестирования в учебном заведении. Характеристика и анализ существующей организации обработки информации. Обоснование выбора языка программирования, классификация и кодирование информации. Программная реализация задачи.
курсовая работа [1,9 M], добавлен 06.06.2012Методика и основные этапы разработки системы тестирования для оценки уровня знаний студентов с применением технологии "Клиент-сервер". Проектирование клиентской, серверной части данной системы тестирования, порядок составления финальных отчетов.
дипломная работа [587,6 K], добавлен 08.11.2010