Моделирование данных в нотации IDEF1x

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

Диаграммы «сущность-связь» (ERD) предназначены для разработки моделей данных и обеспечивают стандартный способ определения данных и отношений между ними.

Данный подход введен П.Ченом и усовершенствован Р. Баркером.

5.3.1 Базовые понятия ERD

Сущность (Entity) – реальный либо воображаемый объект, имеющий существенное значение для предметной области.

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

Каждая сущность должна обладать следующими свойствами:

· Иметь уникальное имя. К одному и тому же имени должна всегда применяться одна интерпретация; интерпретация не может применяться к различным именам, если только они не являются псевдонимами.

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

· Обладать одним или несколькими атрибутами, которые однозначно идентифицируют каждый экземпляр сущности.

· Каждая сущность может обладать любым количеством связей с другими сущностями модели.

Связь (Relationship) – поименованная ассоциация между двумя сущностями, значимая для предметной области.

Атрибут (Attribute) – любая характеристика сущности, значимая для предметной области и предназначенная для квалификации, идентификации, количественной характеристики или выражения состояния сущности. Атрибут представляет собой тип характеристик или свойств, ассоциированных со множеством реальных или абстрактных объектов (людей, мест, событий и т.п.). Экземпляр атрибута определяется типом характеристики и ее значением (значением атрибута). Экземпляр атрибута – определенная характеристика отдельного элемента множества. В ERD атрибуты ассоциируются с конкретными сущностями. Каждый экземпляр сущности должен обладать единственным определенным значением для ассоциированного атрибута[27].

5.3.2 Виды сущностей в IDEF1x

В методологии IDEF1x используются следующие виды сущностей:

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

Зависимая от идентификаторов (просто зависимая), если однозначная идентификация экземпляра сущности зависит от его отношения к другой сущности (рисунок 15).

Моделирование данных в нотации IDEF1x - student2.ru

Рисунок 15 – Виды сущностей в IDEF1x

Каждой сущности присваивается уникальное имя и номер, разделяемые косой чертой "/" и помещаемые над блоком.

5.3.3 Виды связей в IDEF1X

Связь может дополнительно определяться с помощью указания степени или мощности (количества экземпляров сущности-потомка, которое может существовать для каждого экземпляра сущности-родителя).

В IDEF1X могут быть выражены следующие мощности связей:

· каждый экземпляр сущности-родителя может иметь ноль, один или более связанных с ним экземпляров сущности-потомка;

· каждый экземпляр сущности-родителя должен иметь не менее одного связанного с ним экземпляра сущности-потомка;

· каждый экземпляр сущности-родителя должен иметь не более одного связанного с ним экземпляра сущности-потомка;

· каждый экземпляр сущности-родителя связан с некоторым фиксированным числом экземпляров сущности-потомка.

Кроме того связи подразделяются на:

Идентифицирующие, когда экземпляр сущности-потомка однозначно определяется своей связью с сущностью-родителем и неидентифицирующие, в противном случае.

Связь изображается линией, проводимой между сущностью-родителем и сущностью-потомком с точкой на конце линии у сущности-потомка. Мощность связи обозначается, как показано на рисунке 16 (мощность по умолчанию - N).

Моделирование данных в нотации IDEF1x - student2.ru

Рисунок 16 – Мощности связей

Идентифицирующая связь между сущностью-родителем и сущностью-потомком изображается сплошной линией (рисунок 17). Сущность-потомок в идентифицирующей связи является зависимой от идентификатора сущностью. Сущность-родитель в идентифицирующей связи может быть как независимой, так и зависимой от идентификатора сущностью (это определяется ее связями с другими сущностями).

Неидентифицирующую связь изображают пунктирной линией. Сущность-потомок в неидентифицирующей связи будет независимой от идентификатора.

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

Сущности могут иметь также внешние ключи (ForeignKey), которые могут использоваться в качестве части или целого первичного ключа или неключевого атрибута. Внешний ключ изображается с помощью помещения внутрь блока сущности имен атрибутов, после которых следуют буквы FK в скобках.

Моделирование данных в нотации IDEF1x - student2.ru

Рисунок 17 – Идентифицирующая связь

Кроме того, в IDEF1X вводится понятие “отношение категоризации”, по смыслу эквивалентное иерархической связи. Отношение полной категоризации (сущности-категории составляют полное множество потомков родительской сущности) обозначается:

Моделирование данных в нотации IDEF1x - student2.ru

Рисунок 18 – Связь полной категории в IDEF1x

Также может существовать отношение неполной категоризации (сущности-категории составляют неполное множество потомков общей сущности):

Моделирование данных в нотации IDEF1x - student2.ru

Рисунок 19 – Связь неполной категории в IDEF1x

Пример фрагмента схемы данных для банковской задачи приведен на рисунке 20.

Моделирование данных в нотации IDEF1x - student2.ru

Рисунок 20 – Фрагмент схемы данных для банковской задачи

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

Вопросы

1) Назначение ER-моделей. Связь между функциональной и ER-моделью.

2) Сущность. Виды сущностей.Атрибуты. Виды атрибутов.

4) Связи. Виды связей. Мощность связей. Миграция атрибутов.

5) Нормализация. Виды нормальных форм, требования к ним.

Дополнительная информация

1)http://www.mstu.edu.ru/study/materials/zelenkov/ch_2_4.html

2)http://www.metods-rgrtu.ru/index.php/metods0-999/356-94

3)http://denizzone.com/baset4r2part1.html

Наши рекомендации