рус | укр

Главная

Контакты

Навигация:
Арсенал
Болезни
Витамины
Вода
Вредители
Декор
Другое
Животные
Защита
Комнатные растения
Кулинария
Мода
Народная медицина
Огород
Полесадник
Почва
Растения
Садоводство
Строительство
Теплицы
Термины
Участок
Фото и дизайн
Хранение урожая









Инфологическое (семантическое) моделирование предметной области

Инфологическое моделирование (иногда используется термин семантическое моделирование) применяется на втором этапе проектирования БД, то есть после системного анализа предметной области. На этапе системного анализа были сформированы понятия о предметах, фактах и событиях, которыми будет оперировать БД. Инфологическое проектирование связано с представлением семантики предметной области в модели БД, т.е. моделирование структур данных, опираясь на смысл этих данных.

Наибольшее распространение получила модель "сущность-связь" (entity-relationship model, ER-модель).

Модель «сущность-связь» является концептуальной моделью, т.е. не учитывает особенности конкретной СУБД. Из модели "сущность-связь" могут быть получены все основные модели данных(иерархическая, сетевая, реляционная).

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

Примеры сущностей: люди, лекарства, студенты и т.д.

Примеры экземпляров сущностей: конкретный человек, конкретное лекарственное средство, конкретный студент и т.д.

Сущности не обязательно должны быть непересекающимися. Например, экземпляр сущности СТУДЕНТ, также принадлежит сущности ЛЮДИ.

Объект, которому соответствует понятие сущности, имеет свой набор атрибутов – характеристик, определяющих свойства данного объекта.

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

Пример1:

Рассмотрим множество лекарственных препаратов (ЛП), имеющихся в аптеке. Каждый ЛП можно представить следующими характеристиками: Код ЛП, Название ЛП, Срок хранения, Условия хранения.

В дальнейшем для определения сущности и ее атрибутов будем использовать обозначение вида:

ЛП(Код ЛП, Название ЛП, Срок хранения, Условия хранения)

Например, поставщиков, поставляющих лекарства в аптеку, можно описать как:

Поставщики (Код поставщика, Название поставщика, Адрес)

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

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

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

Например, сущность Название ЛП однозначно определяется атрибутом Код ЛП, поскольку все коды лекарств различны.

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

Пример 2. Сущность Продажа, с атрибутами Дата продажи, Код ЛП, Количество, Цена, содержит информацию о продаже лекарств за конкретный день.

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

Обозначим эту сущность как:

Продажа (Дата продажи, Код ЛП, Количество, Цена). Ключевой атрибут выделен подчеркиванием.

Между сущностями могут быть установлены связи.

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

Примеры:

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

2) Так как ЛП в магазин поставляют поставщики, то между сущностями ЛП и Поставщики существует связь «поставка» или ЛП – Поставщики.

3) Могут существовать и связи между экземплярами одной и той же сущности (рекурсивная связь), например связь Родитель - Потомок между экземплярами сущности Человек.

Связь также может иметь атрибуты. Например, для связи ЛП - Поставщики можно задать атрибуты Дата поставки, Цена и т.д.

Связь, существующая между двумя сущностями, называется бинарной связью.

Связь, существующая между n сущностями, называется n-арной связью.

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

Модель "сущность-связь" может быть представлена в виде графической схемы (диаграммы). Это значительно облегчает анализ предметной области.

В Таблице 1 приводится список используемых обозначений

Таблица 1.

Обозначение Пояснение
Имя сущности

 

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

 

Атрибут
Ключевой атрибут
 
 
Имя связи

 

Связь
Связь степени 1, необязательный класс принадлежности
Связь степени 1, обязательный класс принадлежности
Связь степени N, необязательный класс принадлежности
Связь степени N, обязательный класс принадлежности
Связь от зависимой к независимой сущности

Существующие степени бинарных связей:

1) один-к-одному(обозначается 1:1). Это означает, что в такой связи в каждый момент времени каждому экземпляру сущности A соответствует 1 или 0 экземпляров сущности B.

Прямоугольники обозначают сущности, а ромб - связь. Так как степень связи для каждой сущности равна 1, то они соединяются одной линией (Рис. 6).

 
 

 

 


Рис. 6. Связь один-к-одному

 

2) один-ко-многим (обозначается 1:N). Одному экземпляру сущности A соответствуют 0, 1 или N экземпляров сущности B. Графически степень связи N отображается "древообразной" линией, так это сделано на следующем рисунке (Рис. 7).

 
 

 


Рис. 7. Связь один-ко-многим

 

3) многие-к-одному (обозначается N:1). Эта связь аналогична отображению 1:N. Одному экземпляру сущности B соответствуют 0, 1 или N экземпляров сущности A (Рис. 8).

 
 

 


Рис. 8. Связь многие-к-одному

 

4) многие-ко-многим (обозначается M:N). В этом случае одному экземпляру сущности A соответствуют 0, 1 или N экземпляров сущности B, и наоборот, одному экземпляру сущности B соответствуют 0, 1 или N экземпляров сущности A (Рис. 9).

 
 

 


Рис. 8. Связь многие-ко-многим

 

Пример построения модели «сущность-связь»

В процессе построения диаграммы "сущность-связь" можно выделить несколько этапов:

1. Определение списка сущностей выбранной предметной области.

2. Определение списка атрибутов сущностей.

3. Описание связей между сущностями (степени, классы принадлежности связей, а также атрибуты связей, если они необходимы).

4. Организация данных в виде диаграммы "сущность-связь".

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

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

Просмотров: 637

Вернуться в категорию: Строительство

© 2013-2022 cozyhomestead.ru - При использовании материала "Удобная усадьба", должна быть "живая" ссылка на cozyhomestead.ru.