Разработка инфологической модели

 

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

Сущность – любой различимый объект (объект, который мы можем отличить от другого), информацию о котором необходимо хранить в базе данных. Сущностями могут быть люди, места, самолеты, рейсы, вкус, цвет и т.д. Необходимо различать такие понятия, как тип сущности и экземпляр сущности. Понятие тип сущности относится к набору однородных личностей, предметов, событий или идей, выступающих как целое. Экземпляр сущности относится к конкретной вещи в наборе. Например, типом сущности может быть СТУДЕНТ, а экземпляром – Тимченко, Зайчиков и т.д.

Атрибут – поименованная характеристика сущности. Его наименование должно быть уникальным для конкретного типа сущности, но может быть одинаковым для различного типа сущностей (например, ЗАПАХ может быть определен для многих сущностей: КАША, ДЫМ, СЕНО и т.д.). Атрибуты используются для определения того, какая информация должна быть собрана о сущности. Примерами атрибутов для сущности СОБАКА являются ПОРОДА, ЦВЕТ и т.д. Здесь также существует различие между типом и экземпляром. Тип атрибута ЦВЕТ имеет много экземпляров или значений (Белый, Рыжий, Черный и т.д.), однако каждому экземпляру сущности присваивается только одно значение атрибута.

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

Ключ – минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Минимальность означает, что исключение из набора любого атрибута не позволяет идентифицировать сущность по оставшимся. Для сущности Расписание_Вылетов ключом является атрибут Номер_рейса или набор: Пункт_отправления, Время_вылета и Пункт_назначения (при условии, что из пункта в пункт вылетает в каждый момент времени один самолет).

Связь – ассоциирование двух или более сущностей. Если бы назначением базы данных было только хранение отдельных, не связанных между собой данных, то ее структура могла бы быть очень простой. Однако одно из основных требований к организации базы данных – это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи. А так как в реальных базах данных нередко содержатся сотни или даже тысячи сущностей, то теоретически между ними может быть установлено более миллиона связей. Наличие такого множества связей и определяет сложность инфологических моделей.

Существует три типа связей между сущностями.

Связь «один к одному» (1:1) встречается редко. Например, у нас есть таблица с информацией о всех сотрудниках и таблица с информацией о всех торговых агентах, которые являются сотрудниками нашего предприятия. Записи в таких таблицах могут быть связаны отношением «один к одному».

Связь «один ко многим» (1:M или M:1) - наиболее распространенный тип связей. Например, один торговый агент может выписывать много счетов и т.п.

Очень часто используется и связь «многие ко многим» (M:M). Например, один покупатель может приобретать товары нескольких видов, и при этом товар одного вида может приобретаться разными покупателями. Обычно в СУБД возможности явно определить отношение «многие ко многим» нельзя, но это часто делается обходным способом. Например, сущности А и Б находятся в отношении «многие ко многим». В этом случае создается дополнительная сущность С, которая имеет либо составной ключ (состоящий из ключей А и Б), либо имеет свой ключ и 2 атрибута (ключи А и Б), сочетание которых уникально для сущности С. Тогда связи сущностей имеют вид

A ↔ С, тип связи 1:M

С ↔ B, тип связи M:1

что без особого труда реализуется в базах данных.

На рисунках 1-17 представлены выделенные сущности и их атрибуты. Прямоугольк – сущность, овал – атрибут. Овалы с подчеркнутыми именами – ключевые атрибуты.

Рисунок 1 – Определение сущности «Студент» в ER-модели

Рисунок 2 – Определение сущности «Студентческий билет» в ER-модели

 

Рисунок 3 – Определение сущности «Справка» в ER-модели

 

Рисунок 4 – Определение сущности «Группа» в ER-модели

 

Рисунок 5 – Определение сущности «Оплата» в ER-модели

 

Рисунок 6 – Определение сущности «Специальность» в ER-модели

Рисунок 7 – Определение сущности «Семестр» в ER-модели

 

Рисунок 8 – Определение сущности «Дисциплина» в ER-модели

 

Рисунок 9 – Определение сущности «Тип научной работы» в ER-модели

 

 

Рисунок 10 – Определение сущности «Научная работа» в ER-модели

 

 

Рисунок 11 – Определение сущности «Преподаватель» в ER-модели

 

Рисунок 12 – Определение сущности «Форма итогового контроля»

в ER-модели

 

Рисунок 13 – Определение сущности «Семестровая дисциплина»

в ER-модели

 

Рисунок 14 – Определение сущности «Пара» в ER-модели

 

Рисунок 15 – Определение сущности «Учебный день» в ER-модели

 

Рисунок 16 – Определение сущности «Аудитория» в ER-модели

 

 

Рисунок 17 – Определение сущности «Сессия» в ER-модели

 

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

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: