
- •Министерство образования Российской Федерации
- •Базы данных Методические указания
- •1 Уровни представления данных
- •2 Построение концептуальной модели предметной области
- •3 Методология инфологического проектирования idef1x
- •3.1 Основные элементы lDeFlX-диаграммы
- •3.2 Построение мифологической модели
- •3.2.1 Определение сущностей
- •3.2.2 Определение зависимостей между сущностями
- •3.2.3 Определение альтернативных ключей
- •3.2.4. Связи категоризации
- •3.3 Средство автоматизации разработки концептуальной, додели предметной области eRwin
- •3.3.1 Создание сущностей и связей между ними
- •3.3.2 Определение атрибутов
- •3.3.3 Определение характеристик связи
- •3.3.4 Другие возможности системы eRwin
- •3.3.5 Пример построения ideFlX-диаграммы
- •4. Логическое проектирование
- •4.1. Обоснование необходимости нормализации.
- •4.2 Нормальные формы отношений
- •4.3 Нормализация через декомпозицию
- •Idef1x – диаграмма
- •Содержание курсового проекта
3.2.3 Определение альтернативных ключей
Альтернативный ключ - это атрибут (или группа атрибутов), не совпадающий с первичным ключом и уникально идентифицирующий экземпляр сущности.
Например, для сущности ГРУППА каждый из атрибутов ФИО_старосты и ФИО_куратора может являться альтернативным ключом.
Для альтернативного ключа, как и для первичного, должны создаваться индексы при генерации БД.
3.2.4. Связи категоризации
Некоторые сущности определяют целую категорию объектов одного типа. В IDEF1X в таком случае создается сущность для определения категории и для каждого элемента категории, а затем вводится для них связь категоризации. Родительская сущность категории называется супертипом, а дочерние - подтипом (рис. 6),
Например, сущность СОТРУДНИК может содержать данные как о преподавателях, так и об инженерах. Первые и вторые имеют различные, частично пересекающиеся наборы атрибутов (минимальное пересечение подтипов составляет первичный ключ). Общая часть этих атрибутов (табельный номер, ФИО, адрес, телефон, дата рождения), включая первичный ключ, помещается в сущность-супертип СОТРУДНИК. Различная часть (например стаж преподавания для преподавателя и стаж работы для инженера и т.п.) помещается в сущности-подтипы.
В
сущности–супертипа вводится
атрибут-дискриминатора
(например,
Тип_ служащего), позволяющий различать
конкретные экземпляры сущности-подтипа.
Рис. 6 Пример связи неполной категоризации
В зависимости от того, все ли возможные сущности-подтипы включены в модель, категорийная связь является полной или неполной.
Рассмотренная на рис. 6 связь является связью неполной категоризации.
Если же супертип СЛУЖАЩИЙ содержит данные о прочих служащих, то это связь полной категоризации (рис. 7).
Полная категория изображается окружностью с двумя подчеркиваниями, а неполная - окружностью с одним подчеркиванием.
Р
ис.7
Пример связи полной категоризации
3.3 Средство автоматизации разработки концептуальной, додели предметной области eRwin
Система ERwin предназначена для автоматизации проектирования концептуальной модели предметной области согласно методологии IDEF1X.
П
осле
запуска на экране появляется основное
окно системы (рис. 8), в котором и строится
IDEFlX-диаграмма.
Рис. 8 Окно системы ERwin
Процесс построения информационной модели состоит из следующих шагов:
- определение сущностей;
- определение зависимостей между сущностями;
задание первичных и альтернативных ключей;
определение атрибутов сущностей;
приведение модели к требуемому уровню нормальной формы.
3.3.1 Создание сущностей и связей между ними
Основные инструменты создания модели присутствуют как в меню, так и в расположенной в главном окне системы панели инструментов.
Р
ассмотрим
создание диаграммы с помощью панели
инструментов ERwin
Toolbox
(рис. 9). С помощью этого окна можно создать
независимые и
зависимые сущности, идентифицирующие
и не идентифицирующие связи, полные и
неполные категории, неспецифические
связи и текстовые элементы.
Рис. 9 Панель ERwin Toolbox
Рассмотрим кнопки панели более подробно (нумерация кнопок слева направо и сверху вниз).
Кнопка 1.1 (стрелка) используется для перехода в режим выбора пунктов меню или объектов диаграммы для копирования, удалений или редактирования.
Кнопка 2.1 (рука) копирует или перемещает один или более выбранных атрибутов из одной сущности в другую или в пределах той же самой сущности.
В данном режиме вы можете:
изменить положение одного ключевого атрибута или группы ключевых атрибутов внутри одной сущности;
изменить положение одного не ключевого атрибута или группы не ключевых атрибутов внутри одной сущности;
перетащить один или более ключевых атрибутов в не ключевые атрибуты внутри одной сущности;
перетащить один или более не ключевых атрибутов в ключевые атрибуты внутри одной сущности;
перетащить или скопировать один или более атрибутов из одной сущности в другую.
Для выделения группы атрибутов, в сущности, используется мышь в сочетании с клавишами Ctrl или Shift.
По умолчанию осуществляется перенос атрибутов из одной сущности в другую.
Для копирования атрибутов достаточно процесс их перетаскивания мышью осуществлять при нажатой клавише Ctrl.
Кнопка 1.2 (прямоугольник) используется для добавления в диаграмму новой независимой сущности. Для создания сущности необходимо выбрать кнопку 1.2, после чего щелкнуть мышкой в том месте диаграммы, где планируете расположить данную сущность. После размещения сущности в диаграмме ее легко можно переместить мышью в другое место.
Перед созданием новых сущностей можно предварительно установить характеристики создаваемых сущностей, которые будут устанавливаться по умолчанию.
Для задания размеров прямоугольника сущности используется команда Entity Size... из пункта основного меню Option. В результате на экране появится диалоговый блок, в котором можно определить высоту и ширину прямоугольника сущности. Практическое значение имеет только ширина прямоугольника.
Для определения цвета и шрифтов объектов диаграммы служит команда Default Font/Color… из пункта основного меню Option. В результате на экране появится диалоговый блок, в котором можно определить цвета и шрифты для сущностей, связей, ключевых и не ключевых атрибутов и т.п.
В качестве шрифта, поддерживающего кириллицу, можно предложить шрифт TimesET.
Кнопка 2.2 (прямоугольник с закругленными краями) применяется для добавления в диаграмму новой зависимой сущности. .
Кнопка 1.3 (кружочек, подчеркнутый двумя линиями) служит для определения между двумя сущностями связи полной категоризации.
Для создания связи выбирается соответствующая кнопка на панели инструментов, затем мышью выделяется сущность-супертип, затем сущность-подтип.
Кнопка 2.3 (кружочек, подчеркнутый одной линией) используется для определения между двумя сущностями связи неполной категоризации.
Кнопка 1.4 (сплошная линия с точкой на конце) применяется для определения между
двумя сущностями идентифицирующей связи.
Кнопка 2.4 (пунктирная линия с точкой на конце) служит для определения между двумя сущностями не идентифицирующей связи.
Кнопка 1.5 (сплошная линия с точками на обоих концах) используется для определения между двумя сущностями связи “многие-комногие”.
Кнопка 2.5 (буква Т) применяется для создания в диаграмме текстового блока. Текстовый блок может употребляться в диаграмме для создания примечаний, заголовков, надписей и т.п.