Сетевая программа тестирования по дисциплинам

Автор: Пользователь скрыл имя, 13 Ноября 2011 в 11:24, дипломная работа

Краткое описание

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

Оглавление

Введение
1 Анализ технического задания и возможные способы реализации поставленной задачи
2 Выбор инструментальных программных средств для решения поставленной задачи
3 Выбор аппаратных средств
4 Описание программы
5 Методика работы пользователя с программой
6 Экспериментальная часть
7 Защита данных
8 Организационно-экономическая часть
9 Санитарные нормы и правила при работе с ПЭВМ
Заключение
Литература
Приложение

Файлы: 15 файлов

2 Выбор инструментальных программных средств.doc

— 47.00 Кб (Открыть, Скачать)

3 Выбор аппаратных средств.doc

— 42.00 Кб (Открыть, Скачать)

4 Описание программы.doc

— 320.00 Кб (Скачать)

       DM.ibtBase.Insert; // перевод таблицы в режим вставки новой записи

       DM.ibtBaseVOPROS.Text := mVopros.Text; //текст вопроса

       DM.ibtBaseOTVET.Text := mOtvet.Text; //текст ответа

       DM.ibtBaseNEPR1.Text := mNepr1.Text; //текст 1-го неправильного варианта ответа

       DM.ibtBaseNEPR2.Text := mNepr2.Text; //текст 2-го неправильного варианта ответа

       DM.ibtBaseNEPR3.Text := mNepr3.Text; //текст 3-го неправильного варианта ответа

       DM.ibtBaseOBJ.LoadFromFile(imgPath); //определение графического файла

       DM.ibtBaseVARIANT.Text := cbVariant.Text; //название варианта

       DM.ibtBaseSHABLON.Text := shab; //шаблон вопроса

       DM.ibtBase.Post; //принятие изменений

       В переменной imgPath хранится путь к графическому файлу. Графический файл загружается процедурой при помощи диалога открытия рисунка: If DM.OpenPic.Execute Then dbiObj.Picture.LoadFromFile (DM.OpenPic.FileName). Переменная shab хранит номер шаблона вопроса. Этот номер определяется при выборе соответствующего переключателя при добавлении вопроса.

       

       Просмотр вопросов необходим для редактирования вопросов выбранной дисциплины. В этом режиме пользователю предоставляется возможность удаление конкретного вопроса, редактирования значений вопросов и вариантов ответов, выбор нового объекта, перенос вопроса в другой вариант или указание нового варианта. Для просмотра вопросов используются кнопки навигации (в скобках указаны процедуры выполнения действия) – «Первый вопрос» (DM.ibtBase.First), «Последний вопрос» (DM.ibtBase.Last), «Следующий вопрос» (DM.ibtBase.Next), «Предыдущий вопрос» (DM.ibtBase.Prior).

       При редактировании вопроса текущее  значение вопроса или вариантов ответа заменяется на введенное пользователем значение в окне редактора значения параметра вопроса. Редактор значений вызывается двойным щелчком левой кнопки мыши на значение изменяемого параметра. При изменении имеющегося объекта открывается диалог выбора графического файла. Выбранный рисунок заносится в графическое BLOB-поле таблицы Base# .

       Ниже  приведен программный код замены текста вопроса:

       DM.ibtBase.Edit; //перевод таблицы в режим редактирования

       If lblTekZn.Caption = 'Текущее значение вопроса: ' Then DM.ibtBase-VOPROS.Text := mZnachenie.Text; //если название редактора 'Текущее значение вопроса: ', то изменяется только текст вопроса

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

       If Application.MessageBox('Вы действительно хотите  удалить этот вопрос?' , 'Удаление вопроса', MB_YESNO+MB_ICONQUESTION) = mrYes //подтверждение удаления текущего вопроса

       Then DM.ibtBase.Delete; //удаление текущего вопроса из таблицы

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

       Strochka := InputBox('Новое время','Введите время на ответ(в сек.)'#13'ЦЕ-ЛОЧИСЛЕННОЕ ЗНАЧЕНИЕ' , ''); //ввод времени для ответа на вопрос

       If Strochka = '' Then ShowMessage ('Время не введено. Отмена изменения времени!!!') //если время не введено, то отмена изменения времени для ответа

       

       Else //если время введено

       Begin

       DM.ibtPredmeti.Edit; //перевод таблицы в режим редактирования

       DM.ibtPredmetiVREMIA.Text := Strochka; //установка нового времени

       DM.ibtPredmeti.Post; End; //принятие изменений

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

       Программный продукт позволяет указывать  для каждой дисциплины свои параметры  оценки. Ниже приведен фрагмент процедуры записи параметров оценки в текстовое поле PAROCEN таблицы SPISPRED:

       DM.ibtPredmetiPAROCEN.Text:='0,'+IntToStr(seOc3.Value)+'#'+'0,'+IntToStr(seOc4.Value)+'#'+'0,'+IntToStr(seOc5.Value);

       Пример  хранения параметров оценки: 0,50#0,65#0,75.

       Результаты  проведенного тестирования выводятся в табличной форме. Результаты тестирования пересылаются от каждого клиентского приложения тестирования и записываются в таблицу SPISSTUD. Для удобства обработки результатов проведенного тестирования предусмотрена возможность отбора необходимых данных – фильтрация списка результатов по определенной группе или по конкретной дисциплине. Ниже приведена процедура фильтрации списка студентов:

       DM.ibtStudenti.Filtered := True; //разрешение фильтрации таблицы

       If Form_Main.cbFiltPred.Text = '< все предметы >' Then Begin

       If Form_Main.cbFiltGruppa.Text = '< все группы >' Then DM.ibtStudenti.Filter := '' //если выбраны пункты < все предметы >и < все группы >, то отображаются все записи

       Else DM.ibtStudenti.Filter := 'GRUPPA = '''+Form_Main.cbFiltGruppa.Text + ''''; //фильтрация таблицы по выбранной группе

       End Else Begin

       If Form_Main.cbFiltGruppa.Text = '< все группы >' Then DM.ibtStudenti.Filter := 'PREDMET = ''' + Form_Main.cbFiltPred.Text + '''' //фильтрация таблицы по выбранной дисциплине

       Else DM.ibtStudenti.Filter := '(PREDMET = ''' + Form_Main.cbFiltPred.Text + ''') and (GRUPPA = ''' + Form_Main.cbFiltGruppa.Text + ''')'; End; //фильтрация таблицы по дисциплине и по группе

       

       При обработке результатов тестирования пользователь имеет возможность удалить любую запись из списка (процедура DM.ibtStudenti.Delete;), либо очистить таблицу от всех записей (в цикле до конца таблицы – Repeat DM.ibtStudenti.Delete; Until DM.ibtStudenti.Eof).

       Также для удобства обработки результатов  проведения тестирования в серверной части программы тестирования по дисциплинам предусмотрена возможность предварительного просмотра печати отобранных записей, представленных в виде табличного отчета. Формирование отчета выполняет генератор отчетов Rave Reports 5.0, входящий в состав поставки вместе со средой разработки Borland Delphi 7. Отчет представляет собой печатный документ, содержащий данные, аналогичные получаемым в результате выполнения запроса к базе данных.

       Визуальный  конструктор отчетов Rave Reports 5.0 повышает удобство и упрощает непосредственную разработку отчетов. Отчет размещается в файле с расширением rav (в данном программном продукте это файл Otchet.rav), который представляет собой проект создаваемого отчета и содержит информацию об отчете, параметры оформления страниц отчета  и др.

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

       Структура создаваемого в серверной части приложения отчета в окне генератора отчетов приведена на рисунке 4.1.1.

Рисунок 4.1.1 – Структура отчета по результатам проведенного тестирования

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

       RvSystem.DefaultDest:=rdPrinter; //действие по умолчанию – печать

       RvProject.Execute; //выполнение отчета

       

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

       RvSystem.DefaultDest:=rdPreview; //действие по умолчанию – просмотр

       RvProject.Execute; //выполнение отчета

       При формировании отчета на печать выводятся  заголовок отчета («Список студентов, прошедших тестирование»), подписываются  столбцы полей (Фамилия, Имя, Группа, Предмет, Вариант, Оценка), а также  выводятся данные, содержащиеся в  таблице SPISSTUD. На рисунке 4.1.2 приведен вид напечатанного списка.

Рисунок 4.1.2 – Вид отчета по результатам проведенного тестирования

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

       При возникновении вопросов по работе с  приложением пользователь в любой момент выполнения приложения может обратиться к помощи справки. В справочном файле с именем Help.htm (Приложение А, папка Test(Server)) содержаться подробные инструкции по работе с программой, а также описание последовательности действия, которые необходимо выполнить для осуществления определенного действия. Каждая функция разработанного программного продукта подробно описана, для наглядности приведены иллюстрации.

       

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

       4.2 Описание клиентской  части

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

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

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

       Для доступа к данным из клиентского  приложения используются наборы данных (совокупность записей, взятых из одной или нескольких таблиц базы данных) типа IBQuery. Записи этого набора данных формируются в результате выполнения SQL-запроса и основаны на использовании реляционного доступа к данным. Этот набор данных был выбран по причине использования его при работе с удаленной базой данных. [13]

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

       DM.ibqBase.SQL.Text := 'SELECT * FROM "' + DM.ibqPredmetiBAZA.Text + '" WHERE VARIANT = ' + '''' + cbVariant.Text + '''';

       

       Этот  запрос означает – из таблицы выбранной  дисциплины (ibqPredmetiBAZA – поле, в котором хранится имя таблицы выбранной дисциплины) выбрать все записи, в которых поле варианта (VARIANT) имеет такое же значение, что выбранный пользователем вариант в комбинированном списке (cbVariant). После выполнения этого запроса в наборе данных присутствуют только записи нужного пользователю варианта. [3]

       После этого пользователю выводятся по очереди вопросы. Варианты ответов  вопроса не нумеруются, в процессе вывода вопроса в зависимости от шаблона вопроса становится видна одна из панелей (plShablon1, plShablon2, plShablon3, plShablon4 для шаблонов «Вопрос + 2 варианта ответа», «Вопрос + 3 варианта ответа», «Вопрос + 4 варианта ответа» и «Вопрос + объект + 4 варианта ответа» соответственно). Непосредственно перед выводом панели определенного шаблона клиентское приложение с использованием процедуры Random (случайным образом) располагает варианты ответов в неизвестном для пользователя порядке. Ниже приведен фрагмент процедуры вывода вопроса RandomVar для шаблона 1 («Вопрос + 2 варианта ответа»):

5 Методика работы пользователя с программой.doc

— 2.22 Мб (Открыть, Скачать)

6 Экспериментальная часть.doc

— 102.50 Кб (Открыть, Скачать)

7 Защита данных.doc

— 74.50 Кб (Открыть, Скачать)

8 Организационно-экономическая часть.doc

— 144.00 Кб (Открыть, Скачать)

9 Санитарные нормы и правила.doc

— 46.50 Кб (Открыть, Скачать)

~$Анализ технического задания и возможных способов решения п.doc

— 162 байт (Скачать)

Введение.doc

— 44.00 Кб (Открыть, Скачать)

Заключение.doc

— 29.50 Кб (Открыть, Скачать)

Литература.doc

— 35.00 Кб (Открыть, Скачать)

Приложение А.doc

— 32.50 Кб (Открыть, Скачать)

Реферат.doc

— 30.50 Кб (Открыть, Скачать)

Содержание.doc

— 34.50 Кб (Открыть, Скачать)

Информация о работе Сетевая программа тестирования по дисциплинам