Case-метод Баркера
Нотацию ER-диаграммы впервые ввел П. Чен (Chen), а далее она развивалась в работах Баркера.
Сущностью является реальный или воображаемый объект, который имеет существенное значение для предметной области, информация о котором подлежит хранению.
Свойства сущности:
- каждой сущности должно быть дано уникальное имя;
- у сущности есть как минимум один атрибут, который принадлежит сущности или наследуется через связь;
- у сущности есть как минимум один атрибут, который однозначно идентифицирует каждый ее экземпляр;
- каждая сущность может иметь любое количество связей с другими сущностями данной модели.
Рассмотрим моделирование на примере фирмы, которая занимается продажей автомашин.
Сущностями, которые можно идентифицировать с главным менеджером, являются автомашины и продавцы. Для продавца важными являются автомашины и данные, которые связаны с их продажей. Для администратора важными будут контракты, автомашины, продавцы и покупатели. Таким образом, можно выделить 4 сущности (контракт, покупатель, продавец, автомашина), которые изобразим на диаграмме (рисунок 1).
Далее нужно идентифицировать связи.
Связью называют поименованную ассоциацию между двумя сущностями, значимую для рассматриваемой предметной области.
При создании связей каждому экземпляру одной сущности (родительской сущности) соответствует произвольное (может быть нулевым) количество экземпляров второй сущности (сущности-потомка), а каждому экземпляру сущности-потомка соответствует только один экземпляр сущности-родителя. Следовательно, экземпляр сущности-потомка может существовать лишь при наличии родительской сущности.
Связь может иметь имя в виде глагола, которое помещают возле линии связи. Имена связей между двумя сущностями должны быть уникальными. Графическое представление степени связи и обязательности показано на рисунке 2.
Опишем связи остальных сущностей (рисунок 4).
Моделирование завершается идентификацией атрибутов.
Атрибутом считают любую характеристику сущности, значимую для рассматриваемой предметной области и предназначенную для выражения состояния сущности, количественной характеристики, классификации, идентификации или квалификации.
Экземпляр сущности должен иметь единственное определенное значение для ассоциированного атрибута.
Атрибуты могут быть обязательными (обозначаются символом $*$) или необязательными (символ $\circ$). Обязательный атрибут не может принимать неопределенное значение.
Атрибуты могут быть описательными (обычные дескрипторы сущности) или входить в состав первичного ключа (уникального идентификатора).
Атрибуты, которые определяют первичный ключ, размещают вверху списка и выделяют символом $#$.
Каждая сущность должна иметь как минимум один возможный ключ.
Возможным ключом сущности является один или несколько атрибутов, значения которых позволяют однозначно определить каждый экземпляр сущности.
Если существует несколько возможных ключей, то один из них обозначают как первичный ключ, а остальные – как альтернативные.
Также модель данных, кроме основных конструкций, может состоять из дополнительных, которыми являются подтипы и супертипы (рисунок 7), взаимно исключающие связи (рисунок 8), рекурсивная связь (рисунок 9), неперемещаемые связи (рисунок 10).
Подход, который используется в CASE-средстве Vantage Team Builder
CASE-средство Vantage Team Builder использует один из вариантов нотации П. Чена. На ER-диаграммах сущность обозначают в виде прямоугольника, который содержит имя сущности (рисунок 11), а связь – в виде ромба, который связан линией с каждой из взаимодействующих сущностей. Степень связи показывают с помощью чисел над линиями.
Необязательной связью (рисунок 12) могут быть связаны не все экземпляры сущности.
В полной связи берут участие все экземпляры хотя бы одной из сущностей.
Обязательной связью описывается связь между "независимой" и "зависимой" сущностями.
Например, если у каждого автомобиля есть по крайней мере один водитель, но не каждый служащий может управлять машиной, будет изображено следующим образом (рисунок 13):
Приведем пример слабой связи (рисунок 14): номер (ключ) строки в документе не уникален и должен дополняться ключом документа.