Научная электронная библиотека
Монографии, изданные в издательстве Российской Академии Естествознания

3.2. Модель «сущность – связь»

Перед тем, как приступить к созданию автоматизированной системы обработки информации, необходимо формирование понятий о событиях, фактах и предметах, которыми будет оперировать разрабатываемая система. Для того чтобы привести эти понятия к определенной модели данных, необходимо их заменить соответствующими информационными представлениями. Наиболее удобным инструментом такого представления данных, вне зависимости от реализующего его ПО, является модель «сущность-связь» (entity – relationship model, ER-model), основывающаяся на семантической информации о реальном мире и предназначающаяся для логического представления данных.

ER-модель определяет значения одних данных в зависимости от других данных. Важно, что из модели «сущность – связь» можно получить все существующие модели данных (иерархическую, сетевую, реляционную и объектную).

При этом необходимо отметить, что модель «сущность – связь» не является моделью данных, так как не определяет операций над данными и ограничивается описанием только их логической структуры.

Модель «сущность – связь» предложил Питер Пин-Шэн Чен (Сhen) в 1976 г. В дальнейшем многие авторы предложили свои варианты подобной модели (нотации Мартина, IDEF1X, Баркена и др.)..

Далее будет использован некоторый гибрид нотаций Чена (сущности, связи и атрибуты) и Мартина (степени и кардинальности связей). В табл. 3.1 приведен перечень используемых в этом случае обозначений.

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

Сущность entity (класс объектов) – это совокупность объектов, обладающих одинаковым набором свойств.

Каждая сущность обладает следующими свойствами:

● сущность имеет уникальное имя, к одному имени применяется одна и та же интерпретация, которая не может применяться
к различным именам, кроме случаев, когда они являются псевдонимами/синонимами;

● сущность обладает атрибутами (одним или несколькими), которые или принадлежат сущности, или наследуются через связь;

● сущность обладает атрибутами (одним или несколькими), которые однозначно определяют каждый экземпляр сущности;

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

Таблица 3.1

Графические обозначения

Обозначение

Значение

missing image file

Независимая сущность

missing image file

Зависимая сущность

missing image file

Атрибут

missing image file

Ключевой атрибут

missing image file

Связь

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

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

Пример. Если в качестве предметной области рассматривать вуз, то в ней можно выделить следующие сущности: обучаемые, преподаватели, сотрудники, аудитории, дисциплины и т.п. Для объекта класса ЛИЧНОСТЬ В ВУЗЕ таким набором свойств могут быть год рождения, образование, ученая степень, иностранный язык, адрес и т.п.

При построении ИМ можно использовать язык ER-диаграмм, но чаще применяется более содержательный язык инфологического моделирования (ЯИМ), который представляет сущности предложениями следующего вида:

СУЩНОСТЬ (атрибут 1, атрибут 2, ..., атрибут n).

Пример:

ЛИЧНОСТЬ (табельный номер, фамилия, имя, отчество, возраст).

Атрибут может быть описательным (дескриптором сущности) или входить в состав первичного ключа (уникального идентификатора).

Ключ сущности (уникальный идентификатор) –атрибут или множество атрибутов и/или связей, который предназначен для однозначной идентификации каждого экземпляра данного типа сущности.

В системах обработки данных используется следующая гипотеза, а именно: каждый объект в наборе объектов различим (т.е. его описание отличается от описания других объектов). В соответствии с этой гипотезой каждая сущность имеет ключ.

В рассмотренном выше примере атрибут табельный номер является ключом сущности ЛИЧНОСТЬ В ВУЗЕ (конечно если все табельные номера в вузе уникальны).

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

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

У одного и того же набора объектов может оказаться несколько ключей. Один из них назначают первичным ключом набора объектов, и служит в дальнейшем ключом соответствующего этому набору файла (его еще называют ключом записи, кортежа). Все остальные ключи набора в этом случае называют возможными ключами.

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

Диаграмма «Сущность – атрибут». Связь между объектом и его свойством может быть различной. Рассмотрим классификацию связей между объектом и его свойствами (между сущностью и атрибутами):

1) по количеству принимаемых свойством значений связь считается:

– единичной;

– множественной.

Объект может иметь только одно значение какого-то свойства. Например, для объекта класса ЛИЧНОСТЬ таким свойством является дата рождения.

