пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

I семестр:
» Базы данных

Методы проектирования базы данных.

Модель «сущность-связь». Данная модель была впервые предложена Питером Ченом в 1976 году. Ее предназначение – концептуальное моделирование предметной области. Подход анализу предметной области, реализованный в модели «сущность-связь», послужил одним из источников для методов объектно-ориентированного анализа, а сами сущности напоминают классы (правда, классы, помимо атрибутов, обладают еще и поведением).

Метод Баркера.

Метод Баркера является одной из вариаций модели «сущность-связь» (-, -).

Сущность (Entity) - реальный либо воображаемый объект, имеющий значение для рассматриваемой предметной области, информация о котором подлежит хранению.

 Каждая сущность должна обладать некоторыми свойствами:

  • иметь уникальное имя;
  • сущность обладает одним или несколькими атрибутами, которые либо принадлежат сущности, либо наследуются через связь;
  • сущность обладает одним или несколькими атрибутами, которые однозначно идентифицируют каждый экземпляр сущности;
  • каждая сущность может обладать любым количеством связей с другими сущностями модели.

В качестве имени сущности следует выбирать существительное в единственном числе и в именительном падеже. Атрибут – некоторая характеристика сущности. Атрибут принадлежит (входит в состав) сущности.

Это подчеркивается и обозначением атрибутов в методе Баркера. Атрибуты перечисляются внутри блока сущности, ниже наименования.

Связь (Relationship) - - это ассоциация между сущностями, при которой, как правило, каждый экземпляр одной сущности, называемой родительской сущностью, ассоциирован с произвольным (в том числе нулевым) количеством экземпляров второй сущности, называемой сущностью-потомком, а каждый экземпляр сущности-потомка ассоциирован в точности с одним экземпляром сущности-родителя.

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

Вторая характеристика связи – это степень связи, то есть, количество участвующих в ней экземпляров каждой из сущностей. В зависимости от степени выделяют связи «один к одному», «один ко многим» (или «многие к одному») и «многие ко многим». 

Наконец, связи также характеризуются обязательностью участия в них. Эту характеристику называют также «класс принадлежности», который может быть обязательным и необязательным. В нашем примере каждая группа обязательно должна включать студентов, иначе ее существование бессмысленно. Аналогично, каждый студент должен входить в состав какой-либо группы. То есть, класс принадлежности для обеих сущностей – обязательный. Необязательный класс принадлежности показывается при помощи изображения соответствующего конца связи пунктирной линией.

Рассмотрев характеристики связей, вернемся снова к степени связи. Связи «один к одному» встречаются достаточно редко. Если класс принадлежности для обеих сущностей обязательный, то возможно, что следует объединить их и сделать из двух сущностей одну. Вторая возможная ситуация для связи «один к одному» - ошибка в определении степени связи. При более подробном анализе часто выясняется, что для одной из сущностей степень связи будет не «один», а «много».

Связь  «многие ко многим» напрямую в реляционной СУБД реализовать нельзя. В самом простом случае мы должны просто заменить связь «многие ко многим» на так называемую граничную сущность, задача которой состоит в связывании между собой других сущностей.

Обобщенная сущность включает в себя несколько вложенных сущностей. Вложенные сущности обладают атрибутами обобщенной сущности и добавляют к ним свои, присущие только ей, иначе их выделение ничем не оправдано.

Как обобщенная сущность, так и вложенные в нее сущности могут участвовать в связях.

В реальности может возникать ситуация, когда сущность участвует строго в одной связи из некоторой группы. Такие связи образуют группу, на диаграмме они объединяются дугой.

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

Метод IDEF1x В его основе лежат те же идеи и принципы. В большинстве случаев, модели, построенные с помощью метода Баркера, можно преобразовать в модели IDEF1x и обратно. Рассмотрение этого метода оправдано тем, что он чаще используются в различных программных средствах для проектирования баз данных.

Сущность определяется так же. Изображение сущности также весьма похоже, основное отличие состоит в том, что атрибуты, входящие в первичный ключ, отделяются от остальных и помещаются в верхнюю часть прямоугольника. Можно отметить, что обязательные и необязательные атрибуты визуально не выделяются.

Связи в методе 1 несколько отличаются по своим характеристикам от связей метода Баркера. Они точно так же обладают степенью, и можно выделить связи со степенью «многие ко многим», «один ко многим». Но также связь может быть идентифицирующей и неидентифицирующей.

Если между двумя сущностями имеется идентифицирующая связь, то первичный ключ главной сущности включается в состав первичного ключа подчиненной сущности. Кроме того, подчиненная сущность явно выделяется. В случае, если связь неидентифицирующая, то первичный ключ из главной сущности включается в число атрибутов подчиненной сущности, а сама она никак не изменяется. 

Идентифицирующая связь.                                        Неидентифицирующая связь.

В случае, если участие в связи не обязательно, связь помечается ромбом. Связи «многие ко многим» также допускаются только на начальных этапах и должны преобразовываться аналогично тому, как предполагает метод Баркера. Объединение связей в группы и задание неперемещаемых связей в методе 1 не предусмотрено. 

В методе 1 обобщение – это разновидность связи. Отличать их можно при помощи так называемого дискриминатора – атрибута, значения которого и позволяют относить экземпляр сущности к тому или иному производному виду. Дискриминатор указывается рядом с символом обобщения, в нашем случае в качестве дискриминатора выступает атрибут «ФормаОбучения». Возможность задавать неполные классификации. Символе классификации под кружком две линии - полная. Если бы имелись еще какие-то разновидности студентов, которые мы не привели в модели (то есть, они считались бы просто студентами), то в символе классификации под кружком была бы одна линия.

Можно сказать, что эти два метода в целом очень похожи, как и было отмечено выше.


27.01.2014; 20:55
хиты: 3796
рейтинг:0
Точные науки
информатика
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь