И теперь перейдем, наконец, непосредственно к рассмотрению диаграмм и их видов.
Вообще выделяют три уровня логической модели. Эти уровни
различаются по глубине представления информации о структуре данных.
Этим уровням соответствуют следующие диаграммы:
1) презентационная диаграмма;
2) ключевая диаграмма;
3) полная атрибутивная диаграмма.
Разберем каждый из названных видов диаграмм и подробно
поясним смысл их различия по глубине представления информации о
структуре данных.
1. Презентационная диаграмма.
Такие диаграммы описывают только самые основные классы
сущностей и их связи. Ключи в таких диаграммах могут не описываться
совсем, и соответственно, связи – никак не индивидуализироваться.
Поэтому допустимыми являются связи типа «многие ко многим», хотя обычно
их стараются избегать или, если они все же присутствуют, –
детализировать. Также вполне допустимыми являются составные и
многозначные атрибуты, хотя мы и писали раньше, что базовые отношения с
такими атрибутами не являются приведенными к какой бы то ни было
нормальной форме. Интересно, что из рассмотренных нами трех видов
диаграмм только последний вид (полная атрибутивная диаграмма)
предполагает, что данные, представленные с е помощью, находятся в некой
нормальной форме. Тогда как уже рассмотренная презентационная диаграмма и
следующая на очереди ключевая диаграмма ничего подобного не
предполагают.
Такие диаграммы, как правило, используются для
презентаций (отсюда и их название – презентационные, т. е.
использующиеся для презентаций, демонстраций, где чрезмерная детализация
и не нужна).
Иногда при проектировании баз данных необходимо
проконсультироваться с экспертами той предметной области, информацией
которой эта конкретная база данных и занимается. Тогда также
используются презентационные диаграммы, ведь для получения нужных
сведений у специалистов профессии, далекой от программирования,
чрезмерное уточнение специфических деталей совсем не требуется.
2. Ключевая диаграмма.
В отличие от презентационных диаграмм ключевые диаграммы
описывают обязательно все классы сущностей и их связи, правда, в
терминах только первичных ключей. Здесь связи «многие ко многим» уже
непременно детализируются (т. е. связей такого типа в чистом виде здесь
просто не может быть задано). Многозначные атрибуты все еще допускаются
так же, как и в презентационной диаграмме, но если они присутствуют в
диаграмме ключевой, то, как правило, они преобразуются в самостоятельные
классы сущностей. Но, что любопытно, однозначные атрибуты все еще могут
быть представлены не полностью или описаны как составные. Эти
«вольности», еще допустимые в таких диаграммах, как презентационная и
ключевая, не допустимы уже в следующем виде диаграммы, ведь они
определяют, что базовое отношение не является нормализованным.
Таким образом, можно сделать вывод, что ключевые
диаграммы предполагают в дальнейшем лишь «навешивание» атрибутов на уже
описанные классы сущностей, т. е. при помощи презентационной диаграммы
достаточно описать самые необходимые классы сущностей, а потом уже при
помощи диаграммы ключевой добавить в нее все нужные атрибуты и
конкретизировать все наиболее важные связи.
3. Полная атрибутивная диаграмма.
Полные атрибутивные диаграммы наиболее детально из всех
вышеназванных описывают все классы сущностей, их атрибуты и связи между
этими классами сущностей. Как правило, такие диаграммы представляют
данные, находящиеся в третьей нормальной форме, поэтому естественно, что
в базовых отношениях, описанных такими диаграммами, не допускается
наличия составных или многозначных атрибутов, так же как и не
допускается наличия недетализированных связей типа «многое ко многим».
Однако у полных атрибутивных диаграмм все-таки есть
недостаток, т. е. и их нельзя в полной мере назвать наиболее полными из
диаграмм в смысле представления данных. Например, особенность конкретных
систем управления базами данных при использовании полных атрибутивных
диаграмм все еще не учитывается, и в частности, тип данных
конкретизируется только в той мере, в какой это необходимо для
необходимого логического уровня моделирования.
|