Структура файла данных ANSWER.DB
Таблица 3.7
Структура файла данных CONTROL.DB
Таблица 3.8
Структура файла данных RESULT.DB
4. ОПИСАНИЕ ПРОГРАММНЫХ МОДУЛЕЙ
Разработанная универсальная обучающе-контролирующая система содержит следующие части:
1) программу для создания и модификации тестов;
2) сервисную программу настройки параметров контроля знаний, формирования билетов, просмотра и распечатки результатов тестирования;
3) программу контроля знаний
и предназначен для разработки, модификации и эффективного использования тестов в процессе обучения практически по любой дисциплине.
Описание основных принципов функционирования программ, входящих в состав системы, приведено ниже.
4.1 Описание программы создания и модификации тестов
Программа создания и модификации тестов, являясь составной частью универсальной обучающе-контролирующей системы, предназначена для создания и модификации контрольных вопросов, объединенных в разделы по тематическому признаку, а также таких разделов и предоставляет пользователю следующие возможности:
· создание, модификация и удаление тематических разделов;
· создание, модификация и удаление контрольных вопросов;
· создание для любого вопроса произвольного числа вариантов ответа;
· модификация и удаление вариантов ответа на вопрос.
Программа реализована на языке ObjectPascal в среде визуального программирования Delphi 2.0 фирмы BorlandInternational. Текст программы и используемых ею модулей приведен в прил.1.
Программой используются следующие файлы БД: Tema.db, Question.db, Answer.db. Схема связей файлов БД, используемая рассматриваемой программой, приведена на рис.4.1.
Рис.4.1. Схема связей файлов БД для программы создания тестов
Так как программа разрабатывалась в системе визуального программирования Borland Delphi в соответствии с принципом модульности, то в каждом модуле объявляется отдельный класс, который содержит данные и методы работы с ними а также методы работы с данными из других классов. Ниже приведены описания классов, используемых в рассматриваемой программе.
1. Класс TTreeForm ( модуль S2) ‑ отображает главное окно программы.
Переменные класса:
- x1,x2 - вспомогательные переменные;
- CreateMainForm - индикатор создания формы (True,если выполняется метод FormCreate).
Методы класса:
- AddDocButClick() - выполняет добавление нового контрольного вопроса в текущую тему;
- MainTreeClick() - изменяет положение указателей в файлах БД Tema.db,Question.db;
- DeleteButClick() - выполняет удаление текущего вопроса или темы;
- FullExpButClick() - производит полное раскрытие тематического дерева;
- FullColButClick() - выполняет полное сворачивание тематического дерева;
- ExitButClick() - производит закрытие программы;
- FormClose( ) - выполняет все необходимые действия перед закрытием программы;
- AddTemaButClick() - выводит диалог добавления новой темы;
- FormShow() - выполняет инициализацию данных при запуске программы;
- FormResize() - производит действия по изменению размеров объектов окна;
- FormCreate() - выполняет инициализацию переменных x1,x2;
- AppendQuestion() - добавляет в таблицу Question.db новый вопрос;
- ClearQuestion() - осуществляет логическое удаление текущего вопроса из БД.
2. Класс TEditForm (модуль DB_Unit) - отображает окно редактирования контрольных вопросов.
Переменные класса:
- x1,x2 - вспомогательные переменные.
Методы класса:
- FormClose( )- производит выход из программы;
- DBEditTemaChange() - сохраняет в БД изменения в названии темы;
- AddAnswerButClick() - добавляет новый вариант ответа на текущий вопрос;
- DelAnswerButClick() - удаляет текущий вариант ответа на вопрос;
- FormCreate() - выполняет инициализацию переменных;
- AppendAnswer() - производит добавление в БД нового ответа;
- ClearAnswer() - выполняет удаление из БД текущего ответа;
- FormResize() - изменяет размер объектов окна;
- MemoScrollResize() - изменяет размер объектов в области модификации ответов.
3. Класс TAnswer (модуль DBUnit) - отвечает за отображение вариантов ответа на вопрос.
Переменные класса:
- nocreate - индикатор создания объекта(False,если выполняется метод Create).
Методы класса:
- Create() - создает объект типа TAnswer;
- Free() - освобождает память занятую объектом;
- CheckClick() - заносит в файл БД Answer.db состояние флажка правильности ответа;
- MemoChange() - сохраняет текст ответа в файле БД Answer.db;
- DeleteAnswer() - производит перерисовку области вывода вариантов ответа на вопрос после удаления одного из ответов.
4. Класс TWinEditTema(модуль AddTema) - отображает диалог добавления новой темы.
Методы класса:
- butCancelClick() - добавляет новую тему в файл БД Teма.db.
- butOkClick() - закрывает диалог добавления новой темы.
4.2 Описание программы администрирования
Программа администрирования, являясь составной частью универсальной обучающе-контролирующей системы, предназначена для использования в сочетании с программой создания тестов и предоставляет пользователю следующие возможности:
· формирование билетов;
· задание времени ответа на вопросы билета;
· задание системы оценки результатов тестирования;
· просмотр и распечатка результатов (протокола) тестирования на принтере.
Программа реализована на языке ObjectPascal в среде визуального программирования Delphi 2.0 фирмы BorlandInternational. Текст программы и используемых ею модулей приведен в прил.2.
Программой используются следующие файлы БД: Control.db, Tema.db, Question.db, Tickets.db. Схема связей файлов БД, используемая рассматриваемой программой, приведена на рис.4.2.
Программа создает файл Test.ini и записывает в раздел Options следующие параметры:
Рис.4.2. Схема связей файлов БД для программы администрирования
Так как программа разрабатывалась в системе визуального программирования Borland Delphi в соответствии с принципом модульности, то в каждом модуле объявляется отдельный класс, который содержит в себе данные и методы работы с ними а также методы работы с данными из других классов. Ниже приведены описания классов, используемых в рассматриваемой программе.
1. Класс TAdminForm (модуль Main) ‑ отображает главное окно программы.
Переменные класса:
- CreateForm - индикатор создания формы (True,если выполняется метод FormCreate);
- IniFile - используется для работы с INI-файлом.
Методы класса:
- ShowHint() - отображает подсказку в строке состояния;
- DBControlCalcFields() - производит пересчет оценок в соответсвии с текущей системой оценки результатов;
- FormClose() - выполняет все необходимые действия перед закрытием программы;
- TestTimeChange() - сохраняет в файле TEST.INI значение параметра TestTime;
- MaxmarkChange() - сохраняет в файле TEST.INI значение параметра MaxMark;
- CreateTicketBtnClick() - выводит диалог параметров формирования билетов;
- FormShow() - открывает таблицы Question.db, Tema.db;
- QuitBtnClick() - завершает выполнение программы;
- CreateNewDBControl() - создаетновуютаблицу Control.db;
- ClearBtnClick() - очищает таблицу результатов тестирования;
- PrintBtnClick() - выводит на принтер таблицу с результатами тестирования.
2. Класс TCreateTickDlg(модуль TQDialog)
Методы класса:
- QuestCountEnter() - производит инициализацию переменных;
- OKBtnClick() - выполняет формирование билетов из контрольных вопросов заданной темы;
- FormClose() - закрывает файлы БД Question.db, Tema.db;
- FormShow() - считывает параметры TestTime и MaxMark из файла Test.ini.
4.3 Описание программы контроля знаний
Тестирующая оболочка, являясь составной частью универсальной обучающе-контролирующей системы, предназначена для контроля знаний по выбранной администратором системы дисциплине и предоставляет пользователю следующие возможности:
· просмотр вопросов билета в произвольном порядке;
· возможность ответа на вопросы в произвольном порядке;
· возможность корректировки ответов на вопрос.
Программа реализована на языке ObjectPascal в среде визуального программирования Delphi 2.0 фирмы BorlandInternational. Текст программы и используемых ею модулей приведен в прил.3.