Имя атрибута | Тип атрибута | Описание атрибута |
ID назначения | integer | Уникальный идентификатор назначения |
ID задачи | integer | Уникальный идентификатор задачи |
ID ресурса | integer | Уникальный идентификатор ресурса |
ID разработчика | integer | Уникальный идентификатор того, кому назначена задача |
ID назначающего | integer | Уникальный идентификатор того, кто назначил задачу |
Дополнительные сведения | string | Дополнительные сведения о задаче |
Дата назначения | date | Дата назначения задачи |
Крайний срок выполнения | date | Крайний срок, к которому задача должна быть выполнена |
Дата начала выполнения | date | Дата начала работ по выполнению |
Дата окончания выполнения | date | Дата окончания работ по выполнению |
Методы класса Назначенные задачи
Имя метода | Описание метода |
Назначить | Используется для назначения задачи по разработке ЭОР одному из сотрудников |
Редактировать | Используется для редактирования основных сведений о задаче |
Класс Категории ресурсов используется для хранения информации о категориях электронных образовательных ресурсов.
Атрибуты класса Категории ресурсов
Имя атрибута | Тип атрибута | Описание атрибута |
ID категории | integer | Уникальный идентификатор категории |
Наименование | string | Наименование категории |
Методы класса Категории ресурсов
Имя метода | Описание метода |
Добавить | Используется для добавления новой категории |
Удалить | Используется для удаления категории |
Редактировать | Используется для редактирования категории |
Класс Электронные образовательные ресурсы используется для хранения информации об электронных образовательных ресурсах.
Атрибуты класса Электронные образовательные ресурсы
Имя атрибута | Тип атрибута | Описание атрибута |
ID ресурса | integer | Уникальный идентификатор ресурса |
ID категории | integer | Уникальный идентификатор категории ресурса |
ID кафедры | integer | Уникальный идентификатор кафедры |
Наименование | string | Наименование ресурса |
Автор | string | Автор |
Город | string | Город, в котором проживает автор, написавший курс |
Описание | string | Описание ресурса, краткие сведения |
ID разработчика | integer | Уникальный идентификатор сотрудника, которому поручено разработать данный ресурс |
Дата публикации | date | Дата публикации данного ресурса на образовательном портале |
Методы класса Электронные образовательные ресурсы
Имя метода | Описание метода |
Добавить | Используется для добавления нового ресурса |
Удалить | Используется для удаления ресурса |
Редактировать | Используется для редактирования сведений о ресурсе |
Класс Кафедры служит для хранения информации о кафедрах белгородского филиала МЭСИ.
Атрибуты класса Кафедры
Имя атрибута | Тип атрибута | Описание атрибута |
ID кафедры | integer | Уникальный идентификатор кафедры |
Наименование | string | Наименование задачи |
Методы класса Кафедры
Имя метода | Описание метода |
Добавить | Используется для добавления новой кафедры |
Удалить | Используется для удаления кафедры |
Редактировать | Используется для редактирования кафедры |
Класс Отчеты служит для хранения сведений о выданных отчетах сотрудников.
Атрибуты класса Отчеты
Имя атрибута | Тип атрибута | Описание атрибута |
Номер | integer | Номер (уникальный идентификатор) отчета |
Наименование | string | Наименование (краткое описание) выдаваемого отчета |
ID сотрудника | string | Уникальный идентификатор сотрудника, которому выдается отчет |
Дата запроса | date | Дата запроса отчета |
Методы класса Отчеты
Имя метода | Описание метода |
Сгенерировать | Используется для выбора задач выполненных сотрудником за указанный период времени |
Сохранить | Используется для сохранения отчета |
Вывести | Вывод отчета на бумагу или в текстовый формат |
База данных (БД) — это особым образом организованный набор значений данных, а схема БД определяет, как именно организованы данные в БД. В процессе физического дизайна члены проектной команды создают схему БД, чтобы определить, что именно нужно создавать, о том же, какими инструментами это будет реализовываться, следует думать позже.
В процессе логического дизайна команда описывает сущности и атрибуты, которые будут храниться в БД, и то, как пользователи будут получать к ним доступ, оперировать ими и просматривать их. В процессе физического дизайна команда создает схему базы данных, которая представляет собой спецификацию по созданию, чтению, изменению и удалению используемых в продукте данных.
В результате исследования диаграмм использования и диаграммы классов, с учетом предметной области были выделены следующие сущности:
1.Категории ресурсов,
2.Электронные образовательные ресурсы (ЭОР),
3.Сотрудники,
4.Кафедры,
5.Задачи,
6.Назначенные задачи,
7.Отчеты.
Сущность «Сотрудники» используется для хранения информации о сотрудниках. Одному сотруднику может быть одновременно назначено несколько задач, поэтому между сущностями «Сотрудники» и «Назначенные задачи» - отношение «один ко многим». Кроме того, один и тот же сотрудник может разработать несколько образовательных ресурсов, поэтому сущности «Сотрудники» и «ЭОР» имеют отношение «один ко многим». Так же, один сотрудник может выводить несколько различных отчетов, поэтому сущности «Сотрудники» и «Отчеты» имеют отношение «один ко многим».
Сущность «ЭОР» используется для хранения информации об электронных образовательных ресурсах. Несколько образовательных ресурсов могут относиться к одной категории, поэтому между сущностями «Категории ресурсов» и «ЭОР» - отношение «один ко многим». Кроме того, несколько образовательных ресурсов могут одновременно относиться к одной кафедре, поэтому сущности «ЭОР» и «Кафедры» связаны отношением «один ко многим».
Сущность «Назначенные задачи» используется для хранения сведений о назначенных задачах. Существует определенный набор задач, которые выполняет сотрудник при разработке образовательных ресурсов, все эти задачи собраны в сущности «Задачи». Так как одновременно может быть назначено сразу несколько различных задач, то сущности «Задачи» и «Назначенные задачи» связаны отношением «один ко многим».
Сущность «Отчеты» служит для хранения сведений о выданных отчетах. Сотрудник имеет право получать много различных отчетов, поэтому между сущностями «Сотрудники» и «Отчеты» - отношение «один ко многим».
При проектировании структуры базы данных необходимо соблюдать законы нормализации БД.
Нормализация – это разбиение таблицы на две или более, обладающих лучшими свойствами при включении, изменении и удалении данных. Окончательная цель нормализации сводится к получению такого проекта базы данных, в котором каждый факт появляется лишь в одном месте, т.е. исключена избыточность информации. Это делается не столько с целью экономии памяти, сколько для исключения возможной противоречивости хранимых данных.
Теория нормализации основывается на наличии той или иной зависимости между полями таблицы. Определены два вида таких зависимостей: функциональные и многозначные.
Функциональная зависимость. Поле В таблицы функционально зависит от поля А той же таблицы в том и только в том случае, когда в любой заданный момент времени для каждого из различных значений поля А обязательно существует только одно из различных значений поля В. Отметим, что здесь допускается, что поля А и В могут быть составными.
Полная функциональная зависимость. Поле В находится в полной функциональной зависимости от составного поля А, если оно функционально зависит от А и не зависит функционально от любого подмножества поля А.
Многозначная зависимость. Поле А многозначно определяет поле В той же таблицы, если для каждого значения поля А существует хорошо определенное множество соответствующих значений В.
Этот процесс включает:
· устранение повторяющихся групп (приведение к 1НФ)
· удаление частично зависимых атрибутов (приведение к 2НФ)
· удаление транзитивно зависимых атрибутов (приведение к 3НФ).
Проведем нормализацию данных в рассматриваемой концептуальной модели.
Первая нормальная форма требует, чтобы каждое поле таблицы БД было неделимым, не содержало повторяющихся групп.
Вторая нормальная форма требует, чтобы все поля зависели от первичного ключа. Те поля, которые зависят только от части первичного ключа должны быть выделены в отдельные таблицы. Набор полей однозначно определяет одну запись.