Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа 2 БД.doc
Скачиваний:
15
Добавлен:
22.11.2019
Размер:
540.67 Кб
Скачать

Лабораторная работа № 2

ТЕМА: ОСНОВНЫЕ ПОНЯТИЯ КОНЦЕПТУАЛЬНЫХ МОДЕЛЕЙ (продолжение)

Основной целью лабораторной работы является построение концептуальной модели базы для сложных информационных объектов. Для выполнения лабораторной работы необходимо изучить основные понятия и базовые методы построения концептуальных моделей, изложенные в лабораторной работе №1.

В первом пункте лабораторной работы рассматриваются методы моделирования составных объектных множеств, а в следующем – концептуальных объектных множеств. Эти два понятия часто встречаются на практике. Поняв эти два приема, вы расширите ваши навыки выполнения этапов определения требований и концептуального проектирования

  1. Построение модели данных для составных объектов

Хотя модели, созданные нами при помощи базовых приемов моделиро­вания (лабораторная работа №1), относительно просты, нетрудно убедиться в их возможностях и при­носимой ими пользе. Однако большинство проблем, с которыми мы в дейст­вительности сталкиваемся в бизнесе, значительно более сложны и часто тре­буют использования составных объектов, то есть отношений, рассматривае­мых как объектные множества, или отношений высокого порядка, в кото­рых участвуют три или более объектных множества.

Составной объект. Отношение, рассматриваемое как объектное множество.

Отношение высокого порядка. Отношение между тремя или более объектными множествами.

Отношение можно использовать как объектное множество. Например, мужчина и женщина, связанные собой отношением СОСТОИТ-В-БРАКЕ-С составляют семейную пару, которая сама по себе яв­ляется объектом. Будучи таковым, семейная пара может обладать собствен­ными атрибутами, такими как дата свадьбы, общий доход и адрес. Более того, она может участвовать в других отношениях, таких, как ВЛАДЕЕТ-АВТОМОБИЛЕМ или ЯВЛЯЮТСЯ-РОДИТЕЛЯМИ. Таким образом, отноше­ние СОСТОИТ-В-БРАКЕ-С можно рассматривать как объектное множество, элементами которого являются семейные пары.

Рис. 1. Отношение как объектное множество

Это относится ко всем отношениям. Отношения можно рассматривать как объекты, они могут обладать атрибутами и участвовать в других отно­шениях. Они называются составными объектными множествами. Графически мы обозначаем составное множество прямоуголь­ником, нарисованным вокруг отношения и участвующих в нем объектных множеств (рис. 1). Иногда для удобства мы будем давать составным объ­ектам объектные имена — существительные — дополнительно к имени от­ношения. Например, на рис. 1 СЕМЕЙНАЯ-ПАРА — имя объектного множества, данное отношению СОСТОИТ-В-БРАКЕ-С, Это разумно, если от­ношение используется в качестве объектного множества.

Если в отношениях, уча­ствуют два объектных множества, то такие отношения называются бинар­ными. Однако отношение может связывать три и более объектных множе­ства. Такие отношения высокого порядка называются n-арными отноше­ниями, где n обозначает число объектных множеств. Для упрощения терминологии будем называть 3-арные и 4-арные отношения трехсторонними и четырехсторонними.

Бинарное отношение. Отношение между двумя объектными множествами.

n-арное отношение. Отношение между n объектными множествами.

Проиллюстрируем эти понятия примером. Предположим, что Дик Грин­берг из International Product Distribution (IPD) хочет отслеживать продажи разных видов товаров по странам. Чтобы помочь ему, мы создаем объектное множество ТОВАР, объектное множество СТРАНА и устанавливаем отноше­ние ПРОДАН-В между ними (рис. 2).

Рис.2. Модель отслеживания продаж

Элемент множества ТОВАР, например, «средство для мытья посуды .№5» связан с элементом множества СТРАНА (например. Англия), если средство для мытья посуды №5 продано в Англии. Если мы рассмотрим отношение ПРОДАН-В как объектное множество, мы можем приписать ему атрибут КОЛИЧЕСТВО, отражающий количество каждого товара, проданное в каждой стране.

Обратите внимание, что атрибут КОЛИЧЕСТВО зависит и от товара, и от страны. То есть мы не можем определить значение количества только по товару или только по стране — нам нужно и то, и другое. Вот почему КОЛИЧЕСТВО — атрибут отношения между товаром и страной, а не страны или товара по отдельности. По этой причине модели на рис. 3 обе неправильны. В случае (б) модель не различает количества товара, про­данные в разных странах, а в случае (в) модель не различает товары, про­данные в стране.

Рис. 3. Неправильные модели отслеживания продаж

Модель на рис. 2 позволяет отслеживать продажи товара в стране. Однако предположим, что нам нужна более тонкая классификация продаж, чем дает модель. В частности, мы хотим записывать количество каждого товара, проданного в каждой стране в конкретный день. Тогда мы связываем ПРОДАН-В с объектом ДАТА и приписываем атрибут КОЛИЧЕСТВО этому новому отношению (рис. 4). Снова атрибут принад­лежит внешнему отношению, поскольку для определения количества требу­ется знать элементы всех трех множеств: ТОВАР, СТРАНА и ДАТА.

Рис. 4. Отслеживания продаж по стране и дате

На рис. 4. представлено решение этой задачи в виде двух бинарных отношений, первое из которых (ПРОДАН-В) используется как объектное множество во втором отношении ПРОДАН-ТОГДА-ТО.

Однако может ока­заться более удобным представить эту модель в виде одного трехстороннего отношения, как на рис. 5. Мы снова видим, что КОЛИЧЕСТВО - атри­бут отношения между всеми тремя объектными множествами.

Рис. 5. Отслеживание продаж по стране и дате (второй вариант)

Любое отношение высокого порядка можно разбить на последователь­ность вложенных бинарных отношений. Однако не все из них будут иметь для нас какой-либо «физический» смысл. Поэтому иногда при построении моделей данных мы будем пользоваться n-арными отношениями, так как их может оказаться легче связать с нашей реальной проблемой.

В соответствии с максимальными мощностями отношений высокого по­рядка мы предполагаем, что все бинарные отношения, составляющие отно­шение высокого порядка имеют тип много-ко-многим. Это допущение обычно верно на практике.