Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

ER-модель

Определение 1

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

Введение

Модель ER (Entity-Relationship, то есть, сущность-связь) используется, для того чтобы моделировать предметную область и логическую структуру базы данных. ER-модель служит для описания сущностей и отношения между ними с применением возможностей графической нотации. Сущности могут содержать атрибуты, то есть, свойства. К примеру, если пользователь разрабатывает систему для спортивного клуба, тогда:

  1. В качестве сущностей могут выступать тренер, спортсмен, учебная группа, тренировка, норматив, расписание занятий.
  2. Атрибутами сущности «Тренер» могут считаться ФИО, вид спорта, разряд, стаж.
  3. Среди сущностей «Учебная группа» и «Спортсмен» может быть отношение типа «Обучается в».

Проблемы, связанные с проектированием ER-модели, могут возникнуть по следующим причинам:

  1. Известен ряд нотаций, но не существует единого стандарта (системы обозначений) для ER-модели.
  2. Раньше наиболее часто встречалась нотация Чена, но по мнению специалистов она является самым неудобным способом, а также трудно найти нормальные инструменты для формирования диаграмм в данной нотации.
  3. Существуют также нотация Бахмана, нотация min-max и ряд других, которые используются очень редко и на них нет стандарта.
  4. Нотация IDEF1X, нотация диаграммы классов UML, нотация Мартина (вороньи лапки). Данные нотации применяются достаточно часто, к тому же имеются инструментальные наборы, в которых их удобно выстраивать.

Для разных систем управления базами данных (СУБД) существуют инструменты, которые позволяют формировать схему базы данных. К примеру, это может быть MS Access или MS SQL Management Studio. В итоге может получиться что-либо похожее на ER-диаграмму, то есть, с чисто формальных позиций пользователь может получить графическое отображение, которое описывает сущности и отношения, однако такие диаграммы не будут соответствовать ни одной из перечисленных нотаций.

«ER-модель» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

ER-модель в качестве модели информационных данных

Сначала рассмотрим основные возможности нотации Чена. Примером данной нотации может служить ER-диаграмма базы кинотеатра, приведенная на рисунке ниже.

ER-диаграмма базы кинотеатра. Автор24 — интернет-биржа студенческих работ

Рисунок 1. ER-диаграмма базы кинотеатра. Автор24 — интернет-биржа студенческих работ

В данной нотации сущность отображена прямоугольником, ее атрибуты представлены овалами, а отношения между сущностями изображены в виде ромбов. Имена главных атрибутов должны подчеркиваться. На дугах следует указать арности (кратности) связей, а также набор ограничений типа «⩽ 30». К примеру, при помощи ограничений можно указать, что в учебных группах не может быть больше тридцати спортсменов. В общем, понять то, что изображено на диаграмме конечно можно, если ее внимательно читать, следует отметить следующие недостатки:

  1. Процесс изучения диаграммы является достаточно утомительным, поскольку диаграмма содержит очень большое количество компонентов.
  2. Диаграмма может быстро выйти за пределы листа А4, проблема может возникнуть уже в небольшом по объему проекте.
  3. Неясно в какой форме и где именно следует прописывать типы атрибутов.
  4. Трудно отыскать более специализированные инструменты, чем Visio (для Windows) и yEd (кроссплатформенный) для ее формирования.

Более подробное описание данной нотации имеется в $[$ER_ivanova$]$.

Далее рассмотрим нотацию Мартина (вороньи лапки), в которой атрибуты сущностей могут быть записаны прямо внутри символа прямоугольника, призванного обозначить сущность. Это позволяет сделать диаграмму существенно более компактной. Отношения здесь не отображаются в виде ромбов, а должны записываться как текст над стрелкой. Данная нотация предполагает следующие виды концов стрелок, которые задают арность отношения:

Виды концов стрелок. Автор24 — интернет-биржа студенческих работ

Рисунок 2. Виды концов стрелок. Автор24 — интернет-биржа студенческих работ

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

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

Диаграмма. Автор24 — интернет-биржа студенческих работ

Рисунок 3. Диаграмма. Автор24 — интернет-биржа студенческих работ

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

Далее рассмотрим нотацию диаграммы классов UML и нотацию Мартина. Нотация Мартина по многим признакам является похожей на нотацию диаграммы классов UML. Тем не менее ее использование для моделирования предметной области и структуры базы данных обладает рядом особенностей:

  1. Сущности и их свойства изображаются точно также как в нотации Мартина (прямоугольник с секциями). Нижняя (третья) секция символа класса часть должна оставаться, поскольку она служит для записи функций класса. Тем не менее иногда в нее могут помещать описание индексов и триггеров базы данных со стереотипами ∠∠index>> и ∠∠trigger>>.
  2. Применяется достаточно небольшое подмножество системы обозначений, поскольку для предметной области нет особого смысла в виртуальных функциях, абстрактных классах, статических полях, агрегации, закрытом наследовании.
  3. Как правило, появляется потребность отображать ограничения, для этого следует применять стереотипы ∠∠PK>> (первичный ключ), ∠∠FK>> (внешний ключ) и ∠∠PK, FK>>.

На рисунке ниже изображена данная диаграмма.

Диаграмма. Автор24 — интернет-биржа студенческих работ

Рисунок 4. Диаграмма. Автор24 — интернет-биржа студенческих работ

Диаграмма классов часто применяется при объектно-ориентированном проектировании и для ее формирования известно много инструментов. Это считается достаточно удобным, когда пользователь занят изучением программирования и уже успел познакомиться с нотацией диаграммы классов. В качестве ER-модели данная нотация используется, к примеру, в инструментах серии Rational от IBM.

Основное отличие данной нотации от предыдущих заключается в том, что на нее имеется международный стандарт $[$UML_ISO_1, UML_ISO_2$]$. Существует еще много других нотаций, отличающихся от приведенных выше системой обозначений и только в редких случаях способных предоставить какие-либо новые возможности.

Дата написания статьи: 14.10.2022
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot