Адаптивная система тестирования

 

Содержание


Введение

1. Формирование требований к программному средству

1.1 Выявление требований. Документ "Видение"

1.2 Построение диаграммы вариантов использования

1.2.1 Выявление актеров

1.2.2 Выявление вариантов использования

2. Анализ предметной области

2.1 Описание входной и выходной информации

2.2 Построение диаграммы потоков данных

3. Проектирование программного средства

3.1 Проектирование архитектуры ПС

3.2 Концептуальное и логическое проектирование структуры информационного обеспечения

3.3 Проектирование интерфейса

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

4.1 Выбор средств реализации

4.2 Реализация информационного обеспечения

4.2.1 Создание БД

4.2.2 Создание таблиц и полей. Заполнение БД

4.2.3 Создание связей. Построение диаграммы БД

4.3 Реализация пользовательского интерфейса

4.4 Реализация функциональности программного средства

4.5 Организация взаимодействия приложения с БД

4.6 Руководство пользователя

5. Тестирование программного средства

Заключение

Приложения

Введение


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

И это требует нового, современного подхода в создании интеллектуальных систем дистанционного обучения. Если раньше такие системы могли представлять собой набор гипертекстовых, электронных материалов и тестов, то теперь становится крайне необходимо систематизировать и наполнить системы интеллектуальной «начинкой». Основные требования к таким системам известны: интеллектуальность, открытость, гибкость и адаптивность при организации процесса обучения.

Для этого в последнее время все большее применение на разных этапах обучения получили различного рода тестовые опросы. Однако, традиционное тестирование, осуществляемое с помощью стандартизированных тестов, постепенно утрачивает свою актуальность. Оно перерастает в современные, более эффективные формы адаптивного тестирования. Данные формы тестирования основываются на отличных от традиционно теоретико-методологических основ, и иных технологиях конструирования и предъявления тестов.

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

В соответствии с этим, было принято решение по разработке подсистемы адаптивного тестирования "Тестирование" - являющейся средством генерации различного рода тестов из прикрепленных баз данных, а также имеющая возможность создавать и редактировать данные тесты. Основным требованием к разработанной системе являлось ее интеллектуальность, достигающаяся за счет организации адаптивности процесса тестирования.

Адаптивная система тестирования (АСТ) "Тестирование" предоставляет следующие возможности по организации процесса тестирования:

- Открытость и наращиваемость системы;

-Адаптивный выбор следующего вопроса в зависимости от правильности предыдущих ответов обучаемого;

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

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

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

-Уменьшение вероятности возникновения ошибок при подсчете результатов тестирования и выведения итоговой оценки;

-Освобождение преподавателей от трудоемкой работы по обработке результатов тестирования.

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

Важнейшими особенностями разрабатываемой подсистемы, которые отличают ее от большинства уже созданных систем, можно считать открытость, эффективность и простота использования. Открытость системы заключается в том, что для использования подсистемы студентами и преподавателями не требуется дополнительного обучения. Ознакомиться со структурой системы можно в порядке 10-15 минут. Про эффективность уже говорилось ранее. Простота использования заключается в том, что конечному пользователю (заказчику данной подсистемы) не нужно для ее использования искать специализированное программное обеспечение, все необходимое (программа с .exe файлом, прикрепленная база данных, и помощь: руководство для преподавателя и руководство для тестируемого) собранно в распространяемой производителем папке.

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

программный архитектура проектирование

1. Формирование требований к программному средству


.1 Выявление требований. Документ "Видение"


Требования - это исходные данные, на основании которых проектируются и создаются автоматизированные информационные системы.

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

Настоящий документ основан на теоретических данных об адаптивном тестировании, имеет взаимосвязь с проектом подготовки адаптивных тестирований и разрабатывается в рамках автоматизации адаптивных тестов в среду дистанционного образования (ДО).

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


Таблица 1 - Проблема 1

ПроблемаУпрощение задачи, стоящей перед слушателем. Вместо самостоятельного формулирования полного и исчерпывающего ответа на поставленный вопрос требуется лишь выбрать правильный ответ из числа готовых вариантов ответаЗатрагиваеттестируемыйЕе следствием являетсявозможность угадывания правильного ответаУспешное решениеувеличивается объем разнообразного учебного материала, который может быть проверен за определенный отрезок времениТаблица 2 - Проблема 2

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

Таблица 3 - Проблема 3

ПроблемаНевозможность оценки характера мышления (логика построения концепции, умения обосновать ее, используя для этого необходимые данные, логическое мышление и др.)Затрагиваеттестируемый, преподавательЕе следствием являетсянеоднозначность оценки ответаУспешное решениевозможность статистической обработки результатов контроля, и отсутствие предвзятого (личного) отношения пары преподаватель-студент

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


Таблица 4 - Определение позиции подсистемы

ДляВУЗаКоторойТребуется оптимизировать процесс адаптивного тестированияНазвание продуктаАСТ "Тестирование"КоторыйПродукт надежен и основан на БДВ отличие отСуществующей системы устной проверки знанийДанный продуктОблегчает процедуру проверки знаний

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

При описании проблем были упомянуты пользователи данной системы. Опишем, кто к ним относится и какими правами обладает.

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

-преподаватели - эксперты, составляющие задания

-студенты, тестирующиеся по конкретным дисциплинам

-системный администратор

Преподаватели-эксперты имеют доступ к части программы, которая позволяет им создавать новые тесты и вносить изменения в старые.

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

Студенты являются непосредственно теми, кто проходит данное тестирование. В случае подсистемы адаптивного тестирования, которая создается в ходе проекта, студенты являются основными пользователями, поскольку подсистема направлена на генерацию адаптивных тестов из БД.


Таблица 5 - Профиль пользователя ПРЕПОДАВАТЕЛЬ

