Организация входных и выходных данных

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

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

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

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

CloseOtvet - хранит предложенные варианты с указанием правильного на тестовые задания ТЗ закрытого типа Каждое тестовое задание идентифицируется своим кодом. Таблица с заданиями OpenClose содержит поле Kod типа Счетчик. Все остальные таблицы также содержат в качестве указателя на номер тестового задания поле Kod числового типа. На рисунке 4 показан конструктор таблиц Связи между таблицами отображены на рисунке 5. Как видим, используется связь между таблицами один-ко- многим, так как главная таблица OpenClose содержит задание, идентифицированное ключевым полем типа Счетчик, а каждая другая таблица содержим множество вариантов ответов на это задание Рисунок 4 Структура полей таблиц базы данных тестирования. Рисунок 5 Схема данных базы данных тестирования банка заданий по данной дисциплине Множество испытуемых студентов, учеников также хранится в иерархической базе данных. База данных имеет пять таблиц с определенными иерархическими связями Таблица Facultet содержит список факультетов академии университета таблица Groups содержит список групп университета.

Для каждой группы определена принадлежность к какому-либо факультету. таблица Students содержит список студентов академии университета. Для каждого студента определена его принадлежность к какой-либо группе. таблица Results содержит результаты тестирования каждого студента по всем пройденным им тестам.

Связь с таблицей Students осуществляется по коду студента в таблице Students. таблица ListTest содержит список тестов с указанием объема тестового набора с указанием пути к файлу с набором тестовых заданий базе данных теста. Рисунок 6 Схема базы данных Академия Таким образом, база данных университет представляет собой иерархически организованную структуру где самой главной таблицей является Facultet, подтаблицей является таблица Groups, таблица Students, в свою очередь является подчиненной к таблице Groups, а таблица Results является подчиненной к таблице Students.

На рисунке 6 показана таблица Facultet с раскрытыми подчиненными таблицами. Рисунок 7 Благодаря определенным связям из главной таблицы можно наблюдать записи в подчиненных таблицах.

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

Подключение к распределенной базе данных в программе производится с помощью настроечного файла iniTest.txt, в котором прописывается сетевой путь на базы тестирования и на базу данных Univer97.mdb. Схема взаимодействия программы с базой данных представлена на рисунке 8 Рисунок 8 Схема взаимодействия программы с базой данных DLL, являющаяся начинкой Jet, автоматически связываются с программой на Visual Basic во время выполнения.

Jet преобразует запросы от программы в физические операции над mdb- файлом или другим источником данных. 1.4.