Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лабы / golenishev_iosu.pdf
Скачиваний:
273
Добавлен:
26.04.2015
Размер:
5.36 Mб
Скачать

призвана обеспечить прочную и долговременную работу всей системы, выдерживать замену одной используемой СУБД на другую.

Задача логического этапа проектирования – организация данных, выделенных на предыдущем этапе проектирования в форму, принятую в выбранной конкретной СУБД. Иными словами, требуется разработать схему концептуальной модели и схемы внешних моделей данных о предметной области, пользуясь только теми типами моделей данных и их особенностями, которые поддерживаются этой СУБД. На этом этапе проектирования обычно не прорабатываются вопросы, связанные с организацией хранения и доступа к данным на внутреннем уровне. Но целесообразно уже здесь получить вполне определенные рекомендации по выбору методов доступа.

Задача физического этапа проектирования – выбор рациональной структуры хранения данных и методов доступа к ним, исходя из арсенала методов и средств, который предоставляется разработчику системой управления базами данных.

2.3. Инфологическое проектирование базы данных

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

Исходя из важности адекватного отображения предметной области, к моделям данных предъявляют ряд требований, и выдвигают комплекс критериев для оценки их эффективности (оптимальности) (табл. 2.1).

 

Таблица 2.1

Критерий

Пояснение

Структурная достоверность

Соответствие способу определения и организации информации в данной

 

предметной области

Простота

Легкость понимания модели разработчиками и пользователями

 

информационной системы

Выразительность

Способность представлять отличия между разными типами данных, связи

 

между данными и ограничения

Отсутствие избыточности

Исключение излишней информации, т.е. любая часть данных должна быть

 

представлена только в одном месте

Готовность к совместному

Отсутствие принадлежности к какому-то особому приложению или

использованию

технологии

Расширяемость

Способность эволюционировать с целью включения новых требований с

 

минимальным влиянием на существующих пользователей

Целостность

Согласованность по способам использования и управления информацией

Представление в виде диаграмм

Способность представления ««одели с помощью понятных широкому кругу

 

пользователей обозначений

Инфологическое (концептуальное) проектирование – процесс создания внешней (инфологической) модели данных о предметной области, не зависящее от любых физических аспектов ее представления.

На этом этапе используется информация, объединяющая требования пользователей. Инфологическое проектирование базы данных не зависит от таких подробностей ее реализации, как тип выбранной СУБД, набор создаваемых прикладных программ, используемые языки программирования, тип вычислительной системы и т.п. При разработке инфологическая модель постоянно подвергается критической оценке, проверке на соответствие требованиям пользователей, и при необходимости модифицируется. От качества созданной инфологической модели в определяющей степени зависит эффективность конечной базы данных.

2.3.1. Модель «сущность-связь»

Цель инфологического моделирования – обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Поэтому инфологическую модель данных пытаются строить на доступном широкому кругу пользователей и разработчиков языке. Известны следующие средства создания внешних моделей:

31

семантические сети;

язык инфологического моделирования;

ER-диаграммы.

Наибольшую популярность из-за доступности, наглядности и компактности приобрел подход моделирования «сущность-связь».

Модель «сущность-связь» (Entity-Relationship model) разработана Ченом в 1976 году с целью упрощения концептуального проектирования баз данных.

Основными элементами этой модели являются:

сущности;

атрибуты;

связи.

Сущность представляет собой различимое множество объектов {экземпляров сущности) реального мира с одинаковым набором атрибутов.

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

На ER-диаграммах сущность представляется прямоугольником с именем сущности внутри. Атрибут – неотъемлемое свойство сущности или связи. Именно по значениям атрибутов можно

идентифицировать экземпляр сущности. Значения атрибутов представляют основную часть сведений, хранящихся в БД.

На ER-диаграммах атрибут представляется овалом (эллипсом), соединенным с соответствующей сущностью линией и с именем атрибута внутри.

С понятием атрибута тесно связано понятие домена. Домен – множество значений, которые может принимать атрибут. Разработчика не должен удивлять тот факт, что домены могут быть бесконечными (хотя и перечислимыми) множествами

Атрибуты делятся на:

простые;

составные;