Свойство у объекта одновременно может принимать несколько значений. Например, при описании ЛИЧНОСТИ фиксируется свойство иностранный язык. Сотрудник (личность) может знать несколько иностранных языков.

2) по оценке постоянства связи, между сущностью и атрибутом во времени связь считается:

– статической (свойство с течением времени не изменяется, например: дата рождения);

– динамической (свойство может измениться со временем, например: ученая степень).

3) по оценке ассоциаций между объектом и его свойством:

– простые (неделимые);

– условные (свойство присуще не всем экземплярам сущности, например, свойство ученая степень для ЛИЧНОСТИ в вузе);

– составные (например, свойство «адрес» состоит из города, улицы, дома, квартиры).

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

Таблица 3.2

Графические обозначения связи между объектом и его свойством

Обозначение связи

Характер связи

missing image file

единичная связь

missing image file

множественная связь

missing image file

статическая связь

D

missing image file

динамическая связь

missing image file

условная связь

Пример. Рассмотрим диаграмму «сущность – атрибуты» для предметной области «ВУЗ» (рис. 3.1).

missing image file

Рис. 3.1. Диаграмма «сущность – атрибуты»

Данная диаграмма дает словесную интерпретацию сущности ЛИЧНОСТЬ через ее свойства. Сущность обозначается именем существительным в единственном числе. Сущность обладает
статическими единичными свойствами: фамилия, пол; динамическими множественными свойствами: образование, иностранный язык; динамическими единичными свойствами: ученая степень, адрес. В свою очередь свойство ученая степень является условным, а свойство адрес – составным.

Связи между объектами предметной области. Связь (от англ. relationship) – характер взаимосвязи (ассоциация), установленный между несколькими сущностями.

Набор связей (от англ. relationship set) – отношение между n (причем n => 2) сущностями, относящимися к некоторому набору сущностей.

В случае, когда n = 2 связь называется бинарной, n-арный набор связей (n > 2) можно заменить совокупностью бинарных, но n-арные связи отображают точнее семантику предметной области.

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

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

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

Рассмотрим существующие связи между указанными сущностями:

● так как каждый отдельный сотрудник работает в каком-либо отделе, то между сущностями СОТРУДНИК и ОТДЕЛ имеется связь «работает в» или ОТДЕЛ – РАБОТНИК;

● поскольку один из работников является руководителем отдела, то между упомянутыми сущностями СОТРУДНИК и ОТДЕЛ существует связь «руководит» или ОТДЕЛ – РУКОВОДИТЕЛЬ.

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

Могут существовать следующие степени бинарных связей:

1. Связь «один к одному» (1:1) представляет тот тип связи, когда один экземпляр объекта, от которого направлена связь, идентифицирует один и только один экземпляр объекта, к которому направлена связь, и наоборот.

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

missing image file

Рис. 3.2. Связь 1:1

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

Класс принадлежности характеризует обязательный или необязательный характер связи между экземплярами двух сущностей.

Раз в каждом отделе должен быть руководитель, то сущности «ОТДЕЛ» обязательно должна соответствовать сущность «СОТРУДНИК». Но не каждый сотрудник руководитель отдела, поэтому в такой связи не каждая сущность «СОТРУДНИК» имеет ассоциированную с ней сущность «ОТДЕЛ», таким образом, не каждый экземпляр сущности принимает участие в этой связи.

Говорят, что сущность «СОТРУДНИК» обладает обязательным классом принадлежности (такой факт обозначается указанием интервала возможных вхождений сущности в связь, это в данном случае 1,1), а сущность «ОТДЕЛ» обладает необязательным классом принадлежности (0,1). Теперь данная связь описывается как 0,1:1,1. В дальнейшем кардинальность бинарных связей степени 1 обозначается, как показано на рис. 3.3.

missing image file

Рис. 3.3. Обозначение принадлежности

2. Связь «один ко многим» (1:М) представляет тот тип связи, когда один экземпляр объекта, от которого направлена связь, идентифицирует некоторое число (0, 1, …) экземпляров объектов данных, к которым направлена связь. А в обратном направлении эта связь идентифицирует только один объект.

Такая связь характерна для связи ОТДЕЛ – СОТРУДНИК, поскольку в отделе может работать любое число сотрудников, но каждый сотрудник может работать только в одном отделе. При этом не каждый отдел (например, вновь образованный) должен иметь хотя бы одного сотрудника.