ПредставительПреподавательОписаниеПользователь системы, наделенный правами составления и редактирования тестовТиппользователь - экспертОтветственностиРазрабатывает задания для тестов, вносит необходимые изменения в БД с заданиями, контролирует результаты прохождения тестаКритерий успехаНаличие в БД достоверной информации, постоянное обновление БД

Таблица 6 - Профиль пользователя СТУДЕНТ

ПредставительСтудентОписаниеПользователь системы, наделенный правами прохождения адаптивного тестирования, в соответствии, с выбранным уровнем трудностиТиппользователь - тестируемыйОтветственностиПройти тест и получить объективную оценку своих знанийКритерий успехаХорошая подготовленность, сосредоточенность на прохождении заданий, исключение вариантов угадыванияТаблица 7 - Профиль пользователя СИСТЕМНЫЙ АДМИНИСТРАТОР

ПредставительСистемный администраторОписаниеПользователь системы, наделенный правами администрирования системы в целомТиппользователь - контролерОтветственностиСледить за исправностью работы системы и БД, устранять возможные ошибки в системных кодах программыКритерий успехаПостоянный контроль состояния системы, оперативность устранения ошибок

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

Для адаптивного тестирования наличие разделения заданий по уровням трудности является важным требованием. Прежде чем приступить к прохождению теста студент должен выбрать уровень, с какого он хочет начать. В данной подсистеме адаптивного тестирования "Тестирование" используется 8 уровней трудности (от 0 до 7). Самым нижним уровнем считается 0, ниже которого студент опускаться не будет. И если студент вновь и вновь не будет справляться с заданием 0 уровня трудности, то они ему будут предоставляться до тех пор, пока она не ответит правильно, или вопросы не закончатся. Распределение заданий происходит в соответствии с теоретическим представлением о системе адаптивного тестирования.

Если тестируемый успешно решил данное задание, то у него появляется желание решить задание труднее, если нет - то им будет сделана еще одна попытка решения задания той же трудности. Если оно также не решено, то предъявляется задача пониженной трудности. Если сразу не решено менее трудное задание, то предлагается задача еще меньшей трудности. Аналогично происходит процесс повышения трудности заданий. В результате, если исключить этап обучения при решении задач, то испытуемый выберет для себя определенный уровень трудности, вокруг которого и будет размываться трудность заданий.

После прохождения теста будет указано количество набранных баллов. Рассчитываться баллы будут автоматически, следующим образом: правильный ответ - 1 балл, не правильный ответ - 0 баллов, при этом баллы будут умножаться на коэффициент трудности задания. Данный коэффициент добавляет баллы в соответствии с тем, к какому уровню относится вопрос, на который был дан правильный ответ. Так на 0 уровне за правильный ответ будет начислен 1 балл, умноженный на коэффициент 1, на 1 уровне коэффициент будет 2, на 2 - коэффициент 3 и так далее. В результате будет выведена сумма всех баллов.

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

Для создания системы адаптивного тестирования потребовались:

-Microsoft Windows XP Professional

-Microsoft Visual Studio. Net 2005

-Microsoft SQL Server Express

Каждая из этих систем, представленных выше, имеет свои минимальные аппаратные и программные требования. Для правильного функционирования системы адаптивного тестирования нужно так же выработать минимальные системные требования.

Проанализируем системные требования для Microsoft Windows XP Professional, Microsoft Visual Studio .Net 2005, Microsoft SQL Server.


Таблица 8 Системные требования

Windows XPSQL ServerVisual Studio. Net Частота процессора233 МГц1 ГГц450 МГцОперативная память125 Мб128 Мб256 МбСвободное место на жестком диске1,5 Гб1 Гб5 Гб

Из представленных выше требований, создам минимальные требования для системы адаптивного тестирования "Тестирование":

-Частота процессора: 1 ГГц

-Оперативная память: не менее 256 Мб

-Свободное место на жестком диске: не менее 5 Гб

Соблюдение данных требований в системе адаптивного тестирования "Тестирование" позволяет пользователю, проходящему тестирование, оперативно взаимодействовать с системой.


1.2 Построение диаграммы вариантов использования


.2.1 Выявление актеров

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

Основными кандидатами в актеры являются:

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

2.студенты - огромное количество студентов, проходящих тестирование в разные промежутки времени;

.подсистема подготовки адаптивных тестирований - программа, которая заполняет БД вопросами;

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

Проанализировав то, чем занимается каждый из предполагаемых актеров и в чем его заинтересованность в ходе общения с АСТ "Тестирование", можно сделать следующие объединения. Каждый преподаватель - эксперт, который составляет тесты, выполняет однотипные задания, поэтому их можно объединить в актера ПРЕПОДАВАТЕЛЬ. Не зависимо от количества студентов, проходящих тест, все они заинтересованы в том, чтобы его пройти и их деятельность складывается в ответах на вопросы теста, следовательно, всех студентов можно объединить в актера СТУДЕНТ. Программа подготовки адаптивных тестирований так же может быть отнесена к возможным актерам, но поскольку прямое рассмотрение данной подсистемы не входит в тему данного курсового проекта, то данный актер рассматриваться не будет. Актер системный администратор остается без изменений.


.2.2 Выявление вариантов использования


Таблица 9 - Варианты использования

КодОсновной актерНаименованиеФормулировкаА1АдминистраторОбновлениеЭтот вариант использования позволяет вносить изменения в интерфейс программы и содержимое БДА2АдминистраторИсправление ошибокУстранение ошибок функционирования системыП1ПреподавательКвалификацияПолучение преподавателем квалификации, позволяющей грамотно создавать тестыП2ПреподавательСоздание вопросовСоздание вопросов для тестированияП3ПреподавательОбновление БДЗанесение новых вопросов в БДП4ПреподавательОбучениеПервичное обучение студентов правилам пользования системойП5ПреподавательАнализ результатовАнализ результатов, полученных студентами после выполнения всех заданийС1СтудентВыбор трудностиВыбор уровня трудности, с которого начнется тестированиеС2СтудентПрохождение тестаНепосредственная процедура прохождения теста, путем ответа на поставленные вопросы

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

