Концептуальная организация данных
Этап концептуального проектирования является специфическим, так как здесь требуется одновременно знание особенностей предметной области и методологии проектирования. Характерным является использование различных моделей (модель “сущность - связь”, бинарные модели данных, семантически сети, инфологические модели данных и др.). Отрицательным моментом является неадекватность получаемых результатов как при использовании различных моделей, так и в рамках коллектива исполнителей.
Одной из распространенных моделей является модель “сущность - связь” (entity - relationship), в литературе наряду с этим используется термин “ER - модель” или “модель Чена”. Базовыми структурами в ER - модели являются “типы сущностей” и “типы связей”.
Отличие от типа связи от типа сущности - в установлении зависимости существования реализации одного типа от существования реализации другого.
Пример: ЛИЧНОСТЬ - тип сущности, тип СОСТОИТ В БРАКЕ - нет, т.к. реализация последнего типа не существует, если не существует двух личностей. Поэтому, тип связи может рассматриваться как агрегат двух или более типов сущностей.
ER-модель может быть представлена ER-диаграммой (ERD) состоящей из следующих элементов.
Выделяют три типа связи: связь “один к одному” (1:1), связь “один ко многим” (1:M), связь “многие ко многим” (M:N).
Примеры этих связей: 1:1
больной койка M:1
больной палата M:N
больной врач
Выделение этих связей является крайне важным, т.к. связи 1:M и M:N имеют внутреннюю неопределенность, что сказывается при операциях модификации. Для преодоления неопределенности на этапе реализации логической модели требуется вводить избыточную информацию.
Рассмотрим фрагмент концептуальной модели предметной области “Больница”(рис.5).
1 N
Больница
Е
Больничная штатные больнич.
палата врачи лаборатории
N N M
Палата Врач Лаборатория
Персональ- Размеще- Паци- Направ-
ные пала- ние ент врача ленный ана-
ты лиз
N N M N
Персонал Пациент Анализ
1 1 N
ID ID
диагноз паци- анализ пациен-
та та
N
Диагноз
Рис.5
Следует отметить следующие возможности ER-модели:
а) рекурсивное множество связей
1 Руководитель
Управление
N Подчиненный
Рис.6
б) два множества связей между одними и теми же множествами сущностей
Лечащий
врач
1 N
N M
Консультант
Рис.7
в) множество n-арных связей, например тернарных
|
|
Лечащий
врач
M
|
Рис.8
Рассмотрим пример представления атрибутов для конкретного объекта.
Рис.9
Выделяют следующие типы атрибутов:
а) многозначный атрибут
N
Рис.10
б) атрибут множества связей
Размещение N койки
N
Рис.11
В общем случае атрибуты отображаются либо на самой ERD(в случае небольшого количества объектов), либо в виде отдельных приложений по каждому объекту.
При построении ER моделей в ряде случаев целесообразно выделять ряд ограничений:
а) ограничение целостности применительно к атрибутам
Например: N койки - целое, положительное, число коек - диапазон от 1 до 100
б) ограничение по существованию сущностей
Е
больничные
палаты
Рис.12
в) ID-зависимость
В ряде случаев сущность не может быть идентифицирована по значениям собственных атрибутов
ID
Диагноз па-
циента
Рис.13
Кратко остановимся на других моделях.
Бинарные модели - это графовая модель, в которой вершины являются представлениями простых однозначных атрибутов, а дуги - представлениями бинарных отношений между атрибутами. Граф бинарной модели может рассматриваться как структура дуальная табличной структуре.
Рис.14
Семантические сети - модели данных, созданы исполнителями, работавшими над проблемами искусственного интеллекта. Базовые структуры в этих моделях могут быть представлены графом, множество дуг которого образуют сеть, предназначенную для систематизации знаний общего характера.
Рис.15
Инфологические модели данных - интерпретируют данные в двух исчислениях предикатов (приближенная к естественному языку).