
- •2. Создание локальной концептуальной модели данных
- •Этап 1.1 .Определение типов сущностей
- •Этап 1.2. Определение типов связей
- •Этап 1.3. Определение атрибутов и связывание их с типами сущностей и связей
- •Этап 1.4. Определение доменов атрибутов
- •Этап 1.5. Определение атрибутов, являющихся потенциальными и первичными ключами
- •Этап 1.6. Обоснование необходимости использования понятий расширенного моделирования (необязательный этап)
- •Этап 1.7. Проверка модели на отсутствие избыточности
- •Этап 1.8 Проверка соответствия локальной концептуальной модели конкретным пользовательским транзакциям
- •Этап 1.9. Обсуждение локальных концептуальных моделей данных с конечными пользователями
- •Контрольные вопросы
- •Этап 2.1. Исключение особенностей, несовместимых с реляционной моделью (необязательный этап)
- •1 .Удаление двухсторонних связей "многие ко многим" (*:*)
- •2. Удаление рекурсивных связей "многие ко многим" (*:*)
- •3. Удаление сложных связей
- •4. Удаление многозначных атрибутов
- •Этап 2.2. Определение набора отношений, исходя из структуры локальной логической модели данных
- •1. Сильные типы сущностей
- •2. Слабые типы сущностей
- •3. Двухсторонние связи типа "один ко многим" {1:*}
- •4. Двухсторонние связи типа "один к одному" (1:1)
- •5. Рекурсивные связи "один к одному" (1:1)
- •6. Связи типа суперкласс/подкласс
- •7. Двухсторонние связи "многие ко многим" (*:*)
- •8. Сложные типы связей
- •9. Многозначные атрибуты
- •Этап 2.3. Проверка отношений с помощью правил нормализации
- •Этап 2.4. Проверка соответствия отношений требованиям пользовательских транзакций
- •Этап 2.5. Определение требований поддержки целостности данных
- •Этап 2.6. Обсуждение разработанных локальных логических моделей данных с конечными пользователями
- •2. Создание и проверка глобальной логической модели данных
- •Этап 3.1. Слияние локальных логических моделей данных в единую глобальную модель данных
- •1. Анализ имен и содержимого сущностей/отношений и их потенциальных ключей
- •2. Анализ имен и содержимого связей/внешних ключей
- •3. Слияние сущностей/отношений, соответствующих локальным моделям данных
- •4. Включение (без слияния) сущностей/отношений, характерных только для отдельных локальных моделей данных
- •5. Слияние связей/внешних ключей из отдельных локальных моделей данных
- •6. Включение (без слияния) связей/внешних ключей, характерных только для отдельных локальных моделей данных
- •7. Проверка того, нет ли пропущенных сущностей/отношений и связей/внешних ключей
- •8. Проверка внешних ключей
- •9. Проверка ограничений целостности
- •10. Формирование глобальной er-диаграммы/схемы отношений
- •11. Обновление документации
- •Этап 3.2. Проверка глобальной логической модели данных
- •Этап 3.3. Проверка возможностей расширения модели в будущем
- •Этап 3.4. Обсуждение глобальной логической модели данных с пользователями
- •Контрольные вопросы
- •2. Этапы физического проектирования Этап 4. Перенос глобальной логической модели данных в среду целевой субд
- •Этап 4.1. Проектирование основных отношений
- •Этап 4.2. Разработка способов получения производных данных
- •Этап 4.3. Реализация ограничений предметной области
- •Этап 5. Проектирование физического представления базы данных
- •Этап 5.1. Анализ транзакций
- •Этап 5.2. Выбор файловой структуры
- •Этап 5.3. Определение индексов
- •Этап 5.4. Оценка потребности в дисковом пространстве
- •Этап 6. Проектирование пользовательских представлений
- •Этап 7. Проектирование средств защиты
Контрольные вопросы
1. В чем заключается основная цель этапа концептуального проектирования базы данных?
2. Каковы основные этапы концептуального проектирования базы данных?
3. Как происходит выявление типов сущностей и связей исходя из спецификации требований пользователя?
4. Какой способ применяется для определения атрибутов на основе спецификации требований пользователя, а затем – для определения принадлежности этих атрибутов к конкретным типам сущностей или связей?
5. Для чего применяется процедура уточнения/обобщения типов сущностей? Почему этот этап концептуального проектирования базы данных является необязательным?
6. Опишите способы проверки избыточности модели данных. Приведите со-
ответствующий пример.
7. Поясните, с чем связана необходимость проверять концептуальную модель данных, и опишите два способа проверки концептуальной модели.
8. Для чего необходима документация, подготавливаемая на стадии концептуального проектирования базы данных?
Лекция 9. Методология логического проектирования баз данных
Цель лекции: Изучение методологии логического проектирования баз данных.
Время: 2 часа.
Учебные вопросы:
Создание локальной логической модели данных
Создание и проверка глобальной логической модели данных
1. Создание локальной логической модели данных
Напомним, что логическое проектирование баз данных представляет собой процесс конструирования на основе моделей данных отдельных пользователей общей информационной модели, которая является независимой от особенностей реально используемой СУБД и других физических условий.
В этой лекции рассматриваются следующие определяемые принятой методологией стадии логического проектирования баз данных для реляционной модели.
1. Создание и проверка локальной логической модели данных для отдельных пользовательских представлений.
1. Создание и проверка глобальной логической модели данных.
Целью первой стадии является создание локальной логической модели данных на основе локальной концептуальной модели, отражающей конкретное пользовательское представление о предметной области приложения, и проверка полученной модели с помощью методов нормализации и контроля выполнения транзакций.
На этой стадии каждая локальная концептуальная модель данных, созданная: на этапе 1, преобразуется в локальную логическую модель данных, состоящую из ER-диаграммы реляционной схемы и сопроводительной документации. Для упрощения этого процесса предусмотрен необязательный первый этап, на котором происходит устранение особенностей, которые не могут быть представлены непосредственно в реляционной модели (таких как связи "многие ко многим"). Полученная реляционная схема проверяется с использованием правил нормализации для определения того, является ли ее структура правильной. Проверяется также логическая модель, что позволяет убедиться в том, что она поддерживает все транзакции, указанные в спецификации требований пользователя. Проверенная локальная логическая модель данных может применяться в качестве основы для разработки прототипов, если в этом есть необходимость. Наконец, в модель вводятся ограничения целостности.
По завершении этой стадии должна быть получена правильная, полная и непротиворечивая модель представления. Если в приложении применяется только одно представление, то на этом этап логического проектирования базы данных, предусмотренная в методологии, заканчивается. А если имеется несколько представлений, должен быть выполнен еще один этап, на котором отдельные локальные логические модели данных объединяются в глобальную логическую модель данных организации.
На этой стадии выполняются следующие этапы.
1. Исключение особенностей, несовместимых с реляционной моделью (необязательный этап).
2. Формирование отношений на основе локальной логической модели данных.
3. Проверка отношений с использованием средств нормализации.
4. Проверка применимости отношений для выполнения пользовательских транзакций.
5. Определение ограничений целостности.
6. Согласование локальной логической модели данных с пользователем.