Базы данных. Проектирование и создание
58
В качестве примера агрегированного объекта из рассматриваемой предметной об-
ласти «Учебный процесс» изобразим СДАЧУ ЭКЗАМЕНА (рис. 2.20б).
Составной объект отражает связь типа «целое – часть». Для отображения состав-
ных объектов в ER-модели обычно не используются специальные условные обозначения.
Связь между составным объектом и составляющими его объектами отображается так же,
как это было описано выше для простых объектов. Например, ГРУППА состоит из
СТУДЕНТОВ, и это будет отображено просто как связь 1:М между этими объектами.
2.2.9. Рекомендации по построению базовой ER-модели
В ER-модели должно быть отображено все, о чем идет речь в данной предметной
области (во входных документах, в выходных документах и т.п.). После построения полной
ER-модели необходимо определить состав хранимых показателей. Переход от ER-модели к
даталогической модели должен производиться только для хранимых показателей.
Как отмечалось выше, понятия «объект» и «свойство» являются относительным. В
общем случае можно дать следующие рекомендации по поводу того, что следует выде-
лять в качестве самостоятельного объекта в ER-модели. В качестве самостоятельного объ-
екта в ER-модели следует изображать сущности:
− имеющие более одного идентификатора;
− для которых фиксируются какие-либо их свойства;
− которые участвуют более чем в одной связи.
При возникновении сомнений лучше принять решение о создании самостоятель-
ного объекта, так как это в дальнейшем потребует меньших переделок модели.
Количественные характеристики всегда являются свойствами какого-либо объекта,
и никогда – самостоятельными объектами.
При изображении предметной области надо стремиться отобразить информацию
как можно более детально, так как это в дальнейшем даст возможность принять более
обоснованные решения при проектировании структуры базы данных. Так, например,
если «адрес», «ФИО» являются составными характеристиками, то желательно это отра-
зить в ER-модели.
При решении вопроса о том, что следует отображать как обобщенный объект,
приходится выбирать между двумя крайними вариантами: надо ли простой объект пред-
ставить как обобщенный и надо ли два или несколько самостоятельных объектов «объе-
динить» в обобщенный объект.
Обобщенный объект следует вводить в модель в том случае, когда надо подчерк-
нуть общность и различие категорий объектов, входящих в один класс или в случае если
объекты разных подклассов участвуют в разных связях. Так, например, если для сотруд-
ников мужского и женского пола фиксируются одни и те же свойства, эти объекты участ-
вуют в одних и тех же связях, то не следует выделять соответствующие подклассы. Если
же для студентов мужского поля фиксируются сведения о воинской обязанности, ин-
формация о том, прошли ли они срочную службу, занимаются ли они на военной ка-
федре и т.п., а для студенток эта информация не фиксируется, то разбивать класс объек-
тов СТУДЕНТ на подклассы следует.
Естественно, что каждый подкласс может быть изображен в ER-модели как само-
стоятельный объект, а не как подкласс какого-то родового класса. Для того чтобы иметь
больше информации о предметной области и сократить число элементов (свойств, свя-
зей) в ER-модели, в большинстве случаев лучше объединять подклассы в класс.