. Обновление А1

Основное действующее лицо: системный администратор

Другие участники прецедента: отсутствуют

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

Краткое описание: при необходимости изменить внешний вид системы, внести изменение в БД - администратор справится с этой задачей.

. Исправление А2

Основное действующее лицо: системный администратор

Другие участники прецедента: отсутствуют

Связи с другими вариантами использования: отсутствуют

Краткое описание: при работе с системой могут возникать какие-либо ошибки, которые можно удалить только программисту, после чего функционирование системы будет восстановлено, либо администратор даст рекомендации по замене оборудования или установке дополнительного программного обеспечения.

. Квалификация П1

Основное действующее лицо: преподаватель

Другие участники прецедента: отсутствуют

Связи с другими вариантами использования: отсутствуют

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

. Обновление БД П3

Основное действующее лицо: преподаватель

Другие участники прецедента: отсутствуют

Связи с другими вариантами использования: включает прецедент А1 и расширяется прецедентом П2

Краткое описание: новые вопросы, подготовленные преподавателем, должны быть, как можно скорее, занесены в БД, чтобы поддерживать новизну и актуальность тестирования всегда на высшем уровне.

. Создание вопросов П2

Основное действующее лицо: преподаватель

Другие участники прецедента: отсутствуют

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

Краткое описание: преподаватель создает вопросы, согласно правилам и формам, установленным в теории адаптивного тестирования.

. Обучение П4

Основное действующее лицо: преподаватель

Другие участники прецедента: студент

Связи с другими вариантами использования: отсутствуют

Краткое описание: прежде чем приступить к тестированию, преподаватель должен обучить студента как обращаться с данной программой; объяснить: в чем суть и как она работает.

. Анализ результатов П5

Основное действующее лицо: преподаватель

Другие участники прецедента: студент

Связи с другими вариантами использования: отсутствуют

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

. Выбор трудности С1

Основное действующее лицо: студент

Другие участники прецедента: отсутствуют

Связи с другими вариантами использования: отсутствуют

Краткое описание: прежде чем приступить к тесту студент имеет возможность выбрать уровень трудности теста на свое усмотрение. Рекомендуется начинать со среднего уровня трудности.

. Прохождение теста С2

Основное действующее лицо: студент

Другие участники прецедента: отсутствуют

Связи с другими вариантами использования: отсутствуют

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

Построенная диаграмма вариантов использования для подсистемы адаптивного тестирования находится в приложение А.


2. Анализ предметной области


.1 Описание входной и выходной информации


Анализ входной и выходной информации является важным этапом проектирования системы адаптивного тестирования.

Входными данными для разрабатываемой системы являются созданные вопросы, помещенные в базу данных (БД). Вопросы создаются преподавателями - экспертами, важным является формулировка вопроса. Для данной системы используется БД, созданная при помощи Microsoft SQL Server Express.

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


2.2 Построение диаграммы потоков данных


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

Рисунок 1 Контекстная диаграмма


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

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

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

Для данной подсистемы это: студент, преподаватель и БД

2.Процесс - преобразование входных потоков данных в выходные в соответствии с определенным алгоритмом.

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

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

Выделим хранилища: список студентов и список вопросов.


Рисунок 2 Диаграмма потоков данных


Опишем данную диаграмму для подсистемы адаптивного тестирования более детально. Из списков вопросов происходит генерация (составление) теста, данные вопросы заполняют БД. При поступлении новых вопросов БД должна обновляться. Списки студентов несут дополнительную информацию о каждом студенте, допущенном до прохождения теста. Прежде чем приступить к тестированию каждый студент получил набор знаний по данной дисциплине, но у каждого разный уровень запоминания информации. В данном документе содержится так же информация о предварительной оценке по дисциплине и рекомендуется уровень трудности заданий, который студент должен выбрать при начале тестирования. Затем происходит непосредственно процедура прохождения теста, путем ответа на поставленные вопросы. По завершению теста студент получит информацию о том, какое количество баллов он набрал и сделает для себя выводы. Полученные результаты так же будут проанализированы и преподавателем.


3. Проектирование программного средства


.1 Проектирование архитектуры ПС


Проектирование архитектуры ПС - подсистемы адаптивного тестирования, можно рассмотреть следующим образом. БД, содержащая вопросы для тестирования, разбитые по дисциплинам и уровням сложности, лежит на сервере. Студент, проходящий тестирование, располагаются в специальных лабораториях, где установлены компьютеры. Компьютеры по локальной сети подключены к серверу, и на каждом компьютере установлена программа тестирования.

При проведении тестирования в лаборатории присутствует преподаватель, который наблюдает за ходом тестирования. Перед началом тестирования и прежде, чем запустят в лабораторию студентов, системный администратор включает все компьютеры, открывает на них нужное приложение (запускает файл bin /debug/tester.exe) и проверяет подключение БД через локальную сеть. При этом следует указать, что доступа к Internet и другим файлам компьютера у тестируемого нет, доступ закрыт системным администратором. И только после этого запускают студентов для прохождения тестирования.

Студент при помощи windows клиента видит интерфейс ПС. Вводя какие - либо данные на форме, или нажимая на кнопки, клиент отправляет по локальной сети запрос на сервер. Получая запрос, сервер его обрабатывает и передает необходимые параметры уровню доступа к данным. На этом уровне, в соответствии с запросами, выполняется выборка данных из БД, после чего необходимые данные возвращаются клиенту и отображаются в окне приложения. Данные действия происходят очень быстро. Схематичное представление данной архитектуры представлено на рисунке 3.

