Смекни!
smekni.com

Методические указания для курсового проектирования по дисциплине “ (стр. 5 из 18)

Если внешний ключ не является первичным ключом потомка, то он помещается под горизонтальной чертой, отделяющей первичный ключ от других атрибутов.

Если наследуемый атрибут принадлежит первичному ключу сущности - потомку, то он помещается над горизонтальной линией, блок сущности рисуется с закругленными углами.

Имена атрибутов являются грамматическими оборотами существительного.

Правила внешних ключей

1. Если сущность является потомком или категорией и связь с родителем является специфической, то она должна содержать отдельный внешний ключ.

2. Первичный ключ общей сущности должен наследоваться в качестве внешнего ключа для каждой сущности-категории.

3. Каждое присвоенное наследуемому атрибуту имя роли должно быть уникальное.

4.4. Процедуры моделирования ER-диаграммы

Сам процесс моделирования разбивается на пять стадий.

Стадия 1 – выполняется начальные действия при моделировании, во время которого устанавливается контекст, т.е. определяются масштаб проекта, план сбора данных, стандарты и т.д.

Стадия 2 – идентифицируются и определяются сущности.

Стадия 3 – идентифицируются и определяются соотношения между сущностями.

Стадия 4 – идентифицируются и определяются ключи.

Стадия 5 – идентифицируются и определяются неключевые атрибуты.

Стадия 1 – начало работы над проектом

Разрабатывается план моделирования, в котором указываются задания для выполнения и последовательность, в которой они должны выполняться.

На этой стадии выполняется планирование проекта: сбор данных, определение сущностей, определение отношений, определение ключевых атрибутов, заполнение неключевых атрибутов, проверка правильности модели и приемка модели.

План моделирования служит основой для распределения задания и оценки расходов на моделирование.

Стадия 2 - определение сущностей

Для предварительного определения сущностей в списке имен исходного материала выбираются все существительные. Можно также отобрать термины, в которых используются слова “код” и “номер”. Из оставшихся выбирают те слова, которые попадают в категорию объектов, о которых известна информация.

Для облегчения отделения сущностей от не сущностей разработчик должен задать себе вопросы, которые касаются каждой возможной сущности.

1. Может ли она быть описана, т.е. обладает какими-либо характерными особенностями?

2. Существует ли более одного экземпляра этой сущности?

3. Может ли один экземпляр этой сущности быть отделен от другого, т.е. идентифицирован?

4. Называет или описывает это что-либо? Если этот ответ положительный, то это скорее атрибут, чем сущность.

В конце такого анализа определяется начальный список сущностей, который будет содержать все известные на данный момент имена сущностей в контексте моделей.

В качестве примера можно привести существительные, используемые для описания модели на рис. 38: комитет, МУП, заявка, сводная заявка, наименование товара, цена, адрес, руководитель, поставщик, сотрудник, образование, должность, дата заявки, реквизиты банка и др. Выделенные жирным шрифтом слова соответствуют требованиям, указанным в пп.1-4. Оставшиеся слова можно использовать в качестве атрибутов.

На четвертом этапе некоторые сущности из этого списка могут быть исключены и добавлены новые.

.

Стадия 3 - определение отношений

На этой стадии отношения могут быть неспецифическими (М:М) и потребуется дополнительная детализация на последующих стадиях. Главным результатом второй стадии являются матрица отношений, определение отношений, диаграмма уровней сущности.

Первым шагом на второй стадии является выявление отношений между элементами различных сущностей, для чего строится матрица отношений в виде таблицы (рис.14).

Студент Предмет Лектор Аудитория Классные занятия
Студент
Предмет
Лектор
Аудитория
Классные занятия

Рис. 14. Матрица “сущность-отношение”

При наличии возможного отношения между сущностями в точке пересечения соответствующих осей помещается знак.

Не следует устанавливать чрезмерное количество отношений между сущностями. Следует иметь в виду, что с помощью этой матрицы вы описываете модель в терминах отношений “родитель-потомок”.

