
- •Реферат
- •Введение
- •1 Постановка задачи и анализ предметной области
- •1.1 Постановка задачи на разработку информационной системы
- •1.2 Функциональное моделирование бизнес-процессов предметной области
- •1.3 Моделирование потоков данных в предметной области
- •1.4 Построение исходной концептуальной модели данных предметной области
- •2 Проектирование информационной системы
- •2.1 Категории пользователей ис и их информационные потребности
- •2.2 Архитектура информационной системы
- •2.3 Логическая модель базы данных информационной системы
- •2.4 Пользовательский интерфейс приложения информационной системы
- •2.5 Требования к аппаратно-программному окружению информационной системы
- •2.6 Выбор технологий и средств разработки информационной системы
- •3. Разработка информационной системы
- •3.1 Физическое модель и реализация базы данных информационной системы
- •3.2 Серверная часть приложения информационной системы
- •3.3. Запросы клиентского приложения к базе данных
- •3.4 Кодирование клиентского приложения
- •3.5 Средства поддержки пользователя клиентского приложения
- •3.6 Тестирование клиентского приложения
- •Заключение
- •Список использованных источников
- •Приложение а (обязательное)
- •Приложение б
2 Проектирование информационной системы
2.1 Категории пользователей ис и их информационные потребности
На основе результатов, полученных на этапе анализа предметной области, были выделены следующие категории пользователей:
конфигуратор (администратор);
преподаватель (экзаменатор);
студент (экзаменуемый).
Для той категории пользователей студент (экзаменуемый) разрабатываемого клиентского приложения «Программный комплекс разработки универсальных тестов, проведения коллективного тестирования и индивидуальной оценки знаний: подсистема проведения тестирования» были определены следующие функции:
получение заданного конфигуратором теста;
возможность выбора вопроса;
переход к следующему вопросу и возвращение к предыдущему;
возможность дать ответ любого типа:
выбор одного правильного ответа;
выбор одного неправильного ответа;
выбором нескольких правильных ответов;
дать открытый ответ (задания свободного изложения, задания-дополнения);
завершение тестирования.
Возможные варианты использования приведены на рисунке 7.
Выбрать вопрос
Завершить тестирование