Степень связи M графически отображается «вороньей лапкой» («древообразной» линией), так это сделано на рис. 3.4. В таком случае необходимо также учитывать класс принадлежности сущностей.

Кардинальность бинарных связей степени M обозначается, как представлено на рис. 3.5.

missing image file

Рис. 3.5. Обозначение кардинальности бинарных связей степени n

3. Связь М:1 («много к одному»).

Пример. Предположим, рассматриваемое ранее предприятие действует на основании системы контрактов, которые заключаются с заказчиками. Такой факт изображается в модели «сущность – связь» связью КОНТРАКТ – ЗАКАЗЧИК, который объединяет сущности КОНТРАКТ(НОМЕР, СРОК ИСПОЛНЕНИЯ, СУММА) и ЗАКАЗЧИК(НАИМЕНОВАНИЕ, АДРЕС).

С одним заказчиком может быть заключено любое число контрактов, поэтому связью КОНТРАКТ – ЗАКАЗЧИК будет степень M:1 (рис. 3.6). В таком случае, раз каждый контракт заключается с конкретным заказчиком, а каждый заказчик обладает хотя бы одним контрактом, то каждая сущность характеризуется обязательным классом принадлежности.

missing image file

Рис. 3.6. Пример связи М:1

4. Связь М:М («много ко многим») представляет тот тип связи, когда один экземпляр объекта, от которого направлена связь, идентифицирует некоторое число объектов, которому направлена связь, и наоборот. То есть связь является неуникальной в обоих направлениях.

Пусть в предыдущем примере для выполнения каждого контракта создана рабочая группа, в которую включены сотрудники из разных отделов. Так как каждый сотрудник может включаться в любое число рабочих групп, и каждая группа должна иметь не меньше, чем одного сотрудника, тогда связь между сущностями СОТРУДНИК и РАБОЧАЯ_ГРУППА характеризуется степенью М:М (рис. 3.7).

missing image file

Рис. 3.7. Пример связи М:М

При условии зависимости существования сущности x от сущности y, сущность x называется зависимой (при этом сущность x называют «слабой», а сущность y – «сильной»). В качестве примера рассмотрена связь между описанными ранее сущностями РАБОЧАЯ ГРУППА и КОНТРАКТ. Рабочая группа создается после того, как подписывается контракт с заказчиком, и прекращает свое существование по выполнению контракта. Поэтому, сущность РАБОЧАЯ ГРУППА зависима от сущности КОНТРАКТ. Зависимая сущность обозначается двойным прямоугольником, а ее связь с сильной сущностью – линией со стрелкой (рис. 3.8):

missing image file

Рис. 3.8. Пример обозначения «слабой» и «сильной» сущностей

Кардинальность связи для сильной сущности всегда будет (1,1). Для зависимой сущности классы принадлежности и степени связи могут быть любыми. Например, рассматриваемое предприятие использует несколько банковских кредитов, которые могут быть представлены набором сущностей КРЕДИТ (НОМЕР ДОГОВОРА, СУММА, СРОК ПОГАШЕНИЯ, БАНК). По каждому кредиту осуществляются платежи в счет его погашения и выплаты процентов. Такой факт характеризуется набором сущностей ПЛАТЕЖ (ДАТА, СУММА) и набором связей «осуществляется по». В случае, если поступление запланированного кредита срывается, информацию о нем необходимо удалить из БД. Соответственно, нужно удалить все сведения о плановых платежах по этому кредиту. Поэтому, сущность ПЛАТЕЖ зависима от сущности КРЕДИТ (рис. 3.9).

missing image file

Рис. 3.9. Пример обозначения «слабой» и «сильной» сущностей

На языке инфологического моделирования связь (ассоциация) между информационными объектами представляется предложением вида:

АССОЦИАЦИЯ[СУЩНОСТЬ S1, СУЩНОСТЬ S2](атрибут 1, атрибут 2),

где S1, S2 – степени связи, а атрибут 1 или 2 – атрибуты, входящие в состав ключа сущности.

Пример представления описания связи между сущностями КРЕДИТ и ПЛАТЕЖ.

Осуществляется по [Кредит 1, Платеж M] (Номер кредита, Номер платежа).

