Теория и практика построения баз данных (1088289), страница 23
Текст из файла (страница 23)
Сущности Модель данных, требуемая для бюро аренды Сан-Хуана, более сложна, чем модель для танцевального клуба Джефферсона. Потенциальные сущности показаны на рис. 3.20, а. Рассмотрим сначала сущности, относятциеся к оборудованию. Есть много различных типов оборудования, и это наводит нас на мысль о введении подтипов, Однако спросим себя: почему фирму Сан-Хуана должно интересовать оборудование? Фирме вовсе не нужно знать характеристики каждого предмета— например, длину цепи каждого якоря. В задачи фирмы скорее входит учет элементов оборудования и их типов, чтобы можно было определить, что из оборудования потеряно цли повреждено.
Таким образом, для данного случая мы отнесем все типы оборудования к одной сущности — ОБОРУДОВАНИЕ. Принадлежность оборудования указывается путем введения связи между сущностями ОБОРУДОВАНИЕ н ВЛАДЕЛЕЦ. Если фирма Сан-Хуана может быть экземпляром сущности ВЛАДЕЛЕЦ, то все оборудование, являющееся собственностью фирмы, может быть отнесено к этой сущности. Аналогичным образом, исходя из описанной ситуации, представляется безосновательным разделение оборудования на закрепленное и не закрепленное на яхте.
Точный список может быть составлен и без такого разделения. Окончательный список сущностей приведен на рис. 3.20, б. АРЕНДА ЯХТА КЛИЕНТ ВЛАДЕЛЕЦ ОБОРУДОВАНИЕ ОБОРУДОВАНИЕ ВЛАДЕЛЬЦА ЗАКРЕПЛЕННОЕ ОБОРУДОВАНИЕ ВЛАДЕЛЬЦА НЕЗАКРЕПЛЕННОЕ ОБОРУДОВАНИЕ ВЛАДЕЛЬЦА СОБСТВЕННОЕ ОБОРУДОВАНИЕ ФИРМЫ МАРШРУТ И ПОГОДА РЕЙС ВРЕМЕННАЯ КОМАНДА ПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ ВНЕПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ РЕМОНТ РЕМОНТНЫЙ ДОК Возможные сущности для бюро аренды Сен-Хуене АРЕНДА, или РЕЙС (синонимы) ЯХТА КЛИЕНТ ВЛАДЕЛЕЦ ОБОРУДОВАНИЕ МАРШРУТ И ПОГОДА ВРЕМЕННАЯ КОМАНДА ПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ РЕМОНТ, или ВНЕПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ (синонимы) РЕМОНТНЫЙ ДОК б Окончательный список сущностей Рис.
3.20. Сущности для бюро аренды якт Сан-Хуана Обратите внимание, что АРЕНДА и РЕЙС являются синонимами: они относятся к одной и той же транзакции. Мы приводим здесь оба имени, чтобы можно было соотнести их с описанием ситуации. Возможно, что сущности ПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ и ВНЕПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ следует объединить. Один из способов определить, необходимо это или нет, — проанализировать атрибуты обеих сущностей. Если они одинаковы, то два класса сущностей могут быть объединены. Заметьте также, что сущности РЕМОНТ и ВНЕПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ определены как синонимы. Связи На рис. 3.21 изображена диаграмма «сущность — связь> для бюро аренды СанХуана.
По большей части представленные на этой диаграмме связи являются очевидными, но связь между сущностями ОБОРУДОВАНИЕ и АРЕНДА может быть предметом спора. Можно было бы сказать, что определенная часть оборудования должна быть отнесена к яхте (сущность ЯХТА), а не к аренде, нли что часть оборудования (а именно оборудование, которое закреплено на яхте) следует отнести к яхте, а оставптуюся часть — к аренде. Эти изменения представляют собой возможные альтернативы для структуры, показанной на рис. 3.21.
110 Глава 3. Модель «сущность — связь» Резюме 111 Рио. 3.21. ЕП-диаграмма для бюро аренды яхт Саи-Хуана Кроме того, обратите внимание, что сущность ПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ связана с сущностью ЯХТА, в то время как сущность РЕМОНТ, или ВНЕПЛАНОВОЕ ТЕХОБСЛУЖИВАНИЕ, связана с сущностью АРЕНДА. Это подразумевает, что когда яхта не находится в аренде, никакого ремонта для нее не требуется.
Может быть, это не соответствует действительности. Наконец, сущности АРЕНДА и ПОГОДА И МАРШРУТ имеют связь 1;1, и они также имеют одинаковые идентифицирующие атрибуты. В связи с этим можно, а может быть, даже нужно объединить их в один класс сущностей. Базы данных как модели моделей Как вы можете видеть, есть множество различных способов моделирования конкретной ситуации в деловом мире, и это множество становится все обширнее по мере того, как моделируемая ситуация усложняется. Зачастую количество возможных моделей оказывается огромным, и выбрать среди иих одну может быть нелегко.
Иногда при выявлении альтернатив команда, защгмающаяся проектом, углубляется в дискуссии по поводу того, какая модель данных наилучшим образом представляет реальный мир. Эти дискуссии исходят из ложных посылок. Базы данных не моделируют реальный мир, хотя распространено ошибочное мнение, согласно которому именно в этом и состоит их назначение. Базы данных являются моделями пользовательских моделей мира (или, точнее, делового мира). Вопрос, задаваемый при выявлении альтернативных моделей данных, состоит не в том, насколько точно данная модель отражает реальный мир, а в том, насколько точно она отражает имеющуюся в воображении пользователя модель среды, которая его окружает. Цель заключается в том, чтобы разработать структуру, которая будет соответствовать представлениям пользователей.
Иммануил Кант и другие философы могли бы возразить, что людям пе дано построить модель того, что существует на самом деле, и заявили бы, что суть вещей навсегда останется тайной для человечества'. распространяя эту аргументацию на компьютерные системы, Виноград (лйг(пойгас() и Флорс (Е)огсз) высказалн идею, что в обществах индивидуумы конструируют системы символов, которые позволяют им успешно действовать в мире. Последователъность символов не является моделью бесконечности реального мира, а скорее представляет собой просто социальную систему, позволяюлцую пользователям успешно координировать свои действия; ничего более по этому поводу сказать нельзя . 2 Таким образом, компьютерные системы должны моделировать и представлять взаимоотношения между своими пользователями.
Они не моделируют ничего, кроме системы символов и связей, Поэтому научитесь задавать себе следующие вопросы: «11асколько точно данная модель отражает восприятие пользователей и имеющуюся в их воображении модель мира? Поможет ли эта модель пользователям согласованно н успешно взаимодействовать друг с другом и с клиенталги?» Для аналитика бессмысленно заявлять, что его модель является лучшим представлением реальности. Суть в том, чтобы разработать модель, которая адекватно отражает модель деловой среды в представлении пользователя.
Резюме Модель «сущность — связь» бьша разработана Питером Ченом. В этой модели определяются сущности — идентифицируемые объекты, представ.иющие важность для пользователя. Все сущности данного типа образуют класс сущностей. Отдельная сугцггость называется экземпляроль Сущности имеют атрибуты, которые описывают их характеристики; один пли несколько атрибутов определяют сущность. Связи отражают взаимоотношения между сущностями. В ЕК-модели связи определяются явным образом; у каждой связи есть имя; существуют также классы связей п экземпляры связей.
У связей могут быть атрибуты. Степень связи — это число сущностей, которые в ней участвуют. Большинство связей являются бинарными. Имеется три типа бинарных связей: 1:1, 1:о) и гЕМ. На диаграммах «сущность — связь» сущности изображаются прямоугольниками, а связи — ромбами. Максилгальпое кардинальное число связи указывается внутри ромба. Минимальное кардинальное число указывается с помощью перпендикулярной черты или овала.
Связи, соединяющие сугцности одного класса, Г «Мы ие можем, разумеезся, за пределалш всего возможного опыта составить определенное представление о том, каки«ги являюжя вещи салли по себе. И все же ие в нашей власти совершенно устраниться от нх исслелования; ибо опьп никогда ие улогщетворяет рассудок пояиостью, ио, отвечая иа вопргкы, отсылает иас все дальше и дальше назад и оставляет нас неудовлетворенными относительно полного решениял (Ил~маггуил Кант. 1!ролегомсвы к любой будущей метафизике), з Тессу "«уток«ай апй Р Негев, Ьпг)еисапгйпй Сотряс««я аза Сорит(оп (йеайвй, Муе Адсйжлп-'ичез(еу, 1986).
112 Глава 3. Модель сущность — связь» Вопросы группы 1 113 называются рекурсивными. Атрибуты могут быть показаны на ЕК-диаграмме в эллипсах или в отдельной таблице. Слабая сущность — это сущность, существование которой зависит от другой сущности; сущность, не являюшаяся слабой, называется сильной сущностью. Слабые сушности изображаются с помощью прямоугольников со скругленными углами. Далее в этой книге мы определяем слабую сущность как сущность, логически зависящую от другой сущности. Сущность может иметь минимальное кардинальное число 1 в связи с другой супц«остью, но при этом не быть слабой.