однозначные;

многозначные;

производные.

Простой атрибут состоит из одного компонента с независимым существованием.

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

Однозначный атрибут содержит одно значение для одного экземпляра сущности. Многозначный атрибут может содержать несколько значений для одного экземпляра сущности.

Производный атрибут представляет значение, производное (вычисляемое) от значения связанного с ним атрибута или некоторого множества атрибутов, принадлежащих некоторой сущности.

Вопрос однозначной идентификации экземпляров сущности связан с понятием ключа.

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

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

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

Ассоциирование двух или более сущностей называется связью. Связи, также как и сущности и атрибуты идентифицируют именем.

На ER-диаграммах связь изображается в виде ромба или шестиугольника, помеченного соответствующим именем. Соединение с ассоциированными сущностями производится линиями.

Пример ER-диаграммы с обозначениями сущностей, их атрибутов и связей представлен на рис. 2.3. Степень связи – количество сущностей, которые охвачены данной связью.

Если связь определена между двумя сущностями, то ее степень – 2, а называется такая связь бинарной. Связь между тремя сущностями называется тернарной, четырьмя сущностями –

32

кватернарной и т.д. В общем случае связь между n сущностями называется n-арной. Примеры различных связей представлены на рис. 2.4.

Рекурсивная связь – связь, в которой одни и те же сущности участвуют несколько раз в разных ролях. Рекурсивная связь часто называют унарной. Пример такой связи представлен на рис. 2.4, г. В приведенном примере каждый студент из сущности СТУДЕНТ может исполнять обязанности

дежурного по отношению к другим студентам той же сущности.

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

С этими ограничениями связано понятие показателя кардинальности связи.

Показатель кардинальности указывает количественное соотношение экземпляров сущностей для каждой связи [5, 7].

Рис. 2.3. Пример ER-диаграммы

33

Рис. 2.4. Примеры связей:

а) – бинарной; б) – тернарной; в) – кватернарной; г) – унарной (рекурсивной)

Классическими признаны бинарные связи с показателями кардинальности «ОДИН-К-ОДНОМУ», «ОДИН-КО-МНОГИМ», «МНОГИЕ-КО-МНОГИМ».

Пусть в предметной области выделены сущности А и В.

1. Связь ОДИН-К-ОДНОМУ (1:1): в каждый момент времени каждому экземпляру сущности А соответствует не более одного экземпляра сущности В (рис. 2.5).

Рис. 2.5. Связь ОДИН-К-ОДНОМУ

Декан осуществляет свою деятельность на одном факультете вуза.

2. Связь ОДИН-КО-МНОГИМ (1:М): каждому экземпляру сущности А соответствуют 0, 1 или несколько представителей сущности В (рис. 2.6).

34

Рис. 2.5. Связь ОДИН-КО-МНОГИМ

В квартире может проживать несколько жильцов.

3. Связь МНОГИЕ-КО-МНОГИМ (M:N): каждому экземпляру сущности А соответствуют 0, 1 или несколько представителей сущности В, каждому экземпляру сущности В соответствуют 0, 1 или несколько представителей сущности А (рис. 2.7).

Рис. 2.7. Связь МНОГИЕ-КО-МНОГИМ

Процесс обучения осуществляется множеством преподавателей с множеством студентов.

Пример 2.1. Если связь между сущностями МУЖЧИНЫ и ЖЕНЩИНЫ называется БРАК, то существует четыре возможных представления такой связи (рис. 2.8) [5].

Характер связей между сущностями может оказаться более сложным (рис. 2.9) [5, 7].

В приведенных примерах для повышения иллюстративности рассматриваемых связей не показаны атрибуты сущностей и ассоциаций во всех ЕR-диаграммах. Так, ввод лишь нескольких основных атрибутов в описание значительно усложняет ER-диаграмму. В связи с этим язык ER-диаграмм используется для построении небольших моделей и иллюстрации отдельных фрагментов больших. Для представления полных инфологических моделей предметной области применяется менее наглядный, но более содержательный язык инфологического моделирования (ЯИМ) [5], в котором сущности и ассоциации представляются предложениями вида:

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

35

Соседние файлы в папке лабы