Данная архитектура является очень удобной, и главное позволяет делать ПС надежным. БД создавалась при помощи Microsoft SQL Server Express, подробнее об этом будет рассказано в других разделах. Выбор Microsoft SQL Server обусловлен тем, что при прохождении теста, база данных будет одновременно использоваться несколькими клиентами, а ведь если установить какую либо другую систему, например MS Access, то перед началом тестирования эту БД придется устанавливать на каждый компьютер, что доставит лишь дополнительные трудности. Так же хранение БД на сервере позволит избежать несанкционированного доступа тестируемых к БД с целью извлечения информации о правильных ответах.


Рисунок 3 Архитектура ПС


3.2 Концептуальное и логическое проектирование структуры информационного обеспечения


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

1создание концептуальной модели;

трансформация концептуальной модели в логическую;

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

Концептуальное проектирование базы данных представляет собой процесс описания бизнес требований и данных с точки зрения пользователя. Для выполнения концептуального проектирования данных использовался подход построения диаграммы «Сущность-связь» - Entity-Relationship (ER). Логическая модель отражает структуру данных с точки зрения разработчика. На этом этапе определяются объекты БД, отношения между ними. Поскольку для отображения концептуального моделирования применялась ER-диаграмма, то она является и логической моделью.

Получив из лекционных материалов по предмету необходимые знания о структуре диаграммы "Сущность - связь" и о параметрах, описывающих ее, можем переходить непосредственно к области адаптивного тестирования. Разрабатываемая система адаптивного тестирования содержит прикрепленную базу данных. Данная база данных состоит из 2 таблиц: Question, Variants. Данные таблицы связаны между собой при помощи поля Qid, которое является индивидуальным и обозначает порядковый номер вопроса. Таблица Question является основной, она содержит главные поля с вопросами теста, указывает на дисциплину, к которой относится конкретный вопрос, так же указывает уровень трудности, правильный ответ и форму вопроса. Формы вопроса проставляются значением от 1 до 4 и прописываются в программе. При этом 1 - закрытая форма, 2 - открытая, 3 - на соответствие, 4 - на упорядочивание. В таблице Variants содержатся дополнительные варианты ответов. Правильное заполнение данной таблицы будет описано чуть позже.

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

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

Атрибуты: дисциплина (по которой ведется тестирование), вид теста (экзаменационный, промежуточный и т.д.)

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

Атрибуты: № вопроса, форма (тип) вопроса (открытая, закрытая, на соответствие, последовательность), текст, трудность.

3.Варианты - указание вариантов ответа, если это необходимо (исключение открытая форма вопроса).

Атрибуты: № варианта, нет варианта, текст, форма.

4.Правильный ответ - необходимо отметить, какой из предложенных ранее вариантов является верным.

Атрибуты: поле, последовательность ответов.

5.Уровень - перед началом тестирования указывается уровень трудности вопроса, с которого начинается тест. Далее трудность распределяется по правилам адаптивного тестирования.

Атрибуты: № уровня трудности.

6.Результат - после окончания теста выводит результат с указанием количества набранных баллов. Данное окно предоставляется для анализа, как студенту, так и преподавателю.

Теперь, когда сущности и атрибуты определены, приступим к построению диаграммы "Сущность - связь" и для понятности словесно опишем связи между сущностями. При этом будем использовать стандартную схему построения фраз: <Каждый экземпляр СУЩНОСТИ 1> <МОДАЛЬНОСТЬ СВЯЗИ> <НАИМЕНОВАНИЕ СВЯЗИ> <ТИП СВЯЗИ> <экземпляр СУЩНОСТИ 2>.


Рисунок 4 Диаграмма "Сущность - связь"


Словесное описание изображенных связей, как слева - направо, так и справа - налево:

1."Каждый тест должен включать несколько вопросов"

"Каждый вопрос должен принадлежать только одному тесту"

2."Каждый тест может проходить по нескольким уровням"

"Каждый уровень может соответствовать нескольким тестам"

3."Каждый вопрос может иметь несколько вариантов ответа"

"Каждый вариант ответа может содержаться в одном вопросе"

4."Каждый вопрос должен отвечать одному уровню трудности"

"Каждый уровень трудности должен относиться к нескольким вопросам"

5."Каждый вариант может иметь один правильный ответ"

"Каждый правильный ответ может быть несколькими вариантами"

6."Каждый правильный ответ должен приносить один положительный"

"Каждый результат должен отражать один правильный ответ"

7."Каждый результат должен учитывать один уровень трудности"

"Каждый уровень трудности должен увеличивать один результат"


3.3 Проектирование интерфейса


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

Система адаптивного тестирования, разработанная в ходе курсового проекта, должна быть доступной. Это является главным признаком, ведь для студентов первое знакомство с системой, происходящее непосредственно перед тестом, не должно вызвать трудности. Перед тестированием в обязанности преподавателя входит данное объяснение работы программы, но чем она проще, тем легче будет студенту настроиться на работу.

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

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

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

При построении модели абстрактного содержимого стоит задача определить, что войдет в состав интерфейса (какие данные и функции), а не решать вопрос о том, как именно оно будет выглядеть. Модель можно построить графически, а можно описать в текстовом редакторе. Я выбрала графическое представление модели.


Рисунок 5 Моделирование абстрактного содержимого интерфейса


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

Рисунок 6 Карта навигации


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


.1 Выбор средств реализации


Программа разрабатывалась на платформе .NET Framework в среде Microsoft Visual Studio 2005 на языке программирования Visual C#, который относится к универсальным языкам. Это современный и прогрессивный язык программирования, который включает возможности, доступные в наиболее распространенных промышленных и исследовательских языках.

Среда программирования Visual Studio 2005 в настоящее время имеет огромную популярность, она дает большие возможности для быстрой и надежной разработки программного средства, а так же его отладки и тестирования.

Программа адаптивного тестирования не сможет работать без базы данных.

