- •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
3. Классические структуры и общие образцы 53
─────────────────────────────────────────────────────────────────
┌────────────────┐ ┌────────────────┐
│ КАТЕГОРИЯ │ │ КЛАССИФИКАТОР │
│ ПРОДУКТА ├┐в │ ПРОДУКТА ├┐в
│ ├┼┼─────── ─ ─ ─ ┤ ├┼ ─ ─ ┐
│ о дата от ├┘ для │ # * значение ├┘
│ о дата до │ │ * описание │ │
└──────┬┬┬───────┘ └───────────┬┬┬──┘
для└┼┘ состоит└┼┘ │
─┼─ из
определяется └ ─ ─ ─ ─ ─┘
│с помощью
┌────────────────┐
│ ПРОДУКТ │
│ │
│ # * код │
│ * описание │
└────────────────┘
Рис.3.18. Множество классификаций продуктов
Эта модель обслуживает возможность классифицировать продукт
многими способами в одно и тоже время. Она также допускает мно-
жество классификаций вне зависимости от времени. Связь "многие ко
многим" вокруг сущности КЛАССИФИКАТОР ПРОДУКТА обслуживает мно-
жество классификаций (обобщений) существующих классификаций.
Заметим, что связь "многие ко многим" является аналогичной
связи в случае с накладной на материалы, используемой в этом слу-
чае для классификаторов.
3.6. Типы сущности
В этой части книги темой для обсуждения являются некоторые
пути определения типов сущности.
Рассмотрим пример, показанный на рис.3.19.
┌───────────────────┐
│ A │
│ ┌─────────────┐ │
│ │ A1 │ │
│ └─────────────┘ │
│ ┌─────────────┐ │
│ │ A2 │ │
│ └─────────────┘ │
│ ┌─────────────┐ │
│ │ A3 │ │
│ └─────────────┘ │
└───────────────────┘
Рис.3.19. Подтипы сущности A
.
Информационно-логическое моделирование.
54 Модель "Сущность-Связь"
─────────────────────────────────────────────────────────────────
Сущность A имеет три взаимоисключающих подтипа A1, A2 и A3.
Это строго ограниченный механизм типирования, когда только три
типа допустимы для A, но он позволяет определять атрибуты и свя-
зи, которые являются специфичными для определенного подтипа.
Ниже показаны другие возможные пути задания типов.
Пример на рис.3.20 отражает простую классификацию, которая
используется для многих простых ситуаций.
┌─────────────────┐
│ │
│ A │
│ # * тип │
│ │
└─────────────────┘
Рис.3.20. Определение типов сущности через атрибут
Диаграмма на рис.3.21 также отражает простую классификацию и
является очень общей (распространенной) конструкцией.
┌──────────────┐ ┌──────────────┐
│ ├┐в │ │
│ A ├┼──────── ─ ─ ─ ─ ─│ ТИП A │
│ ├┘ для│ │
└──────────────┘ └──────────────┘
Рис.3.21. Задание типов с помощью сущности шаблонов
Пример на рис.3.22 отражает существование множество типов
для A, и даже одновременное существование нескольких типов.
┌──────────────┐определяеться ┌──────────────┐
│ СТАТУС ├┐с помощью │ ├┐в
│ ├┼┼──────────── ─ ─ ─ ─ ─ ─│ ТИП A ├┼ ─ ─ ┐
│ о дата от ├┘ быть класси-│ ├┘
│ о дата до │ фикатором│ │ │
└─────┬┬┬──────┘ для └───────┬┬┬────┘
для└┼┘ состоит└┼┘ │
─┼─ из
└ ─ ─ ─ ─ ─ ─┘
│в
┌──────────────┐
│ │
│ A │
│ │
└──────────────┘
Рис.3.22. Задание множества типов
.