Следующим шагом является определение выявленных отношений, которые включают следующие компоненты:

1. Указание зависимостей.

2. Имя отношения.

3. Комментарии к отношениям.

В ходе определения отношений некоторые из них могут отбрасываться, а новые добавляться. При установлении зависимости отношений между двумя сущностями отношение должно быть проверено в обоих направлениях. Это делается посредством определения мощности на каждом конце отношений. Для определения мощности необходимо предположить существование экземпляра одной сущности, а затем уже определять, сколько экземпляров второй сущности может быть связано с первой. Затем следует повторить анализ, поменяв сущности ролями. После установления зависимости отношения разработчику надо задать имя отношения.

Стадия 4 - определение ключей

Цели стадии:

1. Детализация неспецифических отношений.

2. Определение ключевых атрибутов для каждой сущности.

3. Перемещение первичных ключей на установление внешних ключей.

На стадии 4 требуется избавиться от всех неспецифических отношений и включать появляющиеся при этом новые сущности и отношения в матрицу "сущность/отношение" (стадия 3).

Если на этапе 4 объем сущностей увеличится настолько, что трудно охватить в целом смысл модели, то ER-модель разбивается на отдельные функциональные сегменты моделируемой системы.

На четвертой стадии идентифицируются и определяются ключевые атрибуты (возможные первичные, альтернативные, внешние ключи).

Следует иметь в виду, что мигрировать может только первичный ключ, поэтому выбор ключевых атрибутов необходимо начинать с тех сущностей, которые не являются ни сущностью-потомком, ни сущностью-категорией.

Если первичный ключ сущности-потомка содержит все атрибуты внешнего ключа, то сущность-потомок называется зависимой от идентификатора относительно родительской сущности и отношение в этом случае называется идентифицирующим.

Если какие-либо атрибуты внешнего ключа не принадлежат первичному ключу сущности-потомка, то сущность-потомок является независимой от идентификатора относительно родительской сущности, а отношение называется не идентифицирующим.

Идентифицирующее отношение рисуется сплошной линией. Сущность-потомок в таком отношении называется зависимой и рисуется с закругленными углами.

Не идентифицирующее отношение рисуется пунктирной линией, и сущность-потомок называется независимой и рисуется с прямыми углами.

Один и тот же атрибут может порождать в одной и той же сущности-потомке более одного внешнего ключа. Если этот атрибут является внешним ключом для данной сущности-потомка и имеет одно и то же название, то к его имени добавляют имя роли.

Проверка правильности ключей и отношений

Идентификация и миграция ключей подчиняются следующим правилам:

1. Миграция ключей от родительских (или общих) сущностей к сущности-потомку (или категории) является обязательной.

2. Запрещается использовать атрибуты, которые могут принимать более одного значения для данного экземпляра сущности в одно и то же время.

3. Нельзя использовать атрибуты, которые обращаются в ноль, т.е. не принимают никакого значения для некоторого экземпляра сущности.

4. Сущности с составными ключами не могут быть разбиты на несколько сущностей с более простыми ключами.

После установления ключевых атрибутов необходимо составить определение атрибутов, которые включают имя атрибута, определение атрибута, синонимы атрибута.

Результат четвертой стадии оформляется в виде диаграммы функционального представления, которая изображает зависимые и независимые сущности, идентифицирующие и не идентифицирующие отношения, атрибуты внешних, альтернативных и первичных ключей.

Стадия 5 - определение атрибутов

Стадия 5 завершается стадией разработки модели и включает в себя:

1. Установление принадлежности атрибутов к сущности.

2. Определение не ключевых атрибутов.

3. Проверку правильности и детализацию структур данных.

В конце стадии 5 модель данных снабжается полным множеством определений и перекрестных ссылок для всех сущностей, отношений, ключевых и не ключевых атрибутов.

Если на четвертой стадии некоторые из имен атрибутов были признаны сущностями, то их необходимо исключить из списка атрибутов.

Затем необходимо произвести определение атрибутов, которое включают в себя имя атрибута, определение атрибута, синонимы атрибута.