Разработка программного продукта для прохождения тестов
АННОТАЦИЯ
В рамках дипломного проекта разработано программное обеспечение,
предназначенное для предоставления трех основных способов прохождения тестов
для студентов. Программное обеспечение создано с использованием современных веб
- технологий.
Данная разработка призвана заменить традиционный бумажный способ проверки
знаний. Такая возможность может быть успешно реализована с использованием
собственных переносных персональных компьютеров или средствами штатного
оборудования кафедр.
В аналитической части дипломного проекта выполнен анализ состояния
вопроса. Определены наиболее близкие к поставленной задачи методы решения,
сформулированы основные цели создания системы.
На основании сделанного анализа сформулировано техническое задание к
проектируемой системе.
В конструкторской части дипломного проекта показана модель архитектуры
программного средства, построена модель потоков данных, определяющая
взаимодействие данных между собой. Разработана логическая модель данных на
основании, которой построена физическая база данных. Произведен выбор языка
программирования и средств разработки, позволяющей наиболее эффективно решить
поставленную задачу. Разработан прототип интерфейса программного модуля и
реализованы необходимые функции.
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
. АНАЛИТИЧЕСКАЯ ЧАСТЬ
.1 Общие сведения о процессе
тестирования
.2 Обзор существующих систем
тестирования
.2.1 Обучающая система
«Фобус»
.2.2 Персональная обучающая
система IBM PLS
.2.3 Microsoft Windows XP
.2.4 Самоучитель Excel 2000.
TeachPro
.3 Выводы
.4 Постановка задачи проекта
. ТЕХНИЧЕСКОЕ ЗАДАНИЕ
.1 Основания для разработки
.2 Назначение разработки
.3 Особые требования
.4 Функциональные требования
.5 Требования к надежности
.6 Условия эксплуатации
.7 Требования к составу и
параметрам технических средств
.7.1 Требования к серверной
части
.7.2 Требования к клиентской
части
.8 Требования к
информационной и программной совместимости
.9 Требования к программному
обеспечению
.10 Требования к программной
документации
.11 Этапы разработки
.12 Порядок контроля и
приемки
. ИССЛЕДОВАТЕЛЬСКАЯ ЧАСТЬ
.1 Обзор видов тестирования
.1.1 Традиционные тесты
.1.2 Нетрадиционные тесты
.1.3 Виды тестовых заданий
.2 Особенности линейного
теста
.3 Особенности управляемого
теста
.4 Особенности адаптивного
теста
.4.1 Трехуровневый алгоритм
.4.2 Алгоритм сходящихся
порогов
.5 Разработка и реализация
собственного алгоритма
. КОНСТРУКТОРСКАЯ ЧАСТЬ
.1 Архитектура
разрабатываемой системы
.2 Выбор средств разработки
.2.1 Выбор языка
программирования
.2.2 Выбор СУБД
.2.3 Прочие средства
разработки
.3 Моделирование работы
системы
.4 Описание схемы хранения
данных
.5 Алгоритм работы модуля
.6 Проектирование модуля
. ЭКСПЕРИМЕНТАЛЬНАЯ ЧАСТЬ
.1 Общие сведения о
тестировании
.2 Тестирование в нормальных
условиях
.3 Тестирование в
экстремальных условиях
.4 Тестирование
исключительных ситуациях
.5 Оценка полноты проверки
программной системы
ЗАКЛЮЧЕНИЕ
СПИСОК ЛИТЕРАТУРЫ
ВВЕДЕНИЕ
Компьютерные обучающие программы заявили о себе как о средстве обучения в
начале 70-х годов, в период появления персональных компьютеров, но до сих пор
не имеют общепризнанного, «узаконенного» названия. Наиболее часто встречаются
такие формулировки, как программно - методический комплекс, программные
средства учебного назначения, контролирующие обучающие программы и др.
Такие программные средства обычно предназначаются для использования в
традиционном учебном процессе, при подготовке, переподготовке и повышении
квалификации кадров, для развития личности обучаемого, интенсификации процесса
обучения и в других целях.
Исследование содержания, способов и средств разработки программно -
методического комплекса позволяют выделить основные функции, которые они
выполняют в учебном процессе:
· индивидуализировать и дифференцировать процесс обучения;
· осуществлять контроль с диагностикой ошибок и с обратной
связью;
· осуществлять самоконтроль учебной деятельности;
· высвобождать учебное время за счет выполнения компьютером
трудоемких рутинных вычислительных работ;
· визуализировать учебную информацию;
· моделировать и имитировать изучаемые процессы или явления;
· формировать умение принимать оптимальное решение в различных
ситуациях;
· развивать определенный вид мышления (например,
наглядно-образного, теоретического);
· формировать культуру познавательной деятельности.
Программно - методические комплексы на современном этапе включают:
электронные (компьютеризированные) учебники, электронные лекции, контролирующие
компьютерные программы, справочники и базы данных учебного назначения, сборники
задач и генераторы примеров (ситуаций), предметно-ориентированные среды,
компьютерные иллюстрации для поддержки различных видов занятий.
Таким образом, можно сделать вывод, что компьютер в обучении не заменяет
преподавателя, а является его помощником.
Разрабатываемый модуль является доказательством того, что преподаватель
освобожден от проверки выполнения работ каждого студента при контроле знаний.
Модуль предоставляет студенту определенные типы работ для проверки
знаний, а преподавателю результат их выполнения.
Задача создания учебно-методического комплекса является актуальной, так
как комплекс позволяет преподавателю автоматизировать процесс контроля знаний и
высвободить время для более важных задач.
Цель дипломного проекта: с помощью web-технологий создать модуль, который
содержит в себе различный модели тестирования для проверки знаний студентов.
Задачи:
· сформулировать требования к системе с учетом специфики работы
Брянского государственного технического университета;
· разработать модель представления данных;
· разработать алгоритмы работы системы;
· разработать удобный интерфейс пользователя;
· разработать автоматизированный модуль, который обеспечивает
доступ студенту к трем основным способам предоставления теста.
Предмет исследования: методы и алгоритмы представления учебных материалов
студенту.
Объект исследования: учебно-методический комплекс и способы представления
материалов в нем.
1.
АНАЛИТИЧЕСКАЯ ЧАСТЬ
.1 Общие сведения о процессе тестирования
В настоящий момент в образовании применяют самые различные педагогические
инновации. Применение инновационной технологии позволяет объективно,
беспристрастно проследить развитие навыков обучаемых.
Слово "тест" вызывает у людей самые различные представления.
Одни полагают, что это вопросы или задачи с одним готовым ответом, который надо
угадать. Другие считают тест формой игры или забавы. Третьи пытаются
истолковать это как перевод с английского слова "test", (проба,
испытание, проверка). В наши дни существует много видов тестов, поэтому дать
универсальное определение для всех этих видов вряд ли можно.
Тесты - эффективная форма для текущего и итогового контроля знаний
студентов. Эту форму можно использовать для всех тем курса обучения. Тесты
могут быть использованы и как тренировочные при углубленном изучении темы, и
как основная форма контроля знаний.
Задача преподавателя - научить студента оценивать свои действия,
результаты, свое продвижение вперед. Эту задачу можно решить с помощью тестов.
Тестирование организует непрерывный и быстрый контакт знаний, который
является обратной связью в системе «преподаватель - студент», обеспечивает
объективность оценки, широкий охват материала.
Вопросы и задания тестов развивают мыслительные операции студентов, учат
их обобщать явления, устанавливать причинно - следственные связи, побуждают к
применению определенных способов действий. Разнообразие формулировок в тестовых
заданиях разовьет остроту ума и гибкость мышления, потребует от студента
предельной внимательности и собранности.
Тестовая технология наряду с другими педагогическими технологиями
становится все более доступной. [22]
В сочетании с персональным компьютером, тесты помогают перейти к созданию
систем адаптивного обучения и контроля - наиболее современных в организации
учебного процесса.
Без тестов невозможен переход к прогрессивному обучению на основе принятой
у нас системы полного усвоения знаний. Обучение начинается с входного
тестирования, сопровождается текущим контролем с помощью заданий в тестовой
форме и заканчивается объективным тестированием учебных достижений. Кроме того,
тесты позволяют наладить самоконтроль - самую полезную для обучения и гуманную
форму контроля знаний, а также организовать рейтинг - эффективное средство
повышения учебной мотивации.
Виды тестирования
Традиционный тест представляет собой стандартизованный метод диагностики
уровня и структуры подготовленности. В таком тесте все испытуемые отвечают на
одни и те же задания, в одинаковое время, в одинаковых условиях и с одинаковыми
правилами оценивания ответов.
К традиционным тестам относятся тесты гомогенные и гетерогенные.
Гомогенный тест представляет собой систему заданий возрастающей
трудности, специфической формы и определенного содержания - система,
создаваемая с целью объективного, качественного, и эффективного метода оценки
структуры и измерения уровня подготовленности учащихся по одной учебной
дисциплине.
Легко видеть, что в своей основе определение гомогенного теста совпадает
с определением традиционного теста.
Гомогенные тесты распространены больше других. В педагогике они создаются
для контроля знаний по одной учебной дисциплине или по одному разделу такой,
например, объемной учебной дисциплины, как физика. В гомогенном педагогическом
тесте не допускается использование заданий, выявляющих другие свойства. Наличие
последних нарушает требование дисциплинарной чистоты педагогического теста.
Ведь каждый тест измеряет что-то заранее определенное.
Гетерогенный тест представляет собой систему заданий возрастающей
трудности, специфической формы и определенного содержания - система,
создаваемая с целью объективного, качественного, и эффективного метода оценки
структуры и измерения уровня подготовленности учащихся по нескольким учебным
дисциплинам.
Нередко в такие тесты включаются и психологические задания для оценки
уровня интеллектуального развития.
Обычно гетерогенные тесты используются для комплексной оценки выпускника
школ, оценки личности при приеме на работу и для отбора наиболее подготовленных
абитуриентов при приеме в вузы. Поскольку каждый гетерогенный тест состоит из
гомогенных тестов, интерпретация результатов тестирования ведется по ответам на
задания каждого теста (здесь они называются шкалами) и, кроме того, посредством
различных методов агрегирования баллов делаются попытки дать общую оценку
подготовленности испытуемого.
Главная цель применения традиционных тестов - установить отношение
порядка устанавливаемых между испытуемыми по уровню проявляемых при
тестировании знаний. И на этой основе определить место (или рейтинг) каждого на
заданном множестве тестируемых испытуемых. В тест стараются отобрать минимально
достаточное количество заданий, которое позволяет сравнительно точно определить
уровень и структуру подготовленности. Интерпретация результатов тестирования
ведется преимущественно с опорой на среднюю арифметическую и, на так
называемые, процентные нормы, показывающие, - сколько процентов испытуемых
имеют тестовый результат худший, чем у любого другого испытуемого. Такая
интерпретация тестовых результатов называется нормативно-ориентированной.
Педагогический тест
Педагогический тест определяется как система заданий определенного
содержания, возрастающей трудности, специфической формы, позволяющая
качественно и эффективно измерить уровень и оценить структуру подготовленности
учащихся. В педагогическом тесте задания располагаются по мере возрастания
трудности - от самого легкого до самого трудного.
Интегративный тест
Интегративным можно назвать тест, состоящий из системы заданий,
отвечающих требованиям интегративного содержания, тестовой формы, возрастающей
трудности заданий, нацеленных на обобщенную итоговую диагностику подготовленности
выпускника образовательного учреждения.
Диагностика проводится посредством предъявления таких заданий, правильные
ответы на которые требуют интегрированных (обобщенных, явно взаимосвязанных)
знаний в области двух и большего числа учебных дисциплин. Создание таких тестов
дается только тем преподавателям, которые владеют знаниями ряда учебных
дисциплин, понимают важную роль межпредметных связей в обучении, способны
создавать задания, правильные ответы на которые требуют от учащихся знаний
различных дисциплин и умений применять такие знания. Интегративному
тестированию предшествует организация интегративного обучения. К сожалению,
существующая сейчас классно-урочная форма проведения занятия, в сочетании с
чрезмерным дроблением учебных дисциплин, вместе с традицией преподавания
отдельных дисциплин (а не обобщенных курсов), еще долго будут тормозить
внедрение интегративного подхода в процессы обучения и контроля
подготовленности.
Преимущество интегративных тестов перед гетерогенными заключается в
большей содержательной информативности каждого задания и в меньшем числе самих
заданий.
Методика создания интегративных тестов сходна с методикой создания
традиционных тестов, за исключением работы по определению содержания заданий.
Для отбора содержания интегративных тестов использование экспертных методов
является обязательным.
Адаптивный тест
Адаптивный тест работает, как хороший экзаменатор. Сначала он
"задает" вопрос средней сложности, и полученный ответ немедленно
оценивается. Если ответ правильный, то оценка возможностей тестируемого
повышается. В этом случае задается более сложный вопрос. При успешном ответе
студента на вопрос, следующий подбирается более трудным, при неуспешном -
легким.
Главное преимущество адаптивного теста перед традиционным - эффективность.
Адаптивный тест может определить уровень знаний тестируемого с помощью меньшего
количества вопросов (иногда длина теста уменьшается до 60%).
В адаптивном тесте на каждый вопрос в среднем выделяется больше времени
для обдумывания, чем в обычном тесте. Например, вместо 2 минут на каждый
вопрос, у сдающего адаптивный тест может получиться 3 или 4 минуты (в
зависимости от того, на сколько вопросов ему понадобится ответить).
Достоверность результатов адаптивного теста совпадает с достоверностью
тестов фиксированной длины. Оба вида тестов одинаково точно оценивают уровень
знаний.
Тем не менее, очень широко распространено мнение, что адаптивный тест
более точно оценивает уровень знаний. Это неверно.
1.2 Обзор существующих систем тестирования
Для сравнения современных обучающих систем возьмем несколько систем,
выделим их основные особенности и сравним основные характеристики.
1.2.1 Обучающая система «Фобус»
Обучающая система «Фобус» позволяет освоить все необходимые современному
пользователю навыки работы с основными офисными программами для PC системы
Microsoft Windows, Word, Excel, а также Internet Explorer.
Электронные практикумы строятся на основе диалога пользователя с
обучающей системой. В ходе выполнения упражнений программа анализирует действия
пользователя, комментирует ошибки и дает подсказки. Интерфейс максимально
приближен к среде изучаемых программ. В зависимости от числа попыток меняются
рекомендации и комментарии [6].
Обучающая система «Фобус» - незаменимый помощник школьников, студентов,
молодых специалистов и всех начинающих пользователей.
Диалоговая обучающая система «Фобус», основанная на применении
функционального диалога, предназначена для обучения умениям, для контроля
умений обучаемого. Она ориентирована на повышение эффективности выполнения
функций преподавателя, таких как индивидуальный обучающий/контролирующий
диалог, что позволяет использовать ее как в аудиторных занятиях, так и частично
выносить обучение на контролируемые самостоятельные занятия.
Программное обеспечение обучающей системы обеспечивает проведение занятий
в локальной сети под контролем преподавателя, при этом автоматизируются учетные
(ведение журнала) и контролирующие функции преподавателя (контроль работы на
каждом рабочем месте, управление сеансом, выдача сообщений обучаемым).
В настоящее время в рамках диалоговой обучающей системы «Фобус»
разработан ряд электронных практикумов, предназначенных для дисциплин
компьютерного цикла (Информатика, Информационные технологии). Каждый практикум
содержит систему аттестации, а также разделы для обучения умениям +в режиме
обучающего диалога, достаточные для успешного прохождения аттестации и
позволяющие проводить обучение с учетом реальной исходной подготовки
обучаемого. Отличительные особенности «Фобус»:
· создаётся полное ощущение работы с изучаемыми программными
средствами: Windows, Excel, Explorer;
· знания приобретаются путём практического выполнения заданий;
· система настраивается на Ваш уровень знаний.
1.2.2 Персональная обучающая система IBM PLS
Персональная обучающая система IBM PLS - имеет следующие достоинства:
· простое и эффективное использование мультимедиа в локальной
сети для преподавателя и студентов;
· возможность создавать собственные учебные курсы без
привлечения программистов или технических специалистов;
· мощное средство управления процессом обучения и контроля за
усвоением знаний;
· возможность обеспечить интерфейс с любым учебным материалом
внешнего производства и использовать как старые, так и новые учебные
разработки.соединяет традиционный учебный материал: текст и графику со звуком и
видео, превращая обучение за компьютером в увлекательное действие. Проходить
обучение в группе не всегда удобно. У каждого слушателя свои требования к
курсу. Скорость усвоения нового материала также индивидуальна. Обучаясь с помощью
PLS, всегда можно выбрать необходимый курс и учиться в удобном для обучаемого
темпе [7].
Видеоматериалы, слайды, графика, презентации принесут мало пользы, если
они просто будут храниться в шкафах; более того, проекторы, видеоплейеры и
видеокамеры - это дорогое оборудование. PLS компенсирует Вам средства,
вложенные в эти дорогостоящие учебные материалы и оборудование, так как любой
пользователь получает возможность доступа ко всем ресурсам. Легкость обновления
учебного материала - также одна из отличительных особенностей PLS. PLS окупает
все затраты, так как с помощью этой системы можно максимально задействовать
ресурсы аппаратных средств, имеющихся в распоряжении. PLS устанавливается на
сервер в действующей локальной сети и доступна для запуска с любого рабочего
места. В состав PLS входит модуль «Авторского проектирования курсов», которым
легко может воспользоваться преподаватель.
1.2.3 Microsoft Windows XP
Обучающая система «Microsoft Windows XP» - новая пошаговая обучающая
система от компании "КомпактБук" отличается большой информационной
насыщенностью и высокой степенью интерактивности. Программа позволяет в
процессе обучения получить навыки работы в среде Microsoft® Windows® XP [8].
В "Самоучитель Windows® XP" включено 17 уроков, по 20-25
экранов каждый. Подача учебного материала в текстовой, звуковой и визуальной
формах, обеспечивает наилучшее усвоение информации пользователями с
преобладанием различных типов восприятия. Экраны, где предлагается посмотреть
анимацию, чередуются с экранами, на которых необходимо выполнить задание
самостоятельно. Таким образом, внимание не рассеивается, и даже самый
неподготовленный ученик не заснет в процессе обучения. По завершении каждого
урока происходит тестирование, выставляется оценка и даются рекомендации (продолжать
обучение или пройти урок еще раз). Эмуляция среды соответствующего продукта
позволяет пройти обучение, даже если на компьютере пользователя сам продукт не
установлен.
Отличительные особенности:
· метод пошагового обучения;
· великолепная эмуляция среды Microsoft® Windows® XP;
· отличная система тестирования и проверки ошибок;
· дружественное отношение к пользователю.
Обучающая система «MS Excel XP. Обучение». Данная обучающая система
предлагает познакомиться с одним из наиболее распространенных редакторов
электронных таблиц Microsoft Excel XP.
Курс поможет легко и быстро освоить основные приемы работы с программой,
изучить графический интерфейс пакета и выяснить назначение её основных
управляющих элементов. Кроме того, знакомит с основными приемами подготовки и
редактирования документов, научит быстро и эффективно создавать, обрабатывать,
анализировать информацию в виде электронных таблиц и графиков. Отдельные
разделы посвящены работе с формулами и функциями, макрокомандами и настройке
пользовательского интерфейса программы.
Вся информация разделена на семь разделов, и каждый из них содержит
несколько видео уроков на заданную тему. Просматривая урок вы можете перемотать
его на любую позицию, остановить и возобновить воспроизведение снова. Для тех,
кто желает проверить свои знания и закрепить пройденный материал предусмотрена
система контроля знаний.
Изображение видео урока в точности повторяет рабочий стол вашего
компьютера и наглядно демонстрирует, каким образом использовать те или иные
возможности Microsoft Excel XP. Таким образом, вам не потребуются десятки книг,
и вы сможете уже через несколько уроков создавать свои документы.
1.2.4 Самоучитель Excel 2000. TeachPro
Начинается курс с подробного знакомства с интерфейсом, основными
понятиями и функциями Excel 2000, знакомит с различными способами заполнения
таблиц, их форматированием, адресацией. Подробно представлены понятия формулы,
функции (финансовые, статистические, инженерные, функции вероятности и
комбинаторики, массивов и ссылок), диаграммы и т.д. В уроках о форматировании
рассмотрены такие понятия, как условное форматирование и стиль, а в уроках о
вводе данных рассказано о сценариях. Система обучает использованию в своей
работе Макросов и Отладчика Basic, а также сохранять и защищать результаты своей
работы.
В курсе предусмотрены следующие режимы обучения:
· Непрерывный. Весь материал лекции зачитывается без перерывов,
в достаточно высоком темпе. Но, разумеется, пользователь имеет возможность
останавливать занятие и возвращаться назад, если это необходимо.
· Пошаговый. В данном режиме материал преподносится небольшими
фрагментами. Если обучаемому все понятно, он может продолжить занятие, если
нет, то у него есть возможность вернуться к любому из предыдущих шагов.
· Контрольный. Этот режим очень похож на предыдущий, только
после каждого шага обучаемому задается вопрос и предлагается произвести
некоторую операцию. Часто учащегося просят самостоятельно повторить действия
лектора. Если обучаемый сам не справится с заданием, то он может
воспользоваться подсказкой.
· Тестовый. Этот режим предназначен для самоконтроля. Перед
обучаемым ставятся задачи по теме пройденного занятия, и он должен их решить. И
в этом режиме пользователь также может пользоваться подсказкой.
Отличительные особенности:
· возможность выбора подходящего режима;
· система контроля и самоконтроля знаний.
Рассмотренные системы и их основные характеристики приведены в табл.1.1.
Таким образом, к общим недостаткам коммерческих обучающих программных
продуктов можно отнести:
· Что выбираются те тематики, где достаточно нетрудно
реализовать все возможности мультимедийных технологий представления информации,
которые, несомненно, повышают информационную насыщенность обучающих систем. ―
Это видно из таблицы - в
основном сейчас преобладают мультимедийные системы. Меньшей популярностью у
разработчиков систем пользуются предметные области, в которых требуется
программное моделирование сложных процессов и явлений, поэтому учебные
заведения не располагают системами обучения, например, по физике, математике в
виду отсутствия их на рынке.
· Многие из предлагаемых систем «низкого качества», т.е. не
обладают важными возможностями и способностями адаптации к знаниям обучающихся,
а также характеризуются отсутствием возможности использования в локальных
сетях, которая очень важна для учебных заведений.
Таблица 1.1 Сравнение возможностей существующих обучающих
систем
Название
|
Фобус
|
PSL
|
Самоучитель MS Windows XP
|
Обучение MS Excel XP
|
Самоучитель Excel 2000
|
Тип обучающей системы
|
адаптивная
|
мультимед.
|
мультимед.
|
мультимед.
|
мультимед.
|
Анализ действий
пользователя
|
высокий
|
средний
|
низкий
|
отсутствует
|
низкий
|
Характер приобретения
знаний
|
практическая
|
Практ-ская
|
Практ-ская
|
Теорет-ская
|
Теоретич.
|
Учет исходной подготовки
обучаемого
|
+
|
+
|
-
|
-
|
-
|
Возможность использования в
локальных сетях
|
+
|
+
|
-
|
-
|
-
|
Наличие поиска
|
-
|
+
|
-
|
-
|
-
|
Требуемый объем
пространства на жестком диске (MB)
|
60
|
100
|
16
|
28
|
10
|
Тип операционной системы
|
MS Windows 98/2000/XP
|
MS Windows 98/2000/XP
|
MS Windows 98/2000/XP
|
MS Windows 98/2000/XP
|
MS Windows 98/2000/XP
|
Цена (долл.)
|
4,50
|
65
|
13
|
3
|
5
|
В качестве заключения следует сказать, что в настоящее время существует
проблема разрыва между потенциальными и реальными возможностями создания
высококачественных обучающих систем, соответствующих как передовым технологиям
обработки и представления информации, так и накопленному педагогическому опыту.
Отечественные и зарубежные разработки компьютерных обучающих систем обладают
плохими дидактическими возможностями, несмотря на то, что прогресс программных
и аппаратных средств представляет хорошие возможности для реализации различных
дидактических идей.
Также во многих обучающих системах недостаточно раскрыта область изучения
из-за недостаточных знаний авторов систем, не уделено внимание специфике
обучения.
1.3 Выводы
Внедрение новых информационных технологий в образование привело к
появлению новых образовательных технологий и форм обучения, базирующихся на
электронных средствах обработки и передачи информации.
Несмотря на разнообразие технических средств, и технологий, использующихся
в учебном процессе, следует отметить, что качество обучения зависит, прежде
всего, от совершенства учебного материала, формы его представления и
организации учебного процесса. Поэтому, даже в традиционной схеме обучения,
возникает много проблем, связанных с постоянно нарастающим потоком новой
информации, усложнением знаний, отсутствием иллюстративного материала. В этих
условиях акцент на интенсивную самостоятельную работу не дает положительных
результатов по тем же причинам.
Внедрение компьютера в учебный процесс не только освобождает
преподавателя от рутинной работы в организации учебного процесса, оно дает
возможность создать богатый справочный и иллюстративный материал,
представленный в самом разнообразном виде: текст, графика, анимация, звуковые и
видеоэлементы. Интерактивные компьютерные программы активизируют все виды
деятельности человека: мыслительную, речевую, физическую, персептивную, что
ускоряет процесс усвоения материала. Компьютерные тренажеры способствуют
приобретению практических навыков. Интерактивные тестирующие системы
анализируют качество знаний. Одним словом, применение программных средств и
технологий позволяет построить такую схему обучения, в которой разумное
сочетание обычных и компьютерных форм организации учебного процесса дает новое
качество в передаче и усвоении системы знаний. Однако создание эффективных
компьютерных средств обучения - достаточно сложная и трудоемкая работа.
Таким образом, обычным преподавателям образовательных учреждений
практически не доступно создание уникальных образовательно-тестирующих курсов.
С разработкой тестирующей программной системы возможно решение данной проблемы,
поскольку она позволяет создавать учебные курсы по дисциплине информатика и не
требует от автора специальных знаний в области компьютерных технологий. Автору
достаточно уметь пользоваться персональным компьютером. А также данная система,
в отличие от других разработок, имеет приемлемую цену не только для крупных
компаний, но и для бюджетных образовательных учреждений, которые не будут в дальнейшем
получать прибыль от разработки материалов.
1.4 Постановка задачи проекта
Цель дипломного проекта: с помощью web-технологий создать модуль, который
содержит в себе различный модели тестирования для проверки знаний студентов.
Задачи:
· сформулировать требования к системе с учетом специфики работы
Брянского государственного технического университета;
· разработать модель представления данных;
· разработать алгоритмы работы системы;
· разработать удобный интерфейс пользователя;
· разработать автоматизированный модуль, который обеспечивает
доступ студенту к трем основным способам предоставления теста.
Предмет исследования: методы и алгоритмы представления учебных материалов
студенту.
Объект исследования: учебно-методический комплекс и способы представления
материалов в нем.
программный
прохождение тест надежность
2.
ТЕХНИЧЕСКОЕ ЗАДАНИЕ
.1 Основания для разработки
Основанием для разработки модуля является задание на дипломный проект,
выданное Азарченковым А.А.
2.2 Назначение разработки
Данный модуль предназначен для автоматизации контроля знаний с помощью
предоставления студенту различных моделей тестов.
Автоматизация контроля знаний позволит более эффективно осуществлять
преподавательскую деятельность.
Программа ориентирована на пользователей с любым уровнем компьютерной
подготовки.
2.3 Особые требования
Интеграция с программным учебно-методическим комплексом «УМКА». Добавить
необходимые таблицы в существующие, при этом максимально использовать
существующие поля таблиц БД.
2.4 Функциональные требования
Программа должна обеспечивать следующие функциональные возможности.
. Хранение данных о пользователе:
· Для конкретного студента в БД хранятся записи (фамилия, имя,
отчество, номер зачетной книжки, факультет, группа).
. Предоставление доступа по сети Интернет.
. Доступ в личный кабинет, при корректном вводе логина и пароля;
· использование нескольких ролей пользователей;
· для студента, логином является его фамилия, паролем - номер
зачетной книжки.
4. Использование единой базы данных списков групп и студентов:
· наличие возможности доступа к базе данных по сети;
· доступ к базе данных осуществляется в зависимости от ролей
пользователей, представленных в системе.
5. Доступ к линейному виду тестирования:
· доступ студента к тестовому заданию из личного кабинета;
· предоставление студенту линейной модели тестирования для
контроля знаний;
· случайный вывод вопросов из определенного количества, которые
содержатся в базе данных;
· вывод следующего вопроса только после ответа на предыдущий;
· невозможность возврата к предыдущему вопросу или переход к
следующему и, следовательно, невозможность смены варианта ответа в предыдущих
вопросах;
· вывод результата тестирования после ответа на последний
вопрос.
. Доступ к управляемому виду тестирования:
· доступ студента к тестовому заданию из личного кабинета;
· предоставление студенту управляемой модели тестирования для
контроля знаний;
· случайный вывод вопросов из определенного количества, которые
содержатся в базе данных;
· ручное перемещение с помощью кнопок навигации по вопросам
теста;
· вывод следующего вопроса возможен и после ответа на
предыдущий, и после перемещения по вопросам теста;
· возможность возврата к предыдущему вопросу и смены варианта
ответа;
· вывод результата тестирования после ответа на последний
вопрос.
. Доступ к адаптивному виду тестирования:
· доступ студента к тестовому заданию из личного кабинета;
· предоставление студенту адаптивной модели тестирования для
контроля знаний;
· вывод вопросов в соответствии с алгоритмом адаптивного
тестирования, разработанным в данном дипломном проекте из определенного
количества, которые содержатся в базе данных;
· вывод следующего вопроса только после ответа на предыдущий;
· невозможность возврата к предыдущему вопросу или переход к
следующему и, следовательно, невозможность смены варианта ответа в предыдущих
вопросах;
· вывод результата тестирования после ответа на последний
вопрос.
. Программная система должна быть реализована в виде сайта.
· сайт разделен на две основные части: меню (слева)
представлено в виде дерева, имеет иерархическую структуру, блок с тестом
размещается правее меню в оставшейся части экрана, также присутствуют подвал и
шапка сайта;
· интерфейс является динамической структурой (меню изменяется в
зависимости от выбранных пунктов, контент - в зависимости от пользователя, и от
того, что выбрано в меню);
· структура учебных планов одинакова, не зависит от дисциплины,
отличается данными, которые есть в БД по конкретной дисциплине;
· использование мягких цветов в интерфейсе модуля;
· отсутствие лишней информации.
Со временем образовательные стандарты изменяются, изменяется содержание и
количество контрольных точек, а также требования к отчетной документации, могут
измениться, поэтому модуль должен быть построен на принципах расширяемости и открытости,
что позволит вносить в него необходимые изменения, не теряя при этом
результатов проделанной работы.
2.5 Требования к надежности
В программной системе необходимо предусмотреть защиту данных от
случайного удаления и изменения. Только преподаватели, наделены
соответствующими правами, которые зарегистрированы на сервере базы данных. В
целях надежности программного обеспечения она должна удовлетворять следующим
требованиям:
· разработанная программа должна обладать средствами защиты от
ошибочных действий пользователей;
· все ошибки должны отображаться с комментариями или
подсказками по их устранению;
· исключить возможность доступа к файлам конфигурации
пользователям.
Для повышения надежности необходимо принять следующие меры:
· сконфигурировать аппаратные и программные средства в
соответствии с техническими требованиями;
· периодически осуществлять резервное копирование информации;
· регулярно проверять целостность базы данных;
· поддерживать исправность сетевого оборудования.
2.6 Условия эксплуатации
Объектом разработки является программный продукт, поэтому все требования
к эксплуатации обуславливаются требованиями к функционированию и использованию
аппаратных средств, на которых предполагается работа web-сайта. Для нормальной работы компьютерного
оборудования необходимо соблюдение следующих условий эксплуатации:
1) должна быть обеспечена защита от электромагнитных и ионизирующих
излучений;
) эксплуатационные режимы работы не должны превышать значений,
указанных в технической характеристике оборудования;
) для нормального функционирования компьютерного комплекса прочие
условия должны соответствовать санитарным нормам и правилам эксплуатации
компьютеров.
2.7 Требования к составу и параметрам технических средств
.7.1 Требования к серверной части
Для обеспечения работы программного обеспечения web-сайта требуется следующая минимальная конфигурация:
· система на основе процессора Intel или AMD с
частотой 2 GHz и выше;
· не менее 2 Гb
оперативной памяти;
· жесткий диск, содержащих не менее 1 Гб свободного
пространства;
· сетевой адаптер;
· клавиатура и мышь;
2.7.2 Требования к клиентской части
Минимальная конфигурация персонального компьютера пользователя для
просмотра web-сайта в Интернете такова:
· система на основе процессора Intel или AMD с
тактовой частотой 1 GHz или выше;
· 1 ГБ оперативной памяти;
· свободное пространство на жестком диске не менее 100 МБ;
· сетевой адаптер;
· монитор;
· клавиатура и мышь.
Также в обоих случаях необходимо наличие исправно функционирующей сети
Интернет.
2.8 Требования к информационной и программной совместимости
Программное обеспечение web-сайта
предназначено для работы на платформе LAMP (Linux-Apache-PHP-MySQL). Минимальные версии данных
программных продуктов: Linux,
версия ядра не ниже 2.0 или FreeBSD
версии не ниже 6.0; Apache версия 2.0
или выше; PHP версии 5.2 или выше; MySQLServer версии 4.0 или выше. Загружаемые
страницы web-сайта должны правильно отображаться
в web-браузерах: InternetExplorer, MozillaFirefox, Opera.
2.9 Требования к программному обеспечению
Загружаемые страницы web-сайта
должны правильно отображаться в web-браузерах:
Internet Explorer 9.0, Google Chrome 26.
2.10 Требования к программной документации
В комплект программной документации должны входить следующие документы:
· руководство администратора;
· руководство пользователя.
.11 Этапы разработки
В соответствии с международным стандартом ISO/IEC 12207, регламентирующим
жизненный цикл программного обеспечения, при разработке Web-сайта были выделены следующие этапы.
· Проектирование. При проектировании web-сайта был использован структурный подход,
предполагающий разбиение кода программы на модули, таким образом, наиболее
походящий для проектирования сайтов.
· Выбор языка, средств разработки и СУБД. Основными критериями
данного выбора являлись следующие качества языка и среды: выразительность,
эффективность кода, эффективность разработки, удобство организации
взаимодействия компонент. При выборе базы данных решающую роль играли простота
настройки.
· Организация данных программы. Рассматриваются уровни
представления данных, проектируется база данных на сервере MySQL.
· Разработка и тестирование программной системы. На данном
этапе осуществляется кодирование модулей программы, затем проверяется
работоспособность и исправляются ошибки.
2.12 Порядок контроля и приемки
Приемка работ производится заказчиком, с подписанием акта сдачи-приемки
результатов работ, после предоставления разработчиком всех результатов работ -
инструкции пользователя и исходной программы, в условиях, указанных в настоящем
техническом задании. После чего, разработчик должен осуществить настройку
программы, а Заказчик должен провести испытания. Испытания представляют собой
процесс проверки выполнения функций web-сайта, выявления и устранения недостатков в программном обеспечении и
документации.
Контроль и приемка проходит в два этапа:
· заказчик просматривает готовый Web-сайт с помощью разных браузеров;
· просмотр на различных мониторах с различной разрешающей
способностью.
3.
ИССЛЕДОВАТЕЛЬСКАЯ ЧАСТЬ
3.1 Обзор видов тестирования
.1.1 Традиционные тесты
Традиционный тест обладает составом, целостностью и структурой. Он
состоит из заданий, правил их применения, оценок за выполнение каждого задания
и рекомендаций по интерпретации тестовых результатов.
Результат традиционного теста зависит от количества вопросов, на которые
был дан правильный ответ.
3.1.2 Нетрадиционные тесты
Самые популярные из нетрадиционных тестов - интегративные, адаптивные, и
критериально - ориентированные тесты.
· Интегративный тест - это тест, который состоит из системы
заданий, нацеленных на обобщенную итоговую диагностику подготовленности
выпускника образовательного учреждения. Диагностика проводится посредством
предъявления таких заданий, правильные ответы на которые требуют
интегрированных знаний двух учебных дисциплин.
· Адаптивный тест - это тест, который представляет собой
вариант автоматизированной системы тестирования, в которой заранее известны
параметры трудности и дифференцирующей способности каждого задания. Эта система
создана в виде компьютерного банка заданий, упорядоченных в соответствии с
интересующими характеристиками заданий. Самая главная характеристика заданий
адаптивного теста - это уровень их трудности, полученный опытным путем, что
означает: прежде чем попасть в банк, каждое задание проходит проверку на
достаточно большом числе типичных учащихся интересующего контингента.
· Критериально - ориентированный тест позволяет оценивать, в
какой степени испытуемые овладели необходимым учебным материалом. Тесты
измеряют степень усвоения учебного материала, овладения необходимыми знаниями,
умениями и навыками. В результате измерения результат выражается в тестовом
балле, представляющем собой определенное число. Тестовые баллы располагаются на
специальных шкалах, выбранных разработчиками. Тесты применяются для того, чтобы
интерпретировать результат тестирования в соответствии с уровнем обученности
испытуемых на хорошо определенной области содержания.
3.1.3 Виды тестовых заданий
В наиболее популярной классификации тестовых заданий их делят на две
группы:
· тестовые задания закрытого типа (каждый вопрос сопровождается
готовыми вариантами ответов, из которых необходимо выбрать один или несколько
правильных);
· тестовые задания открытого типа (на каждый вопрос испытуемый
должен предложить свой ответ: дописать слово, словосочетание, предложение,
знак, формулу и т.д.).
Выбор типа и вида тестового задания определяется, прежде всего, целями, в
соответствии с которыми проводится тестирование, характером материала, усвоение
которого необходимо выявить, возрастными особенностями испытуемых.
Типы
тестов отображены на рис. 3.1, их краткое описание:
· Множественный выбор - испытуемому необходимо выбрать один или
несколько правильных ответов из приведенного списка.
· Альтернативный выбор - испытуемый должен ответить «да» или
«нет».
· Установление соответствия - испытуемому предлагается
установить соответствие элементов двух списков.
· Установление последовательности - испытуемый должен
расположить элементы списка в определенной последовательности.
· Свободное изложение - испытуемый должен самостоятельно
сформулировать ответ; никакие ограничения на них в задании не накладываются.
· Дополнение - испытуемый должен сформулировать ответы с учетом
предусмотренных в задании ограничений (например, дополнить предложение).
Рис.
3.1. Типы заданий для тестирования
.2 Особенности линейного теста
Линейное тестирование представляет собой модель теста, при которой
экзаменуемому предлагается определенное количество вопросов из базы вопросов по
конкретной тематике.
Вопросы появляются в произвольном порядке, экзаменуемый переходит к
следующему вопросу только в том случае, когда ответит на предыдущий. В такой
модели теста отсутствует возможность пропускать вопросы и возвращаться к
предыдущим, менять варианты ответов.
На тестирование отводится определённое количество времени, по окончанию
которого на экране появляется результат, который рассчитывается из процентного
соотношения правильных ответов к общему числу вопросов.
3.3 Особенности управляемого теста
Управляемое тестирование представляет собой модель теста, при которой
экзаменуемому предлагается определенное количество вопросов из базы вопросов по
конкретной тематике.
Вопросы появляются в произвольном порядке.
В такой модели теста присутствует возможность пропускать вопросы и
возвращаться к предыдущим, менять варианты ответов.
На тестирование отводится определённое количество времени, по окончанию
которого на экране появляется результат, который рассчитывается из процентного
соотношения правильных ответов к общему числу вопросов.
3.4 Особенности адаптивного теста
Адаптивным тестированием называется такая диалоговая тестовая программа,
которая изменяет порядок предъявления тестовых заданий в зависимости от
результатов выполнения студентом уже предъявленных заданий.
Когда опытный экзаменатор проводит устный экзамен, он фактически всегда
применяет некий упрощенный интуитивный вариант адаптивного тестирования. После
первых удачных ответов экзаменатор старается задать вопрос сложнее, и если
студент справляется и с этим сложным вопросом, то экзаменатор, вполне
справедливо экономя свое собственное время, ставит ему оценку 5.
После первых же ошибочных ответов экзаменатор, наоборот, снижает планку -
задает самый простой вопрос, и если студент не справляется и с этим простейшим
вопросом, то экзаменатор ставит ему оценку 2.
Таким образом, для выявления крайних случаев требуется гораздо меньше
тестовых заданий при обеспечении практически того же уровня надежности. Дольше
времени надо потратить и большее количество вопросов задать в случае со
студентом среднего уровня знаний, которые с одними заданиями справляются, а с
другими нет, так как освоили учебную программу не полностью.
Смысл адаптивности в алгоритме тестирования в том, что тест настраивается
на доступный студенту уровень сложности и тем самым быстрее локализует его
истинный тестовый балл на шкале измеряемого свойства.
3.4.1 Трехуровневый алгоритм
Если эти задания различаются по сложности хотя бы на 3 уровня, то
возникает возможность для применения следующего упрощенного (и потому понятного
начинающим) адаптивного алгоритма.
После 1/3 самых простых заданий программа сразу же подсчитывает процент
правильных ответов. Если решены все из них, то программа сразу переводит
студента на самый высокий уровень трудности. Если решены от 20% до 40% заданий,
то программа переводит на средний уровень трудности. В противном случае студент
остается на первом уровне трудности.
Если же на высшем уровне трудности студент допустил более одной ошибки,
то тестирование продолжается уже на среднем уровне трудности.
Те студенты, которые долго остаются на среднем уровне, выполняют тест
значительно дольше - пока колебания их текущего балла (процента правильных
ответов) не стабилизируются в рамках пренебрежимо малого интервала, равного
ошибке измерения. Алгоритм позволяет при предъявлении в среднем 15 заданий
добиваться такой же точности и надежности, как и тест со сплошным предъявлением
45 заданий, не учитывающий уровень трудности заданий.
Введение трех уровней трудности и оптимального алгоритма перехода с
уровня на уровень позволяет втрое сократить расходы на продолжительность
тестирования.
Впрочем, выигрыш от адаптивности состоит не только в экономии времени, но
и в информационной безопасности. Чем меньше заданий предъявляется одному
студенту из банка заданий, тем менее становится прозрачным, обозримым для
испытуемых весь банк заданий.
Постепенное расширение банка заданий и создание тестов для студентов
будет создавать у них привычку к выполнению таких процедур контроля знаний.
3.4.2 Алгоритм сходящихся порогов
Если тестовые задания не классифицированы по уровню сложности, то при
применении компьютеров возможность для использования адаптивного тестирования в
принципе сохраняется.
В частности, может быть использован простейший алгоритм сходящихся
порогов.
После предъявления какого-то начального набора заданий (минимально
тематически представительного для данной учебной дисциплины) компьютерная
программа начинает постоянно сравнивать (после каждого нового задания) текущий
процент правильных ответов, показанный студентом, с двумя порогами - высоким
порогом зачета и низким порога незачета.
Студенты, которые хорошо овладели учебным материалом и достигли за
минимальное число тестовых заданий верхнего порога (например, в 90 процентах
правильных ответов), быстро получают зачет и освобождаются от дальнейшего
тестирования. Так же быстро освобождаются те студенты, которые заведомо не
выучили материал, и их ответы мало чем отличаются от случайного гадания
(поначалу порог незачета может быть низким - в 40-50 процентов). Остальные
студенты, попавшие в область неопределенности между двумя порогами, продолжают
выполнение теста.
С каждым новым заданием два порога сближаются. Так что при исчерпании
всех заданий, предназначенных для одного студента (это не менее 40 за сеанс),
студент попадает в группу успешных, либо в группы неуспешных. Такая простейшая
схема адаптивного тестирования обеспечивает серьезную экономию времени при
проведении простейшей недифференцированной оценки уровня знаний
(зачет/незачет).
3.5 Разработка и реализация собственного алгоритма
В данном дипломном проекте необходима реализация линейного, управляемого,
адаптивно тестирования. Линейная и управляемая модель тестирования - наиболее
простые, и для их реализации не требуется сложного алгоритма. Реализация
адаптивного тестирования требует более сложного подхода в разработке. Для этого
была выбрана трехуровневая модель адаптивного тестирования, так как она
позволяет:
• подстроиться под индивидуальные возможности студента путем исключения
из теста слишком легких и слишком сложных для него заданий и вопросов;
• повысить точность оценки уровня знаний сильных и слабых студентов
благодаря использованию заданий различного уровня сложности;
• сократить длительность процесса диагностирования и количество
предъявленных вопросов, необходимых для достижения достаточной точности оценки
уровня знаний студента;
• обеспечить информационную безопасность набора тестовых заданий путем
предъявления каждому студенту индивидуального набора заданий, соответствующих
его уровню знаний.
4.
КОНСТРУКТОРСКАЯ ЧАСТЬ
.1 Архитектура разрабатываемой системы
Программная
система построена на основе архитектуры клиент-сервер (рис. 3.1). Как правило,
компьютеры и программы, входящие в состав информационной системы, не являются
равноправными. Некоторые из них владеют ресурсами (файловая система, процессор,
принтер, база данных и т.д.), другие имеют возможность обращаться к этим
ресурсам. Компьютер (или программу), управляющий ресурсом, называют сервером
этого ресурса (файл-сервер, сервер базы данных, вычислительный сервер). Клиент
и сервер какого-либо ресурса могут находиться как в рамках одной вычислительной
системы, так и на различных компьютерах, связанных сетью [11].
Доступ
к модулю студента осуществляется с помощью браузера.
Клиентская
часть системы обращается по сети к серверной части. Клиентские задачи выполняет
браузер, а серверные - web-сервер.
Запросы
пользователя интерпретируются PHP сценариями и направляются базе данных. По
полученным результатам web-сервер формирует ответ и направляет его в браузер
клиента. На рис. 3.2 показана укрупненная модель взаимодействия модулей
программной системы.
Рис.
3.4. Архитектура клиент-сервер
Рис.
3.4.2. Архитектура программной системы
Модуль студента состоит из нескольких подмодулей и необходим для
полноценной работы студента в системе.
4.2 Выбор средств разработки
.2.1 Выбор языка программирования
PHP - скриптовый язык программирования общего назначения,
интенсивно применяющийся для разработки веб-приложений. В настоящее время
поддерживается подавляющим большинством хостинг-провайдеров и является одним из
лидеров среди языков программирования, применяющихся для создания динамических
веб-сайтов. Язык и его интерпретатор разрабатываются группой энтузиастов в
рамках проекта с открытым кодом. Проект не является свободным и
распространяется под собственной лицензией.
В области программирования для Сети PHP - один из популярнейших скриптовых языков (наряду с JSP, PERL и языками, используемыми в ASP.NET)
благодаря своей простоте, скорости выполнения, богатой функциональности,
кроссплатформенности и распространению исходных кодов на основе лицензии PHP.
Популярность в области построения веб-сайтов определяется наличием
большого набора встроенных средств для разработки веб-приложений. Основные из
них:
· автоматическое извлечение POST и GET-параметров,
а так же переменных окружения веб-сервера в преопределенные массивы;
· файловые функции успешно обрабатывают как локальные, так и
удаленные файлы;
· автоматическая отправка HTTP-заголовков;
· работа с cookies
и сессиями;
· обработка файлов, загружаемых на сервер;
· работа с HTTP
заголовками и HTTP авторизацией;
· работа с XForms;
· работа с удаленными файлами и сокетами.
В настоящее время PHP
используется сотнями тысяч разработчиков. К крупнейшим сайтам, использующим PHP, относятся Facebook, ВКонтакте, Wikipedia.
ASP.NET
- технология создания веб-приложений и веб-сервисов от компании Майкрософт. Она
является составной частью платформы Microsoft.NET и развитием
более старой технологии Microsoft ASP.
ASP.NET внешне во многом сохраняет схожесть
с более старой технологией ASP,
что позволяет разработчикам относительно легко перейти на ASP.NET. В то же время внутреннее устройство ASP.NET существенно отличается от ASP, поскольку она основана на платформе .NET и, следовательно, использует все
новые возможности, предоставляемые этой платформой.
Достоинствами являются:
· поддержка со стороны компании разработчика, что обеспечивает
своевременные обновления и документацию;
· широкий спектр технологий программирования;
· высокая скорость работы.
К недостаткам следует отнести:
· необходимость Windows-сервера,
что значительно увеличивает стоимость системы и хостинга;
· привязка к технологиям Microsoft.
После сравнения характеристик, достоинств и недостатков был выбран язык PHP, из-за следующих преимуществ:
· наличие понятной и доступной документации;
· простота в установке и настройке;
· поддержка БД - MySQL;
· поддержка популярными веб-серверами Apache и nginx;
· свобода в выборе хостинга, т.е. подавляющие большинство
хостингов используют платформу FreeBSD+Apache+PHP+MySQL
[12].
4.2.2 Выбор СУБД
Система управления базами данных (СУБД) - это комплекс языковых и
программных средств, предназначенный для создания, ведения и совместного
использования базы данных многими пользователями. Обычно СУБД различают по
используемой модели данных. Так, СУБД, основанные на использовании реляционной
модели данных, называют реляционными СУБД.
Наиболее популярными СУБД для веб-разработки являются:
· Microsoft SQL Server 2012;
· MySQL 5.6.10;
· PostgreSQL 9.2.4
Рассмотрим их подробнее.
Microsoft SQL Server - система управления реляционными базами данных,
разработанная корпорацией Microsoft. Основной используемый язык запросов -
Transact-SQL. Transact-SQL является реализацией стандарта ANSI/ISO по
структурированному языку запросов (SQL) с расширениями. Используется от
небольших и средних по размеру баз данных до крупных баз данных масштаба
предприятия, конкурирует с другими СУБД в этом сегменте рынка [7].Server
поддерживает избыточное дублирование данных по трем сценариям:
· Снимок: Производится «снимок» базы данных, который сервер
отправляет получателям.
· История изменений: Все изменения базы данных непрерывно
передаются пользователям.
· Синхронизация с другими серверами: Базы данных нескольких
серверов синхронизируются между собой. Изменения всех баз данных происходят
независимо друг от друга на каждом сервере, а при синхронизации происходит
сверка данных. Данный тип дублирования предусматривает возможность разрешения
противоречий между БД.
В SQL Server 2012 и выше встроена поддержка .NET Framework. Благодаря
этому, хранимые процедуры БД могут быть написаны на любом языке платформы .NET,
используя полный набор библиотек, доступных для .NET Framework, включая
CommonTypeSystem.
Ограничения:
· 1 поддерживаемый процессор (но может быть установлен на любой
сервер);
· 1 Гб адресуемой памяти;
· 4 Гб максимальный размер базы;
· Через интерфейс нет возможности экспорта/импорта данных.-
свободная система управления базами данных. MySQL является собственностью
компании SunMicrosystems, осуществляющей разработку и поддержку приложения.
Распространяется под GNU GeneralPublicLicense и под собственной коммерческой
лицензией, на выбор. Помимо этого разработчики создают функциональность по
заказу лицензионных пользователей, именно благодаря такому заказу почти в самых
ранних версиях появился механизм репликации [8].
Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов
таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие
полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне
отдельных записей. Более того, СУБД MySQL поставляется со специальным типом
таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц. Благодаря
открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются
новые типы таблиц [6].имеет двойное лицензирование. MySQL может
распространяться в соответствии с условиями лицензии GPL. Однако по условиям
GPL, если какая-либо программа включает исходные коды MySQL, то она тоже должна
распространяться по лицензии GPL. Это может расходиться с планами
разработчиков, не желающих открывать исходные тексты своих программ. Для таких
случаев предусмотрена коммерческая лицензия, которая также обеспечивает
качественную сервисную поддержку.
Важно отметить, что на официальном сайте СУБД для свободной загрузки
предоставляются не только исходные коды, но и откомпилированные и
оптимизированные под конкретные операционные системы готовые исполняемые модули
СУБД MySQL [7]. MySQL имеет API для языков Delphi, C, C++, Эйфель, Java, Лисп,
Perl, PHP, Python, Ruby, Smalltalk и Tcl, библиотеки для языков платформы .NET,
а также обеспечивает поддержку для ODBC посредством ODBC-драйвера MyODBC.-
свободная объектно-реляционная система управления базами данных. Существует в
реализациях для следующих платформ: Linux, Solaris/OpenSolaris, Win32, Mac OS
X, FreeBSD, QNX 4.25, QNX 6. Разрабатывается А.Стоунбрейкером и его студентами
с 1986 по сей день.
Сильными сторонами PostgreSQL считаются:
· поддержка БД практически неограниченного размера;
· мощные и надёжные механизмы транзакций и репликации;
· наследование;
· легкая расширяемость [10].
Проанализировав представленные системы управления базами данных, в
качестве СУБД для сервиса была выбрана MySQL, так как является бесплатным
популярным средством в сети Интернет. И большинство хостингов используют данную
СУБД.
4.2.3 Прочие средства разработки
Для упрощения процесса разработки было решено использовать PHP-фреймворк.
Среди наиболее популярных на сегодняшний день PHP-фреймворков по данным «PHP{inside}» можно выделить следующие:
· Agavi (#"724187.files/image004.gif">
Рис 3.5. Модель базы данных.
4.5 Алгоритм работы модуля
На рисунке 3.6. в виде блок - схемы представлен алгоритм работы модуля
студента.
Рис. 3.6. Алгоритм работы модуля
Описание алгоритма:
. Студент заходит в личный кабинет при помощи персонального логина
и пароля.
. Студент просматривает работы, предусмотренные учебным планом.
. Выбирает работу из списка доступных.
. Приступает к выполнению.
. Просматривает свой текущий рейтинг, а также время выполнения
работы и количество попыток.
На странице авторизации студент вводит свою фамилию и номер зачетной
книжки (рис.3.7).
Выполняется запрос к базе данных на наличие такой записи и роли
пользователя в системе. После успешной идентификации загружается страница
student.php, в которую из БД динамически загружаются данные для конкретного
студента. Он попадает в личный кабинет.
Рис.
3.7. Страница авторизации
На
странице всыполняется скрипт, который по фидентификационным данным студента
определяет группу и соответственно список учебных планов для данной группы.
Далее выполняется другой скрипт, который получает идентификатор учебного плана,
и выводит из БД по этой информации дисциплины, которые есть у студента, и
сответственно список учебных и тестирующих заданий. После прототипирования
предполагается разработка самого интерфейса системы (рис.3.8).
Рис.
3.8. Главная страница модуля
5.
ЭКСПЕРИМЕНТАЛЬНАЯ ЧАСТЬ
.1 Общие сведения о тестировании
Тестирование обеспечивает выявление (констатацию наличия) фактов
расхождений с требованиями (ошибок).
Как правило, на фазе тестирования осуществляется и исправление
идентифицированных ошибок, включающее локализацию ошибок, нахождение причин
ошибок и соответствующую корректировку программы тестируемого приложения. [17]
Основная проблема тестирования - определение достаточности множества
тестов для истинности вывода о правильности реализации программы, а также
нахождения множества тестов, обладающего этим свойством.
Модульное тестирование - это тестирование программы на уровне отдельно
взятых модулей, функций или классов. Цель модульного тестирования состоит в
выявлении локализованных в модуле ошибок в реализации алгоритмов, а также в
определении степени готовности системы к переходу на следующий уровень
разработки и тестирования. Модульное тестирование проводится по принципу
«белого ящика», то есть основывается на знании внутренней структуры программы,
и часто включает те или иные методы анализа покрытия кода.
Модульное тестирование обычно подразумевает создание вокруг каждого
модуля определенной среды, включающей заглушки для всех интерфейсов тестируемого
модуля. Некоторые из них могут использоваться для подачи входных значений,
другие для анализа результатов, присутствие третьих может быть продиктовано
требованиями, накладываемыми компилятором и сборщиком.
5.2 Тестирование в нормальных условиях
Тестирование программного модуля в нормальных условиях будет проводиться
с целью определения его соответствия требованиям технического задания и
подтверждения корректности работы программы в характерных ситуациях. Проверка
на соответствие техническому заданию проводится с целью определения
функциональной полноты разрабатываемого комплекса и соответствия требованиям
качества результатов работы системы. Основными направлениями экспериментальных
испытаний будут исследования работы системы с входными данными, корректная
работа базы данных, системы защиты от ботов.
Для проверки надежности и функциональности модуля будут проведены
различные эксперименты.
Так в рамках тестирования в нормальных условиях проверке подвергнутся
функции формирования личного кабинета студента. При этом база данных будет
заранее подготовлена с помощью подсистемы управления для преподавателя.
Предполагается проверка возможности выполнения студентом сформированных
работ, а также вывод результатов. Для данного теста целесообразно привлечь
группу студентов. В результате тестирования будет проверено подключение к базе
данных, вывод результатов оценивания.
Данная проверка работы в нормальных условиях позволит установить
детальное соответствие функций системы заявленным требованиям технического
задания.
Эксперимент позволит провести широкий анализ модулей комплекса.
Результаты тестирования должны определить надежность и корректность системы.
Предполагается проверить требования, представленные в разделе
«Функциональные требования».
· Разделение прав.
Необходимо войти под разными логинами (преподаватель или студент) и
проверить отображаемые данные.
· Вывод количества попыток, использованных студентом, и общего
количества попыток на прохождение данного теста
Для проверки данного требования необходимо попытаться пройти тест,
используя несколько попыток, т.е. завалить первую попытку. Если в специальном
поле на каждой попытке будет корректно выведен номер попытки, следовательно,
данная функция работает корректно.
· Необходимо выводить информацию о работах студентов.
Чтобы проверить данное требование, необходимо зайти в систему под
несколькими студентами, пройти несколько тестов каждым, затем посетить личный
кабинет студента, если информация будет соответствовать действительности, то
данная функция работает исправно.
· Необходимо выводить информацию о доступности работ для
студентов.
Чтобы проверить данное требование, необходимо создать некоторое
количество работ, назначить даты выполнения и условия доступности, затем
посетить личный кабинет студента, если информация будет соответствовать
действительности, то данная функция работает исправно.
· Просмотр успеваемости студента.
Для проверки работоспособности функции нужно зайти в личный кабинет
студента, если текущее значение успеваемости получено из модуля успеваемости,
то данная функция работает корректно.
5.3 Тестирование в экстремальных условиях
Проверка в экстремальных условиях будет предполагать оценку
работоспособности программы для граничных ситуаций.
В качестве экстремальной ситуацией целесообразно рассмотреть случаи
одновременного подключения нескольких клиентов с одной и той же учетной
записью, а также выполнить одновременное подключение 10-50 клиентов, что
соответствует одновременной работе двух учебных аудиторий.
Заключительный этап тестирования модуля будет заключатся в нарушении
интернет - соединения системы. Предполагается, что после восстановления
соединения работа комплекса восстанавливается, причем не происходит потери
данных ни на сервере, ни на клиентском месте. Обрыв соединения может приводить
к восстановлению предыдущего состояния СУБД, не нанося ущерб ранее хранимой
информации. Однако все изменения могут быть утерянными.
Будет проводится проверка аналогичной ситуации в случае сбоя питания.
Сервер СУБД должен брать на себя всю работу по восстановлению БД и откатке
незавершенных транзакций. Сбой может привести к потере последних изменений.
5.4 Тестирование исключительных ситуаций
Испытание работоспособности программного комплекса в исключительных
ситуациях основывается на вынужденном нарушении работоспособности системы.
Предполагается проводить эксперименты с использованием некорректных
данных в программе, например, текстовые значения в числовых значений.
Проблема нарушения работоспособности системы вследствие некорректных
действий пользователя должна пресекаться системой безопасности. В качестве
проводимых экспериментов, будут проверятся ситуации, заключающихся в
хаотическом и зло-направленном сочетании действий оператора, которые могут
вызвать крах системы.
Так же целесообразно выполнить проверку ввода несуществующего URL-адреса
в домене программного средства.
5.5 Оценка полноты проверки программной системы
Целью проводимого тестирования является исследование работоспособности
модулей и программного комплекса в целом. Вследствие того, что нет возможности
проверить все логические пути и опробовать все возможные сочетания исходных
данных, данное тестирование не претендует на абсолютную полноту и надежность
сделанных выводов.
ЗАКЛЮЧЕНИЕ
В рамках проекта разработано программное обеспечение для автоматизации
процесса доступа студента к учебным и тестирующим материалам, которое выполняет
требования, изложенные в техническом задании. К достоинствам разработанного
программного обеспечения можно отнести возможность использования её в режиме
клиент-сервер, что позволяет обеспечить доступ к единой БД из любой аудитории
кафедры.
Учебно-методический комплекс УМКА имеет возможность хранения учебного
плана для каждой учебной группы любой дисциплины. Применение данной программы в
учебном процессе позволит предоставлять студенту доступ к этой информации, при
этом информация об учебном плане и сроках сдачи может дополняться информацией о
текущей успеваемости студента.
Для повышения мотивации обучения у студентов, целесообразно в рамках
учебно-методического комплекса вести бально-рейтинговую систему успеваемости,
такой подход позволит обеспечить конкурентную борьбу между студентами и будет
подстегивать к своевременной сдачи всех запланированных работ. Данная система
на основе известного учебного плана позволит формировать максимальный рейтинг
на каждый день и рассчитывать текущий рейтинг студента. При этом
предполагается, что для самых сильных студентов дополнительно будет выводится
информация о ближайших конкурентах, а для слабых студентов будет дополнительно
выводится информация о сроках завершения сдачи различных работ, предусмотренных
учебным планом. Таким образом электронная система рейтинговой оценки
успеваемости студентов с одной стороны позволит студентам оперативно получать
информацию о текущей успеваемости с другой стороны позволит подстегнуть
студентов к своевременной сдаче всех работ. Разработанное программное
обеспечение представляет собой экспериментальный продукт и может дополняться
различными функциями.
СПИСОК
ЛИТЕРАТУРЫ
1. Бенкен,
Е.С. PHP, MySQL, XML:
Программирование для интернета .[2-е изд., перераб. и доп.]. - СПб.:
БХВ-Петербург, 2008. - 352с.
. Вендров,
А.М. CASE - технологии. Современные методы и
средства проектирования информационных систем. -М.: Финансы и статистика,
2008.-256с.
. Григин,
И.Е. PHP 5.1. Руководство программиста. -
М.:ПИТЕР, 2008. - 489с.
. Дронов,
В.А. JavaScript в Web-дизайне: практ. пособие. - СПб.: БХВ-Петербург, 2009.
- 879с.
. Дуванов,
А.А. Web-конструирование. HTML/А.А. Дуванов -СПб: БХВ-Петербург,
2009.-503с.
. Дунаев,
В.В. Основы web дизайна. Самоучитель/В.В. Дунаев
-СПб: БХВ-Петербург, 2008.-504с.
. Карпова,
Т.С. Базы данных: модели, разработка, реализация. -СПб: Питер, 2008.-458с.
. Кириленко,
А. Самоучитель HTML/А. Кириленко
-М.: Питер, 2008.-271с.
. Колисниченко,
Д.Н. PHP 5 в теории и на практике:
самоучитель. - СПб: Наука и техника, 2008. - 640с.
. Комолова,
Н.В. HTML: Учеб. курс/Н.В. Комолова -М.:
Питер, 2008.-267с.
. Котеров,
Д.В. PHP 5. [2-е изд.] / Д.В.Котеров,
А.Ф.Костарев - СПб.: БХВ-Петербург, 2008. - 1104с.
. Левин,
М.П. 2 в 1: Самоучитель разработки webсайтов: HTML, CSS, графика, анимация, раскрутка/М.П. Левин, Ю.М.
Алексеев -М.: Триумф, 2008.-397с.
. Леонтьев,
В.П. Новейшая энциклопедия персонального компьютера. -М.: ОЛМА - ПРЕСС,
2008.-650с.
. Мазуркевич,
А.М. PHP: настольная книга программиста [2-е
изд., испр] / А.М.Мазуркевич, Д.С.ЕЛОВОЙ - М.: Новое знание, 2008. - 494с.
. Макфарланд,
Д.С. Большая книга CSS/Д.С.
Макфарланд -М.: Питер, 2009.-512с.
. Мельников,
П.П. Технология разработки HTML-документов:
Учеб. пособие для вузов/П.П. Мельников -М.: Финансы и статистика, 2008.-110с.
. Назаров,
С.В. Компьютерные технологии обработки информации. -М.: Финансы и статистика,
2008.-248с.
. Прохоренок,
Н.А. HTML, JavScript, PHP И MySQL:
Джентельменский набор Web-мастера.
- СПб.: БХВ-Петербург, 2008. - 616с.
. Савельева,
Н.В. Основы программирования на PHP:
курс лекций: учеб. пособие. - М.: Интернет-ун-т информ. технологий, 2008. -
260с.
. Смирнова,
И.Е. Начала web-дизайна/И.Е. Смирнова -СПб:
БХВ-Петербург, 2008.-244с.
. Соколов,
С.А. HTML и CSS в примерах, типовых решениях и задачах.
Профессиональная работа/С.А. Соколов -М.: Вильямс, 2008.-403с.