
- •7.1.2. Концептуальное, логическое и физическое проектирование базы данных
- •7.1.3.Важнейшие факторы успешного завершения проектирования базы данных
- •7.2. Общий обзор процедуры проектирования базы данных
- •Концептуальное проектирование базы данных
- •Логическое проектирование базы данных (для реляционной модели)
- •Физическое проектирование базы данных (с использованием реляционной субд)
- •Документирование типов сущностей
- •Определение кардинальности связей и ограничений, накладываемых на его участников
- •Атрибуты простые и составные
- •Производные атрибуты
- •Документирование атрибутов
- •Документирование первичных и альтернативных ключей
Определение кардинальности связей и ограничений, накладываемых на его участников
Установив связи, которые будут иметь место в создаваемой модели, необходимо определить кардинальность каждой из них. Каждая связь может иметь кардинальность либо "один к одному" (1:1), либо '"один ко многим" (1:М), либо "многие ко многим" (М:М) (см. раздел 5.2,1). Если известны конкретные значения кардинальности или хотя бы верхний или нижний предел этих значений, то эту информацию обязательно нужно зафиксировать в документации. Кроме того, следует проанализировать степень участия каждой из сущностей в конкретном типе связи. Степень участия может быть либо полной (тотальной), либо частной (см. раздел 5.2.2).
Модель, включающая сведений о кардинальности связей и степени участия в ней сторон, более наглядно отражает смысл установленных связей. Кроме того, кардинальность связи и степень участия в ней сторон представляют собой определенные ограничения, используемые для проверки и поддержания качества данных в базе. Эти ограничения являются теми утверждениями о свойствах экземпляров сущностей, которые могут быть проверены при изменении данных в базе с целью определения того, вызовут ли данные изменения нарушение установленных правил.
Документирование типов связей
После определения отдельных типов связей им присваиваются осмысленные имена, которые должны быть понятны пользователям. Кроме того, мы рекомендуем помещать в словарь данных развернутое описание каждой связи, включающее сведения о кардинальности и степени участия ее членов.
Использование средств ER-моделирования
Работа существенно упрощается, если сложная система помимо обширного текстового описания имеет и некоторое визуальное представление. Для представления сущностей и связей между ними обычно используются диаграммы "сущность-связь" (ER-диаграммы).
Мы рекомендуем самое широкое использование ER-диаграмм на всех этапах проектирования базы данных. Это позволит всегда иметь под рукой наглядный образ моделируемой части предприятия.
Этап 1.3. Определение атрибутов и связывание их с типами сущностей и связей
Цель Связывание атрибутов с соответствующими типами сущностей или связей.
На следующем этапе предлагаемой методологии необходимо выявить все данные, описывающие сущности и связи, выделенные в создаваемой модели базы данных. Воспользуемся тем же методом, который применялся нами для идентификации сущностей; выберем все существительные и содержащие их фразы, присутствующие в спецификациях на проект- Выбранное существительное представляет атрибут в том случае, если оно, описывает свойство, качество, идентификатор или характеристику некоторой сущности или связи (см. раздел 5.1.2).
Самым простой метод выделения атрибутов — после идентификации очередной сущности или связи в некоторой спецификации задать себе следующий вопрос:
"Какую информацию требуется хранить о...". Ответ на этот вопрос надо искать в тексте спецификации. В некоторых случаях может оказаться полезным попросить пользователей уточнить их требования, К сожалению, пользователи часто дают ответы, содержащие избыточные концепции, поэтому каждый полученный ответ пользователя подлежит самому строгому анализу.