База данных для подсистемы адаптивного тестирования, из которой программа будет генерировать тест, создавалась при помощи специализированного языка, входящего в состав промышленных клиент-серверных систем управления базами данных (СУБД) - Microsoft SQL Server Express. Данная СУБД поставляется вместе со средой разработки Microsoft Visual Studio 2005, по этому нет смысла использовать другие СУБД. Для реализации проекта всех необходимых нам функций этого сервера вполне достаточно. Так же, как уже говорилось ранее, выбор Microsoft SQL Server Express обусловлен тем, что при прохождении теста, база данных будет одновременно использоваться несколькими клиентами, и данный сервер успешно выполнит данную работу.


4.2 Реализация информационного обеспечения


Информационное обеспечение (ИО) - это совокупность сведений (данных), представленных в определенном виде и используемых при выполнении автоматизированного проектирования. Проектирование реализуется комплексом задач, связанных с переработкой многочисленных массивов информации различного вида. Поэтому информационное обеспечение является одной из важнейших составных частей системы, а затраты на его разработку составляют более половины стоимости системы в целом. Комплекс задач, которые необходимо перерабатывать системе, это множество вопросов теста, а так же результаты его прохождения. Вся информация, необходимая для функционирования системы адаптивного тестирования, представляется в виде базы данных (БД).

Базы данных должны обеспечивать:

1.экономное использование памяти. При формировании БД необходимо обеспечивать плотное размещение данных на носителях, минимизировать избыточность данных;

2.согласование времени выборки данных прикладными программами с частотами использования последних;

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

.достоверность и непротиворечивость данных;

.открытость для внесения новых сведений.

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

БД содержит условно-постоянные поля, обозначающие столбцы, информация, заносимая в данные поля, при помощи программы редактора теста, можно отнести к переменной. Это обусловлено тем, что БД постоянно обновляются.

Связь с БД производиться через разработанное специальное программное обеспечение, которое производит выборку данных и генерирует тест. Запись новых данных, удаление старых ненужных записей, перезапись файлов с одних машинных носителей на другие осуществляется с помощью редактора тестов (другой подсистемы, имеющей непосредственную связь с разработанной системой "Тестирование"). Как уже говорилось ранее, мной использовалась система управления базами данных (СУБД) - Microsoft SQL Server Express.


.2.1 Создание БД

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

1.Запускаем Microsoft Visual Studio 2005

2.В меню выбираем Tools - Connect to Database. Перед нами появится такое диалоговое окно:

.

Рисунок 7 Добавить подключение БД

В поле Data Source следует выбрать Microsoft SQL Server. В поле Server name указать имя существующего сервера. С Microsoft Visual Studio 2005 поставляется Microsoft SQL Server 2005 express development. К нему можно обратиться так Имя сервера\SQLExpress, при этом регистр не важен. А если сервер лежит на той же машине, где ты к нему присоединяешься, то можно писать так .\SQLExpress. Далее, если требуется создать новую БД, то в поле Select or enter a database name указываем название БД, например, "test". В случае, когда нужно открыть уже готовую БД, выбираем поле Attach a database file, жмем Browse и выбираем нужную БД. Жмем ОК и БД создана.

4.Слева в диалоговом окне Server Explorer (рисунок 8) можно увидеть созданную БД и множество папок для работы с ней.


Рисунок 8 Окно Server Explorer


4.2.2 Создание таблиц и полей. Заполнение БД

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

1.В окне Server Explorer сделаем щелчок правой кнопкой мыши по папке Tables - Add New Table.

Рисунок 9 Создание новой таблицы


2.Перед нами откроется следующая рабочая область:

3.

Рисунок 10 Рабочая область для создания полей таблиц


В поле Column name следует указать название поля, в поле Data Type выбрать тип для этого поля. Существует большое количество типов данных, для данной БД я использовала следующие: int - сокращение от Integer, без запятой (целые числа), используются без параметров, потому что они определены системой баз данных, nvarchar(MAX) - текст переменного размера, в данном случае берется максимальная длина поля, а так же smallint - числа без запятой (целые числа), используются без параметров и занимают в некоторых случаях меньше памяти, т.к. используются для маленьких чисел. Колонка allow nulls означает то, что может ли данное поле принимать нулевое значение. Для ключевых полей, о которых чуть позже, нельзя, чтобы был нуль.

4.Создав, таким образом, все необходимые поля следует указать, какое из них будет ключевым. Для этого выбираем нужное поле, правой кнопкой мыши и Set Primary Key. Ключевое поле обозначено. Следует учесть, что если ключевым полем является поле Id (или любое универсальное поле), то нужно сделать, чтобы оно проставлялось автоматически. Для этого выбираем ключевое поле, в Column Properties находим пункт Identity Specification и меняем это значение с No на Yes.

5.

Рисунок 11 Окно Column Properties


6.Далее требуется сохранить таблицу и задать ей соответствующее имя. Таблица с нужными полями создана и отражается в Server Explorer.

Это описание как создавать таблицы в общем случае, теперь посмотрим, что же получилось для разрабатываемой подсистемы. Было создано 2 таблицы, которые имеют следующий вид:


Рисунок 12 Таблица Variants


ГдеVID - уникальный порядковый номер варианта ответа, целое число

QID - уникальный порядковый номер вопроса, целое число

VText - поле для ввода вариантов ответа


Рисунок 13 Таблица Question


ГдеQID - уникальный порядковый номер вопроса, целое число

QText - поле для ввода самого вопроса

Discipline - поле для ввода дисциплины, по которому будет проходить тестирование

Level - поле указывает уровень трудности с которого начнется тест

Type - поле, обозначающее к какой форме относится вопрос, целое значение от 1 до 4. При этом 1 - закрытая, 2 - открытая, 3 - на соответствие, 4 - на упорядочивание.

Answer - поле, для ввода правильного ответа на вопрос.

