Файл: Проектирование БД для контроля успеваемости школьников.pdf
Добавлен: 29.06.2023
Просмотров: 395
Скачиваний: 16
СОДЕРЖАНИЕ
1. Теоретические аспекты проектирования баз данных
1.1. Основные понятия баз данных и СУБД
1.2. Этапы разработки базы данных
2.1. Характеристика объекта исследования
2.2. Характеристика существующей технологии проверки успеваемости
2.3. Обоснование необходимости автоматизации
3.1. Выбор программных и технических средств
В Центре образования используется CMS «Joomla!». Она зарекомендовала себя как надежная, стабильная и масштабируемая система для поддержания электронного представительства на должном уровне. Рынок систем управления содержимым достаточно широкий, насчитывает более 150 различных систем. Существуют как бесплатные, так и платные системы, при этом бесплатные – не значит плохие или не полные по функциональности. [10, с.87]
Основные преимущества Joomla:
- повышенная продуктивность;
- удобство потребителя;
- удешевление процесса работы с контентом;
- кроссплатформенность;
- сокращение сроков разработки за счет используемых технологий Java;
- повышенная надежность и гибкость решений;
- открытый исходный код;
- бесплатная лицензия;
- большое количество справочной и технической документации;
- модульный характер всей системы в целом;
- наличие большого количества шаблонов, компонентов и модулей, расширяющих функционал системы. [11, с.57]
Требования к программному обеспечению клиентских компьютеров минимальны: любая операционная система, выход в Интернет и любой браузер: Internet Explorer, Opera, Mozilla FireFox, Google Chrome и другие.
Учитывая все вышесказанное, можно сделать вывод, что используемое программное обеспечение является хорошей, мощной базой для дальнейшей разработки и внедрения системы автоматизированного тестирования знаний учащихся.
Под техническим (аппаратным) обеспечением информационной системы понимается весь комплекс электронных, электрических и механических устройств, входящих в состав системы и/или сети, исключая программное обеспечение и хранимую информацию. В этот комплекс входят: компьютеры, периферийные устройства ввода/вывода и хранения информации, а также сетевое оборудование различных типов и энергетическое оборудование (батареи и аккумуляторы).
Требования к техническому обеспечению формировались исходя из аппаратных требований используемого программного обеспечения, и представлены в таблице 2. [13, с.97]
Таблица 2
Аппаратные требования информационной системы
Сервер |
Клиент |
|
Процессор |
2,0 ГГц (с архитектурой x64) |
1,6 ГГц |
ОЗУ |
2 ГБ |
512 МБ |
Видеокарта и монитор |
монитор SVGA (с минимальным разрешением 1024х768 точек) |
|
Жесткий диск |
120 Гб |
100 МБ (кеш) |
Оптический привод |
DVD-ROM |
- |
Устройства ввода |
клавиатура и мышь |
|
Интернет-соединение |
Постоянный канал, Скорость 10 мбит/с. |
Скорость 512 кбит/с. |
Анализ аппаратных требований дает основание утверждать, что существующих средств технического обеспечения для функционирования создаваемой информационной системы тестирования учащихся достаточно, необходимости модернизации и замены нет.
3.2. Описание таблиц базы данных
ER-модель базы данных представлена на рис.6.
Рассмотрим подробнее структуру каждой таблицы базы данных.
Таблица «Test» служит для хранения информации о тестах, внесенных в систему. Средний объем записей – 60.
Таблица 3
Структура таблицы «Test»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Идентификатор теста |
TestId |
число |
10 |
Первичный ключ |
Название теста |
TestName |
cтрока |
255 |
|
Идентификатор предмета |
SubjectId |
число |
10 |
|
Создатель теста |
CreatedBy |
число |
10 |
|
Дата создания |
Created |
дата-время |
20 |
|
Редактор теста |
ModifiedBy |
число |
10 |
|
Дата изменения |
Modified |
дата-время |
20 |
|
Статус теста |
Status |
число |
10 |
|
Общее время теста |
TotalTime |
число |
10 |
|
Проходной балл |
PassedScore |
число |
10 |
|
Количество вопросов |
QuestionCount |
число |
10 |
|
Время на вопрос |
QuestionTime |
число |
10 |
|
Описание |
Description |
текст |
||
Пропуск вопроса |
CanSkip |
кор. число |
1 |
|
Случайный порядок |
RandomQuestion |
кор. число |
1 |
|
Время между попытками |
LagTime |
число |
10 |
|
Количество попыток |
AttemptCount |
число |
10 |
|
Уведомление по email |
AdminEmail |
текст |
Рис.6. ER-модель базы данных
Таблица «TestSubject» служит для хранения предметов, по которым проводится тестирование. Средний объем записей – 20.
Таблица 4
Структура таблицы «TestSubject»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
||
Идентификатор предмета |
CategoryId |
число |
10 |
Первичный ключ |
||
Название предмета |
CategoryName |
cтрока |
255 |
|||
Описание |
Description |
текст |
||||
Дата создания |
Created |
дата-время |
20 |
|||
Создатель |
CreatedBy |
число |
10 |
|||
Дата изменения |
Modified |
дата-время |
20 |
|||
Редактор |
ModifiedBy |
число |
10 |
Таблица «TestQuestion» служит для хранения идентификаторов вопросов, внесенных в систему тестирования. Средний объем записей – 900.
Таблица 5
Структура таблицы «TestQuestion»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Идентификатор вопроса |
QuestionId |
число |
10 |
Первичный ключ |
Идентификатор теста |
TestId |
число |
10 |
|
Идентификатор версии |
QuestionVersionId |
длин. число |
20 |
|
Дата создания |
Created |
дата-время |
||
Создатель |
CreatedBy |
число |
10 |
|
Дата изменения |
Modified |
дата-время |
||
Редактор |
ModifiedBy |
число |
10 |
|
Статус |
Status |
число |
10 |
|
Порядок показа |
QuestionIndex |
число |
10 |
Таблица «TestQuestionCategory» служит для хранения категорий вопросов для каждого теста. Средний объем записей – 180
Таблица 6
Структура таблицы «TestQuestionCategory»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Идентификатор категории |
QuestionCategoryId |
число |
10 |
Первичный ключ |
Идентификатор теста |
TestId |
число |
10 |
|
Название категории |
CategoryName |
cтрока |
255 |
|
Описание |
Description |
текст |
||
Дата создания |
Created |
дата-время |
20 |
|
Создатель |
CreatedBy |
число |
10 |
|
Дата изменения |
Modified |
дата-время |
20 |
|
Редактор |
ModifiedBy |
число |
10 |
|
Количество вопросов |
QuestionCount |
число |
10 |
|
Время на вопрос |
QuestionTime |
число |
10 |
|
Случайный порядок |
RandomQuestion |
кор. число |
1 |
|
Статус |
Status |
число |
10 |
Таблица «TestAccess» хранит информацию о доступе к конкретным тестам конкретных групп пользователей (классов). Средний объем записей – 240.
Таблица 7
Структура таблицы «TestAccess»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Идентификатор теста |
TestId |
число |
10 |
Первичный ключ |
Идентификатор группы |
GroupId |
число |
10 |
Первичный ключ |
Описание |
Description |
строка |
255 |
Таблица «TestQuestionVersion» хранит детальную информацию о вопросе, историю изменений вопроса. Средний объем записей – 2250.
Таблица 8
Структура таблицы «TestQuestionVersion»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
|
Идентификатор версии |
QuestionVersionId |
число |
10 |
Первичный ключ |
|
Идентификатор вопроса |
QuestionId |
число |
10 |
||
Идентификатор категории |
QuestionCategoryId |
число |
10 |
||
Время ответа на вопрос |
QuestionTime |
число |
10 |
||
Идентификатор типа |
QuestionTypeId |
число |
10 |
||
Вопрос |
Question |
текст |
|||
Дата создания |
Created |
дата-время |
20 |
||
Создатель |
CreatedBy |
число |
10 |
||
Дата изменения |
Modified |
дата-время |
20 |
||
Редактор |
ModifiedBy |
число |
10 |
||
Данные (код) |
Data |
текст |
|||
Балл за верный ответ |
Score |
число |
10 |
Таблица «TestQuestionType» хранит информацию о задаваемых типах вопросов. Объем записей – 3.
Таблица 9
Структура таблицы «TestQuestionType»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Идентификатор типа |
QuestionTypeId |
число |
10 |
Первичный ключ |
Тип вопроса |
QuestionType |
cтрока |
255 |
|
Класс вопроса |
ClassName |
cтрока |
255 |
|
Выбор по умолчанию |
Default |
кор. число |
1 |
|
Наличие шаблона |
CanHaveTemplate |
кор. число |
1 |
Таблица «TestQuestionTemplate» хранит информацию о шаблонах оформления вопросов. Средний объем записей – 10.
Таблица 10
Структура таблицы «TestQuestionTemplate»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
Идентификатор шаблона |
TemplateId |
число |
10 |
Первичный ключ |
Название шаблона |
TemplateName |
cтрока |
255 |
|
Идентификатор типа |
QuestionTypeId |
число |
10 |
|
Данные (код) |
Data |
текст |
||
Дата создания |
Created |
дата-время |
||
Создатель |
CreatedBy |
число |
10 |
|
Дата изменения |
Modified |
дата-время |
||
Редактор |
ModifiedBy |
число |
10 |
Таблица «TestStatistics» хранит детальную информацию об ответах пользователя на конкретный вопрос конкретного теста. Средний объем записей – 1500000.
Таблица 11
Структура таблицы «TestStatistics»
Наименование поля |
Идентификатор поля |
Тип поля |
Длина поля |
Прочее |
|
Идентификатор статистики |
StatisticsId |
длинное число |
10 |
Первичный ключ |
|
Идентификатор версии |
QuestionVersionId |
число |
10 |
||
Идентификатор попытки |
StatisticsInfoId |
длинное число |
20 |
||
Данные (код) |
Data |
текст |
|||
Дата/время выдачи вопроса |
StartDate |
дата-время |
20 |
||
Дата/время ухода с вопроса |
EndDate |
дата-время |
20 |
||
Дата/время пропуска вопроса |
SkipDate |
дата-время |
20 |
||
Количество пропусков |
SkipCount |
число |
10 |
||
Потрачено времени на вопрос |
UsedTime |
число |
10 |
||
№ п/п вопроса |
QuestionIndex |
число |
10 |
||
Набрано баллов |
Score |
число |
10 |
||
Время для ответа |
QuestionTime |
число |
10 |
||
Идентификатор категории |
QuestionCategoryId |
число |
10 |
||
IP адрес |
IpAddress |
число |
10 |