Рисунок 7 – диаграмма вариантов использования
Для студента (экзаменуемого) можно выделить следующие запросы:
По группе и паролю студента выбрать необходимый тест.
По наименованию теста определить преподавателя (экзаменатора), проводящего тестирование.
Добавить новую запись в таблицу текущего теста.
По наименованию теста выбрать необходимый вопрос.
Добавить новую запись в таблицу результатов.
Для заданной предметной области определены следующие ограничения:
значения всех числовых атрибутов больше нуля.
значения всех символьных атрибутов должны содержать прописные и строчные буквы кириллицы, латиницы, цифры, пробелы, точки, запятые или знаки тире.
2.2 Архитектура информационной системы
Архитектурно информационная система «Программный комплекс разработки универсальных тестов, проведения коллективного тестирования и индивидуальной оценки знаний» была разбита на 3 подсистемы – конфигуратора, преподавателя (экзаменатора), студента (экзаменуемого).
Подсистема «Конфигуратор» отвечает за создание новых тестов, создания списков преподавателей и студентов, выбор тестов для прохождения.
Подсистема «Преподаватель» позволяет экзаменующему общаться со студентами, проверять результаты (автоматически и, вручную, преподавателем).
Подсистема «Студент» предназначена для использования проходящими тестирование, так же она обеспечивает обратную связь с проводящими тестирование, что даёт возможность как задать вопросы, так и узнать о своих ошибках в некоторых заданиях и доработать их.
2.3 Логическая модель базы данных информационной системы
На основе результатов, полученных на этапе анализа предметной области и предыдущих шагах этапа проектирования, строим логическую модель базы данных с учетом задач каждого из приложений информационной системы (рисунок 8), при этом были выделены все необходимые сущности и атрибуты (таблица 2).
Рисунок 8 – Логическая модель информационной системы
Таблица 2 - Сущности информационной системы.
Имя сущности |
Описание |
TExaminator |
Содержит информацию о преподавателях (экзаменаторах) |
TExaminee |
Содержит информацию о студентах (экзаменуемых) |
TGroup |
Содержит список групп |
TSubject |
Содержит список предметов |
TTest |
Содержит список тестов по каждому предмету |
TQuestion |
Содержит список вопросов по каждому тесту |
TCurrentTest |
Содержит информацию о текущем тесте |
TPassedTest |
Содержит информацию и сданном тесте |
TResult |
Содержит информацию об ответе студента (тестируемого) на вопросы теста |
Таблица 2.1 – Отношение TExaminator (экзаменатора)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер экзаменатора |
not null |
PK |
Name |
символьный (varchar) |
ФИО экзаменатора |
not null |
|
Password |
двоичная строка переменной длины (bytea) |
Пароль экзаменатора для входа в подсистему |
not null |
|
Photo |
двоичная строка переменной длины (bytea) |
Фото экзаменатора |
|
|
Таблица 2.2 – Отношение TExaminee (экзаменуемого)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер экзаменуемого |
not null |
PK |
Name |
символьный (varchar) |
ФИО экзаменуемого |
not null |
|
Code |
символьный (varchar) |
Пароль экзаменуемого для входа в подсистему |
not null |
|
idGroup |
целый (integer) |
Идентификационный номер группы |
not null |
FK |
Таблица 2.3 – Отношение TGroup (группа)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер группы |
not null |
PK |
Name |
символьный (varchar) |
Наименование группы |
not null |
|
Таблица 2.4 – Отношение TSubject (предмет)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер предмета |
not null |
PK |
Name |
символьный (varchar) |
Наименование предмета |
not null |
|
Таблица 2.5 – Отношение TTest (тест)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер теста |
not null |
PK |
Name |
символьный (varchar) |
Наименование теста |
not null |
|
idSubject |
целый (integer) |
Идентификационный номер предмета |
not null |
FK |
Таблица 2.6 – Отношение TQuestion (вопрос)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер вопроса |
not null |
PK |
Name |
символьный (varchar) |
Наименование теста |
not null |
|
idTest |
целый (integer) |
Идентификационный номер теста |
not null |
FK |
Таблица 2.7 – Отношение TCurrentTest (текущий тест)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер текущего теста |
not null |
PK |
idTest |
целый (integer) |
Идентификационный номер теста |
not null |
FK |
idExaminator |
целый (integer) |
Идентификационный yомер экзаменатора |
not null |
FK |
idGroup |
целый (integer) |
Идентификационный номер группы |
not null |
FK |
idSubject |
целый (integer) |
Идентификационный номер предмета |
not null |
FK |
Таблица 2.8 – Отношение TPassedTest (пройденный тест)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер текущего теста |
not null |
PK |
idExaminee |
целый (integer) |
Идентификационный yомер экзаменатора |
not null |
FK |
idSubject |
целый (integer) |
Идентификационный номер предмета |
not null |
FK |
idTest |
целый (integer) |
Идентификационный номер теста |
not null |
FK |
idExaminator |
целый (integer) |
Идентификационный yомер экзаменатора |
not null |
FK |
Date |
дата (datestamp) |
Дата проведения теста |
not null |
|
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер ответа |
not null |
PK |
idQuestion |
целый (integer) |
Идентификационный номер вопроса |
not null |
FK |
Answer |
символьный (varchar) |
Ответ экзаменуемого |
not null |
|
Score |
целый (integer) |
Набранные баллы |
|
|
idPassedTest |
целый (integer) |
Идентификационный номер теста |
not null |
FK |
Таблица 2.8 – Отношение TResult (результаты тестирования)
Описание |
Тип данных |
Описание |
Ограничение |
Признак |
id |
целый (integer) |
Номер ответа |
not null |
PK |
idQuestion |
целый (integer) |
Идентификационный номер вопроса |
not null |
FK |
Answer |
символьный (varchar) |
Ответ экзаменуемого |
not null |
|
Score |
целый (integer) |
Набранные баллы |
|
|
idPassedTest |
целый (integer) |
Идентификационный номер теста |
not null |
FK |
Перечень запросов пользователей информационной модели к базе данных представлен в таблице 3.
Таблица 3 – Перечень запросов.
Запрос |
Параметры запроса |
Сущности |
Выборка экзаменуемых |
Наименование группы |
ФИО экзаменуемого (TExaminee.Name) |
Проверка пароля |
Пароль, ФИО экзаменуемого |
Пароль (TExaminee.Code) |
Выборка теста |
Номер теста |
Номер теста (TTect.id), наменование теста (Ttest.name) |
Выборка вопроса |
Номер вопроса |
Услуги |
Для уменьшения избыточности БД и возможности ее противоречий используют приведение к нормальным формам. По умолчанию реляционная модель имеет первую нормальную форму. Для приведения ко второй неоходимо выделить функциональные зависимости.
Так как каждое из приведенных отношений находится в третьей нормальной форме, то можно сказать, что вся модель соответствует третьей нормальной форме.