Когда все таблицы созданы, есть необходимость их заполнить (в дальнейшем это делается при помощи редактора тестов). Для этого нужно правой кнопкой мыши сделать щелчок по таблице, которую требуется заполнить и выбрать Show Table Data. Будет открыта таблица с нужными полями, где вручную можно вводить данные. При этом следует помнить, что первичное поле заполняется автоматически. Так же следует помнить, что таблицы нужно заполнять в определенном порядке, сначала Question, потом Variants.

.2.3 Создание связей. Построение диаграммы БД

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

1.В окне Server Explorer делаем щелчок правой кнопкой мыши по папке Database Diagrams - Add New Diagram.


Рисунок 14 Добавление диаграммы связей таблиц


2.Перед нами появится диалоговое окно Add Table, где нужно, при помощи кнопки Add, добавить все необходимые таблицы.

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


Рисунок 15 Диаграмма связей таблиц


4.3 Реализация пользовательского интерфейса


Для реализации пользовательского интерфейса использовалась Microsoft Visual Studio .Net 2005, в котором создавался проект. Рассмотрим на конкретном примере создания пользовательского объекта. Остальные объекты, использующиеся при реализации интерфейса, будут создаваться аналогичным образом.

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

·открыли Microsoft Visual Studio .Net 2005

·создали Windows приложение, в котором автоматически генерируется Windows form

·открыли панель инструментов Toolbox


Рисунок 16 Панель инструментов Toolbox


·выбираем необходимый элемент button, который размещаем на форме

·двойным щелчком мыши по созданному элементу button, после чего автоматически генерируется событийная процедура on_mouse_click. Данная кнопка будет означать начало тестирования.

·в появившемся окне событийной процедуры описываем код, который будет выполняться по наступлению данного события.

Аналогично разместили основные элементы управления на Windows form, к которым относятся поля ввода данных о тестируемом, поле дисциплины, по которому будет проходить тест, поле для ввода первоначального уровня сложности. Все перечисленные элементы представляют собой элемент TextBox, а подписи указывающие, что требуется вводить в данном поле - Label.


4.4 Реализация функциональности программного средства


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

При начале тестирования, если в поле Дисциплина было введено не правильное название дисциплины, то будет выполняться следующее условие.

public void BeginTest(string disc, int Tlev)