Разновидности объектов. Выше были рассмотрены объекты, не вникая в их сложность. На самом деле различают несколько разновидностей объектов (рис. 3.10).

missing image file

Рис. 3.10. Классификация объектов

Объект называется простым, если он является неделимым.

Сложный объект представляет собой объединение других объектов.

Понятия простой и сложный объекты являются относительными понятиями. Например, стул в системе учета материальных ценностях является простым объектом, а в мебельном производстве – сложным объектом.

Выделяют несколько разновидностей сложных объектов: составной, обобщенный, агрегированный.

Составной объект представляет собой связь «целое – часть».

Для отображения составного объекта в инфологической модели не используются никакие специальные обозначения. Характер связи между элементами составного объекта может быть 1:М, М:М. Примеры:

УЗЛЫ – ДЕТАЛИ, ГРУППА – СТУДЕНТ.

Обобщенный объект выражает присутствие связи «род – вид» между некоторыми объектами данной предметной области.

Связь «род – вид» характеризует собой классификацию ряда объектов предметной области по неким признакам.
Объекты, которые входят в состав обобщенного объекта являются его категориями. Такой атрибут «категория» называется дискриминантом.

Пример. Предметная область – ВУЗ. В данной предметной области обобщенным объектом является сущность личность (рис. 3.11).

missing image file

Рис. 3.11. Пример обобщенного объекта ЛИЧНОСТЬ В ВУЗЕ

Классификация внутри обобщенного объекта может быть многоуровневой. Для обозначения подкласса внутри обобщенного объекта используется специальное графическое средство – треугольник.

Родовой и видовые объекты обладают определенным набором свойств.

Агрегированные объекты соответствуют некоторому процессу, в который вовлечены другие объекты.

Агрегированный объект обозначается ромбом и именуется существительным отглагольной формы.

Для примера, агрегированный объект ПОСТАВКА (рис. 3.12) соединяет в себе объекты ПОТРЕБИТЕЛЬ, ПОСТАВЩИК, ТОВАР, ДАТА ПРОДАЖИ. Агрегированный объект может иметь и собственные свойства.

missing image file

Рис. 3.12. Пример агрегированного объекта

Диаграмма «сущность – связь». Непременным свойством модели «сущность – связь» безусловно, является то, что она может быть выполнена в виде графической схемы. Это значительно упрощает анализ предметной области. Существует несколько разновидностей обозначений элементов диаграммы «сущность – связь», каждая из которых имеет определенные положительные черты. Сущности со связями и атрибуты с сущностями соединяются прямыми линиями. Для указания кардинальностей связей применяются введенные ранее обозначения.

В процессе построения диаграмм выделяются следующие этапы:

1) идентификация сущностей и связей рассматриваемой предметной области;

2) идентификация семантической информации в наборах связей. К примеру, является ли представленный набор связей отображением связи 1:М;

3) определение кардинальностей связей;

4) определение атрибутов и наборов их значений (доменов);

5) организация данных в виде отношений «сущность – связь».

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

Выделяются сущности и связи. Рассматриваемое предприятие включающие в свой состав отделы с работающими в них сотрудниками. Каждый сотрудник занимает определенную должность (инженер, ведущий инженер, бухгалтер и т.д.). В результате таких рассуждений вводятся следующие наборы сущностей:

Отдел (номер ОТДЕЛА, НАИМЕНОВАНИЕ отдела);

Сотрудник (табельный номер, ФИО сотрудника, адрес РЕГИСТРАЦИИ);

Должность (НАИМЕНОВАНИЕ должности, оклад),

а также набор связей РАБОТАЕТ_В и ЗАНИМАЕТ.

Считаем, что совместительство в организации не разрешено.

Обобщая вышеизложенное, получается диаграмма «сущность – связь», показанная на рис. 3.13.

missing image file

Рис. 3.13. Фрагмент диаграммы учета персонала

ER-модель представляет специфику ограничения целостности данных. В модели предусматриваются следующие ограничения на:

1) допустимые значения – определяют типы данных (численные, символьные и др. значения);

2) допустимые значения для атрибута – диапазон возможных значений (к примеру, возраст сотрудника может быть от 18 до 60 лет);

3) значения данных (например, сумма отчислений не может превышать суммы зарплаты).


Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674