Разработка концептуального уровня БД
Целью данного этапа является последовательная разработка концептуальной информационно—логической модели предметной области, отражающей логику информации предприятия и даталогической модели базы данных.
Инфологическая модель предметной области
Исходными данными для построения ИЛМ предметной области являются результаты анализа предметной области, представленные в виде описания классов объектов и связей между ними. Чаще всего ИЛМ предметной области представляют в терминах семантической модели данных, в виде ER — диаграммы предметной области.
Необходимо отметить, что выявление в предметной области классов объектов, связей, описание и отображение их в диаграмме происходит параллельно.
Методологии построения ER—диаграмм
В настоящее время существуют разнообразные методологий (нотации) построения ER—модели.
1 Методология Питера Чена. В 1976 году Питером Ченом была предложена семантическая модель "сущность—связь" — ER—модель, которая в настоящее время стала самой распространенной.
Соглашения, используемые при изображении диаграммы:
— классы объектов отображаются прямоугольником, свойства эллипсами, связи ромбами;
— уникальный идентификатор (первичный ключ) отображается в виде эллипса, обведенного двойной линией;
— мощность связи «один» отображается линией, «много» — линией со стрелкой.
Особенности этой методологии:
— метод позволяет показать связь между двумя, тремя и более классами объектов (сущностями);
— связь может иметь собственные атрибуты;
— нет возможности отображения взаимоисключающих связей и непереносимости связей;
— взаимоисключающие связи неявно реализуются в виде супертипов и подтипов;
— нельзя выразить опциональность атрибутов и связей.
На рисунке 6 приведен пример фрагмента ER—диаграммы в методологии Питера Чена.
Рисунок 6 — Пример фрагмента ER—диаграммы в методологии Питера Чена
На диаграмме отображены следующие бизнес—правила предприятия: «Каждому заказу, имеющему такие свойства как номер и дата, должна соответствовать одна или более позиций заказа, имеющей такие свойства, как номер, цену за единицу товара, количество товара»; с другой стороны – «Каждая позиция товара должна относиться к одному и только одному заказу».
Необходимо отметить, что в примере приведен фрагмент описания предметной области. В ней также должны существовать такие классы объектов, как «Товар», «Единица измерения» и другие.
2 Методология IDEF1. Используется в CASE—средствах ERwin, Design/IDEF. В методологии используются следующие соглашения:
— каждому классу объектов присваивается уникальное имя и номер;
— обязательная связь отображается сплошной линией, необязательная – пунктирной;
— мощность связи "один" отображается линией, "много" – точкой;
— связь может дополнительно определяться с помощью указания мощности (типа) связи. Мощность может принимать следующие значения: N – ноль, один или более (принимается по умолчанию); Z – ноль или один, P – один или более.
— свойства класса объектов отображаются в виде списка имен внутри блока, отображающего класс объектов;
— атрибуты первичного ключа изображаются вверху и отделяются от других.
Пример представления ER—диаграммы в методологии IDEF1 приведен на рисунке 7.
Рисунок 7 — Пример представления ER—диаграммы в методологии IDEF1.
На рисунке 7 отображена та же ситуация в предметной области, что и на рисунке 6.
3 Методология Ричарда Баркера. Используемые в методологии элементы: класс объектов, свойство класса объектов, уникальные идентификаторы, опциональность свойств, связи, мощность (тип), опциональность и переносимость связей, уникальность объекта из связи, супертипы, подтипы, арки.
Используются следующие соглашения:
— класс объектов отображается в виде четырехугольника с закругленными углами. Имя класса объектов указывается внутри четырехугольника, это имя существительное в единственном числе, отображенное заглавными буквами;
— свойства записываются внутри четырехугольника, отображающего класс объектов строчными буквами, это имя существительное в единственном числе;
— четырехугольник, отображающий класс объектов, можно увеличивать до любых размеров, четырехугольники могут быть разных размеров;
— опциональность свойств помечается: обязательное свойство – звездочкой (*), необязательное – кружочком (о);
— уникальный идентификатор помечается #, если уникальных идентификаторов несколько, тогда каждый помечается номером, указанным в скобках, например, # (1), #(2);
— обязательная связь помечается сплошной линией, необязательная – пунктирной;
— тип (мощность) связи «один» помечается линией, «много» — «вороньей лапой».
Более сложные элементы, используемые в ER—диаграмме, построенной по методологии Ричарда Баркера, рассмотрим далее в примерах.