Моделирование взаимосвязей между сущностями

       

Общие подходы


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

Шаг 1

Приступим к поиску возможностей для достижения более высокого уровня обобщения:

Рисунок 8-33. Базовая структура

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

Шаг 2

Рисунок 8-34. Создание двух обобщающих сущностей-супертипов

Проверим схему.

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

Да, мы можем связать:

  • приложение сил с занятием
  • обучение с курсом
  • договор найма с занятием
  • Что нового появилось? Что дает нам связь:

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



    Содержание раздела