- •1. Базовые определения и соглашения
- •1.1. Определение и описание сущности
- •1.2. Определение и описание связи
- •1.3. Действительные и недействительные связи
- •1.4. Атрибуты
- •1.5. Уникальный (ключевой) идентификатор
- •1.6. Правила оформления er-диаграммы
- •1.7. Резюме
- •2. Дополнительные определения и соглашения
- •2.1. Подтипы сущностей
- •2. Дополнительные определения и соглашения 25
- •2. Дополнительные определения и соглашения 27
- •2.2. Дополнительные соглашения для сущностей
- •2. Дополнительные определения и соглашения 29
- •2.3. Исключающая дуга
- •2. Дополнительные определения и соглашения 31
- •2. Дополнительные определения и соглашения 33
- •2.4. Дополнительные соглашения для связей
- •2. Дополнительные определения и соглашения 35
- •2.5. Домены
- •2. Дополнительные определения и соглашения 37
- •2.6. Резюме
- •3. Классические структуры и общие образцы
- •3.1. Классические иерархические структуры
- •3. Классические структуры и общие образцы 39
- •3. Классические структуры и общие образцы 41
- •3. Классические структуры и общие образцы 43
- •3. Классические структуры и общие образцы 45
- •3.2. Сетевые структуры
- •3. Классические структуры и общие образцы 47
- •3.3. Изменения во времени
- •3. Классические структуры и общие образцы 49
- •3.4. Накладная на материалы
- •3. Классические структуры и общие образцы 51
- •3.5. Классификации и категории
- •3. Классические структуры и общие образцы 53
- •3.6. Типы сущности
- •3. Классические структуры и общие образцы 55
- •3.7. Общая модель для Заказов
- •3. Классические структуры и общие образцы 57
- •3.8. Общая модель для ролей и работ
- •3. Классические структуры и общие образцы 59
- •3.9. Продукция
- •3. Классические структуры и общие образцы 61
- •3. Классические структуры и общие образцы 63
- •3. Классические структуры и общие образцы 65
- •4. Нормализация данных 67
- •4. Нормализация данных
- •4. Нормализация данных 69
- •4. Нормализация данных 71
- •5. Оценка качества модели "Сущность-Связь" 73
- •5.1. Качество er-модели в конце этапа стратегии
- •5. Оценка качества модели "Сущность-Связь" 75
- •5. Оценка качества модели "Сущность-Связь" 77
- •5.2. Качество er-модели в конце этапа анализа
- •5. Оценка качества модели "Сущность-Связь" 79
- •5. Оценка качества модели "Сущность-Связь" 81
4. Нормализация данных 67
─────────────────────────────────────────────────────────────────
4. Нормализация данных
Нормализация данных является процедурой, которая гарантиру-
ет, что модель данных соответствует некоторым полезным стандар-
там. Для ER-моделей эти стандарты определяют минимум дубликатных
данных, обеспечивают необходимую гибкость для поддержки различных
функциональных требований, гарантируют перенос модели на широкое
множество альтернативных проектов БД.
ER-моделировние позволяет создавать сущности, которые обычно
являются нормализованными. Это обеспечивается следующими простыми
процессами, из которых состоит ER-моделирование:
1) Выявить важные объекты прикладной области, информацию о
которых необходимо знать и сохранять. Представить эти объекты
сущностями ER-модели, которые должны быть взаимно исключающими.
На ER-диаграмме сущности изобразить блоками с именами в верхней
части блока. Для именования сущностей необходимо использовать су-
ществительные в единственном числе.
2) Добавить к сущностям связи, которые представляют имено-
ванные важные ассоциации между сущностями. Связь на ER-диаграмме
изображается линией между двумя блоками; каждый конец имеет сте-
пень связности, показывающий сколько экземпляров сущностей участ-
вует в связи, и обязательность (пунктирная линия означает необя-
зательную связь, сплошная - обязательную).
3) Для каждой сущности определить список информационных
характеристик, которые нужно знать и сохранять. В ER-модели эти
характеристики являются атрибутами; на ER-диаграмме указать имена
атрибутов в нижних частях блоков соответствующих сущностей.
4) Наконец, выяснить, как каждый экземпляр сущности уникаль-
но идентифицируется. Уникальный идентификатор должен быть некото-
рой комбинацией атрибутов и/или связей. На ER-диаграмме атрибуты,
являющиеся частью уникального идентификатора, пометить знаком
"#", концы связей, входящие в уникальный идентификатор, отметить
чертой, пересекающей линию связи.
Описанный выше процесс ER-моделирования будет автоматически
давать нормализованную модель, но это справедливо тогда, когда
аналитик досконально понимает, что определенные им сущности, ат-
рибуты и связи являются реальными.
Информационно-логическое моделирование.
68 Модель "Сущность-Связь"
─────────────────────────────────────────────────────────────────
Три формальных правила для приведения ER-модели к Третьей
Нормальной Форме даны ниже, и их применение иллюстрируется диаг-
раммами.
* Нормализация
Для контроля того, что ER-модель, все сущности которой имеют
уникальный идентификатор, являются полностью нормализованной и,
таким образом, соответствует Третьей Нормальной Форме, можно ис-
пользовать приведенные ниже простые тесты.
Обязательным условием нормализации ER-модели является следу-
ющее:
2Все сущности ER-модели должны быть уникально идентифициро-
2ванны комбинацией атрибутов и/или связей.
* Первая нормальная форма
2Переместить повторяющие атрибуты или группы атрибутов.
Если для атрибута одновременно определено более одного
значения, или более одного атрибута имеют одинаковые имена, то
создается сущность, которая описывается этими атрибутами. Уни-
кальный идентификатор новой сущности включает один из атрибутов,
который мигрирует в нее и, возможно, связь "многие к одному" с
первоначальной сущностью.
Пример приведения сущности к Первой нормальной форме показан
на рис.4.1 (см. 1NF). Здесь перемещается группа атрибутов в новую
сущность ЧЛЕН ЭКИПАЖА, которая описывается атрибутами имя и роль
и связывается связью "многие к одному" с первоначальной сущностью
ПОЛЕТ.
Первая нормальная форма, таким образом, является механизмом
определения упущенных сущностей и связей.
* Вторая нормальная форма
2Переместить атрибуты, зависимые только от части уникального
2идентификатора.
Если сущность имеет уникальный идентификатор, состоящий из
более чем одного атрибута и/или связи, и другие атрибуты зависят
только от 2части 0 составного идентификатора, то эти атрибуты и
часть идентификатора, от которой они зависят, формируют базис для
новой сущности. Новая сущность присоединяется к первоначальной
сущности связью "один к многим" и уникально описывается мигриро-
.