Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Белобжеский_Лекции_по_ББД.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
5.5 Mб
Скачать

Модель «сущность—связь» и case-средства

Разработка моделей данных в рамках модели «сущность—связь» значительно упростилась в последние годы, поскольку теперь инструменты для построения ER-диаграмм входят в состав многих популярных CASE-средств. К таким продуктам относятся, в частности, IEW, IEF, DEFT, ER-WIN и Visio. Эти продукты также объединяют сущности с отношениями, с помощью которых эти сущности представлены в базе данных, что может облегчить администрирование, управле­ние и обслуживание базы данных.

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

Диаграммы «сущность—связь» в стиле uml

Унифицированный язык моделирования (UML) — это набор структур и методик для моделирования и проектирования объектно-ориентированных программ (ООП) и приложений. UML — это одновременно и методология разработки систем ООП, и набор инструментов для разработки таких систем. UML получил известность стараниями группы OMG (Object Management Group) — организа­ции, которая занимается разработкой ООП-моделей, технологии и стандартов с 1980-х годов. Этот язык стал также находить широкое применение в среде про­фессионалов ООП. На UML базируются инструменты для объектно-ориентиро­ванного проектирования, разработанные компанией Rational Systems.

Будучи методологией разработки приложений, UML является предметом курса системной разработки и поэтому представляет для нас лишь ограничен­ный интерес. Вам могут, однако, встретиться диаграммы «сущность—связь», вы­полненные в стиле UML, поэтому представление об этом стиле следует иметь.

Нужно просто осознать, что когда дело касается проектирования баз данных, об­ращение с этими диаграммами происходит точно так же, как и с традиционными ER-диаграммами.

Сущности и связи в uml

На рис. 3.12 приведено UML-представление структур, изображенных на рис. 3.3. Каждая сущность представлена классом сущностей, который изображен в виде прямоугольника с тремя сегментами. В верхнем сегменте указано имя сущности и другие данные, о которых мы будем говорить далее. Во втором сегменте пере­числены имена атрибутов сущности, а в третьем описаны ограничения и методы (программные процедуры), относящиеся к данной сущности.

Связи показаны линиями, соединяющими две сущности. Кардинальность представлена в формате х..у, где х — это необходимый минимум, а у — допусти­мый максимум. Так, 0..1 означает, что наличие данной сущности необязательно, а максимально допустимое количество — одна. Звездочка представляет неограни­ченное количество. Например, запись 1..* означает, что требуется одна сущность, а допускается неограниченное количество. Найдите на рис. 3.12, а, 6 примеры связей с максимальной кардинальностью 1:1, 1:N и N:M.

Представление слабых сущностей

На рис. 3.13 изображено UML-представление слабых сущностей. На линии связи рядом с родителем слабой сущности (то есть рядом с сущностью, от которой зави­сит слабая сущность) помещается закрашенный ромб. На рис. 3.13, а сущность РЕЦЕПТ является слабой сущностью, а сущность ПАЦИЕНТ — ее родителем. Все сла­бые сущности имеют родителя, поэтому их кардинальность в связи с родителем всегда 1..1. Исходя из этого, кардинальность на родительской стороне обознача­ется просто как 1.

На рис. 3.13, а показана слабая сущность, не являющаяся идентификационно-зависимой. Это обозначается выражением <non-identifying> (не идентифицирую­щая) на связи ПАЦИЕНТ-РЕЦЕПТ. На рис. 3.13, б изображена идентификационно-зависимая слабая сущность. На это указывает ярлык <identifying> (идентифици­рующая).