{find = false;filter = string.Format("Discipline='{0}'", disc);= QuestTable.Select(filter);(ques.Length==0)

{.Show("Вопросы по даной тематике отсутствуют.", "Внимание.", MessageBoxButtons.OK, MessageBoxIcon.Warning);

}


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

Рисунок 17 Окно предупреждения


Если же в поле дисциплина указано все верно, то начинается тестирование.

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

//Функция, которая проверять не был ли задан этот вопрос ужеbool Search(int id)

{flag = false;(int i = 0; i < QuestDone.Length; i++)

{(QuestDone[i] == id)= true;

}flag;

}


//Функция, которая дабавляет id вопроса, который уже был заданvoid Add(int id)

{(int i = 0; i < QuestDone.Length; i++)

{(QuestDone[i]==0)

{[i] = id;;

}

}

}


4.5 Организация взаимодействия приложения с БД


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

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<configSections>

</configSections>

<connectionStrings>

<add name="Tester.Properties.Settings.TestConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Test.mdf;Integrated Security=True;User Instance=True"="System.Data.SqlClient" />

</connectionStrings>

</configuration>


.6 Руководство пользователя


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

Основным документом является руководство пользователя, которое создается отдельно для тестируемого и преподавателя - эксперта. Поскольку данная подсистема обозначает непосредственное прохождение тестирование, то описано будет только руководство для тестируемого. Но при этом сама программа "Тестирование" содержит в своем меню раздел "Справка", где есть и "руководство для тестируемого", и "руководство для преподавателя", а так же данные о создателе.


Рисунок 18 Меню Справка


Студенту предлагается использование данной программы для прохождения тестирования с целью проверки своих знаний по системе адаптивного тестирования. Система устанавливается на сервере и по локальной сети тестируемым предоставляется возможность ее использования. Данная подсистема имеет непосредственную связь с системой "редактор теста", которая позволяет наполнять базу данных вопросами. На основе этих вопросов и строится тестирование. Областью применения может быть как обычная проверка знаний в школе/вузе, так и тестирования по повышению квалификации или любые другие тестирования в учебных центрах.

Теперь по шагам опишем, как и что требуется делать. Руководство пользователя содержится в Меню - Справка - Руководство для тестируемого, поэтому доступно любому тестируемому перед непосредственно прохождением теста. Так же данную информацию может изучить преподаватель-наблюдатель и рассказать, но иногда все нужно прочитать лично, чтобы понять наверняка.

1.Перед Вами открыто главное окно программы. Следует обязательно заполнить все представленные поля.


Рисунок 19 Главное окно программы

Введите свои фамилию, имя, отчество и группу в которой вы учитесь. Данная информация является важной, потому что на основе этих данных будет выведена форма результата тестирования. В поле Дисциплина укажите название дисциплины, по которой будет проходить тестирование. Чтобы избежать возникновения ошибок название дисциплины следует уточнить у преподавателя. В поле Уровень сложности введите целое значение 0-7. Не следует начинать тестирование сразу с высокого уровня, лучше начать со среднего.

2.Когда все необходимые поля заполнены, нажмите кнопку "Начать тестирование"

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


Рисунок 20 Вопрос закрытой формы


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


Рисунок 21 Вопрос открытой формы


Внимательно прочтите вопрос и в пустом поле "ваш ответ" впишите словами ответ на данный вопрос. Затем так же нажмите кнопку "Следующий вопрос"


Рисунок 22 Вопрос на установление соответствия

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


Рисунок 23 Вопрос на установление правильности последовательности


Внимательно прочтите вопрос, затем ознакомьтесь с предложенной последовательностью. Она выставляется произвольным образом, а требуется указать верную. В поле ответ укажите порядковые номера предложенных вариантов в нужной последовательности. Нажмите "Следующий вопрос".

4.Если все вопросы по данной дисциплине закончены, то вы увидите окно с результатом тестирования. Ознакомьтесь с результатами, посмотрите количество баллов, которые вы набрали и пригласите преподавателя, сообщив ему, что вы закончили тестирование.


Рисунок 24 Окно результата


5. Тестирование программного средства


Для проверки работоспособности программного средства и наличия в нем ошибок и неточностей следует провести тестирование. Тестирование является одним из наиболее устоявшихся способов обеспечения качества программного обеспечения.

Определение тестирования - это процесс выполнения программы с целью обнаружения в ней ошибок. Такое определение цели стимулирует поиск ошибок в программах. Отсюда также ясно, что "удачным" тестом является такой, на котором выполнение программы завершилось без ошибки. Напротив, "неудачным" можно назвать тест, позволивший выявить ошибку в программе.

Протестируем систему на защиту от некорректного ввода данных во время регистрации и авторизации в системе.

1.Если не заполнены основные поля регистрации, а студент нажимает кнопку "начать тестирование", то возникает окно, которое указывает на необходимость заполнить данные поля.

2.Если в поле Дисциплина указанно название предмета в неправильной форме (чего следует избегать), то выскакивает окно, которое сообщает о том, что вопросы по данной тематике отсутствуют.

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


Заключение


Основной целью написания данного курсового проекта было разработать подсистему адаптивного тестирования. Были поставлены определенные задачи, в результате решения которых мы получили подсистему "Тестирование". Данная подсистема позволяет проверять знания по разным дисциплинам (в зависимости от наполнения базы данных) в соответствии с понятием об адаптивном тестировании и его отличие от традиционной формы тестирования. В ходе описания предметной области было рассказано о системе адаптивного тестирования, в которой вопросы разделены по уровням сложности и выдача следующего вопроса зависит от ответа на предыдущий вопрос. По результатам проведения тестирования можно объективно оценивать уровень знаний студентов, ведь количество набранных балов при помощи коэффициента трудности учитывает всю специфику данного тестирования.

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

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


Приложение А


Диаграмма вариантов использования



Приложение Б


Листинг программы

using System;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;System.Data.SqlClient;Tester

{partial class Form1 : Form

{string name, surname, fath, group;int UserScore, lev;int[] QuestDone = new int[50];conStr = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Test.mdf;Integrated Security=True;User Instance=True";myAdapQ;myAdapV;QuestTable;VarTable;[] ques;wrightAn;type;discip;answer1;questCount = 0;Form1()

{();

}void выходToolStripMenuItem_Click(object sender, EventArgs e)

{();

}void данныеОСоздателеToolStripMenuItem_Click(object sender, EventArgs e)

{ab = new About();.Show();

}void руководствоToolStripMenuItem_Click(object sender, EventArgs e)

{HTS = new HelpTester();.Show();

}void руководствоПреподавателяToolStripMenuItem_Click(object sender, EventArgs e)

{HTC = new HelpTeacher();.Show();

}void редакторТестовToolStripMenuItem_Click(object sender, EventArgs e)

{log = new Login();.Show();

}void tabPage1_Click(object sender, EventArgs e)

{

}void button1_Click(object sender, EventArgs e)

{= textBox1.Text;.Text = textBox1.Text;= textBox2.Text;.Text = textBox2.Text;= textBox3.Text;.Text = textBox3.Text;= textBox10.Text;.Text = textBox10.Text;= textBox11.Text;.Text = textBox11.Text;= int.Parse(textBox12.Text);.Text = textBox12.Text;= 0;sql = string.Format("Select * From Question Where Discipline='{0}'",discip);= new SqlDataAdapter(sql, conStr);myDSQ = new DataSet("Question");.Fill(myDSQ, "Question");= myDSQ.Tables["Question"];= new SqlDataAdapter("Select * From Variants", conStr);myDSV = new DataSet("Variants");.Fill(myDSV, "Variants");= myDSV.Tables["Variants"];

//Начинаем Тест(discip, lev);

}void BeginTest(string disc, int Tlev)

{find = false;filter = string.Format("Discipline='{0}'", disc);= QuestTable.Select(filter);(ques.Length==0)

{.Show("Вопросы по даной тематике отсутствуют.", "Внимание.", MessageBoxButtons.OK, MessageBoxIcon.Warning);

}

{(questCount == 0)

{(int j = 0; j < ques.Length; j++)

{q = ques[j];lv = int.Parse(q["Level"].ToString());(lv == Tlev)

{++;

}

}

}

//Перебираются все вопросы по даной дисциплине(int i = 0; i < ques.Length; i++)

{

//Подсчет количества вопросов даного уровня сложностиoneQ = ques[i];ID = int.Parse(oneQ["QID"].ToString());mlevel = int.Parse(oneQ["Level"].ToString());

//Если на вопрос еще не отвечали и он нужного уровня сложности, то он задается(!Search(ID)&&mlevel==Tlev)

{= int.Parse(oneQ["Type"].ToString());q = oneQ["QText"].ToString();= oneQ["Answer"].ToString();= string.Format("QID= '{0}'", ID);[] vari = VarTable.Select(filter);(ID);.SelectedIndex = 1;= true;(type)

{1:.SelectedIndex = 0;.Text = q;.Text =vari[0]["VText"].ToString();.Text =vari[1]["VText"].ToString();(vari.Length==3)

{.Text =vari[2]["VText"].ToString();

};2:.SelectedIndex = 1;.Text = q;;3:.SelectedIndex = 2;.Text = q;.Text = vari[0]["VText"].ToString();.Text = vari[1]["VText"].ToString();.Text = vari[2]["VText"].ToString();.Text = vari[3]["VText"].ToString();.Text = vari[4]["VText"].ToString();.Text = vari[5]["VText"].ToString();;4:.SelectedIndex = 3;.Text = q;.Text = vari[0]["VText"].ToString();.Text = vari[1]["VText"].ToString();.Text = vari[2]["VText"].ToString();.Text = vari[3]["VText"].ToString();.Text = vari[4]["VText"].ToString();;:;

}

}(find)

{;

}

{.SelectedIndex = 2;.Text = UserScore.ToString();

}

}

}

}

//Функция, которая проверять не был ли задан этот вопрос ужеbool Search(int id)

{flag = false;(int i = 0; i < QuestDone.Length; i++)

{(QuestDone[i] == id)= true;

}flag;

}

//Функция, которая дабавляет id вопроса, который уже был заданvoid Add(int id)

{(int i = 0; i < QuestDone.Length; i++)

{(QuestDone[i]==0)

{[i] = id;;

}

}

}void NextButton_Click(object sender, EventArgs e)

{(type)

{1:(wrightAn == answer1)

{+= lev+1;-;(questCount==0)

{++;

}

}

{(lev!=0)

{-;(questCount == 0)

{-;

}

}

};2:(wrightAn == AnswerTextBox2.Text)

{+= lev+1;-;(questCount == 0)

{++;

}

}(lev != 0)

{-;(questCount == 0)

{-;

}

};3:an1, an2, an3;= wrightAn.Substring(0, wrightAn.IndexOf(','));= wrightAn.Substring(wrightAn.IndexOf(',')+1, wrightAn.LastIndexOf(',') - wrightAn.IndexOf(',')-1);= wrightAn.Substring(wrightAn.LastIndexOf(',')+1, wrightAn.Length - wrightAn.LastIndexOf(',')-1);((an1.Equals(AnsTB1.Text)&&an2.Equals(AnsTB2.Text)&&an3.Equals(AnsTB3.Text))||(an1.Equals(AnsTB2.Text)&&an2.Equals(AnsTB3.Text)&&an3.Equals(AnsTB1.Text))||(an1.Equals(AnsTB3.Text)&&an2.Equals(AnsTB1.Text)&&an3.Equals(AnsTB2.Text)))

{+= lev + 1;-;(questCount == 0)

{++;

}

}

{(lev != 0)

{-;(questCount == 0)

{-;

}

}

};4:(wrightAn == Ans4.Text)

{+= lev + 1;-;(questCount == 0)

{++;

}

}

{(lev != 0)

{-;(questCount == 0)

{-;

}

}

};:;

}(discip, lev);

}void EndButton_Click(object sender, EventArgs e)

{(type)

{1:(wrightAn == answer1)

{+= lev + 1;-;(questCount==0)

{++;

}

}

{(lev != 0)

{-;(questCount == 0)

{-;

}

}

};2:(wrightAn == AnswerTextBox2.Text)

{+= lev + 1;-;(questCount == 0)

{++;

}

}(lev != 0)

{-;(questCount == 0)

{-;

}

};3:an1, an2, an3;= wrightAn.Substring(0, wrightAn.IndexOf(','));= wrightAn.Substring(wrightAn.IndexOf(',') + 1, wrightAn.LastIndexOf(',') - wrightAn.IndexOf(',') - 1);= wrightAn.Substring(wrightAn.LastIndexOf(',') + 1, wrightAn.Length - wrightAn.LastIndexOf(',')-1);((an1.Equals(AnsTB1.Text) && an2.Equals(AnsTB2.Text) && an3.Equals(AnsTB3.Text)) || (an1.Equals(AnsTB2.Text) && an2.Equals(AnsTB3.Text) && an3.Equals(AnsTB1.Text)) || (an1.Equals(AnsTB3.Text) && an2.Equals(AnsTB1.Text) && an3.Equals(AnsTB2.Text)))

{+= lev + 1;-;(questCount == 0)

{++;

}

}

{(lev != 0)

{-;(questCount == 0)

{-;

}

}

};4:(wrightAn == Ans4.Text)

{+= lev + 1;-;(questCount == 0)

{++;

}

}

{(lev != 0)

{-;(questCount == 0)

{-;

}

}

};:;

}.SelectedIndex = 2;.Text = UserScore.ToString();

}void новыйТестToolStripMenuItem_Click(object sender, EventArgs e)

{.Text = "";.Text = "";.Text = "";.Text = "";.Text = "";.Text = "";.SelectedIndex = 0;

}void radioButton1_Click(object sender, EventArgs e)

{= (sender as RadioButton).Text;

}void Form1_Load(object sender, EventArgs e)

{

}

}

}

Форма Данные о создателеSystem;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;Tester

{partial class About : Form

{About()

{();

}void button1_Click(object sender, EventArgs e)

{();

}

void About_Load(object sender, EventArgs e)

{

}

}

}

Форма АвторизацияSystem;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;Tester

{partial class Login : Form

{Login()

{();

}void button1_Click(object sender, EventArgs e)

{log, pas;= textBox1.Text;= textBox2.Text;(log.Equals("admin") && pas.Equals("Teacher"))

{MyEditor = new Editor();.Show();();

}

{.Show("У вас недостаточно прав.", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);

}

}void Login_Load(object sender, EventArgs e)

{

}

}

}

Форма Руководство для преподавателяSystem;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;Tester

{partial class HelpTeacher : Form

{HelpTeacher()

{();

}void button1_Click(object sender, EventArgs e)

{();

}void HelpTeacher_Load(object sender, EventArgs e)

{path = Environment.CurrentDirectory.ToString();.Navigate(path + "\\Help\\Page1.htm");

}

}

}

Форма Руководство для тестируемогоSystem;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;Tester

{partial class HelpTester : Form

{HelpTester()

{();

}void HelpTester_Load(object sender, EventArgs e)

{path = Environment.CurrentDirectory.ToString();.Navigate(path + "\\Help\\Page2.htm");

}void button1_Click(object sender, EventArgs e)

{();

}

}

}


Содержание Введение 1. Формирование требований к программному средству 1.1 Выявление требований. Документ "Видение" 1.2 Построение диа

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