Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2015_Alontseva_Anokhin_Saakyan_Structural_analysis

.pdf
Скачиваний:
45
Добавлен:
29.03.2016
Размер:
1.5 Mб
Скачать

необходимо реализовать отношение «либо …, либо …» между основной сущностью и сущностями-категориями. В примере на рис. 17 каждый счет в банке открывается только одному клиенту – либо физическому, либо юридическому лицу. При этом человек или организация могут иметь несколько счетов в этом банке, а могут вообще не иметь их. Категориальная связь является частным случаем исключающей связи при условии, что отношения имеют мощность 1:1 и являются полными со стороны сущностей-категорий.

 

 

 

ФИЗИЧЕСКОЕ ЛИЦО

СЧЕТ

открыт для

#

Номер паспорта

 

*

Фамилия

# Номер счета

 

имеет

 

 

 

 

 

*

Вид счета

 

имеет ЮРИДИЧЕСКОЕ ЛИЦО

*

Дата открытия

 

 

открыт для

#

ИНН

 

 

 

 

 

*

Название

 

 

 

 

Рис. 17. Исключающая связь

3.3. Нотация «сущность-связь» Бахмана

Чарльз Бахман13 (Charles W. Bachman) – выдающийся исследователь и практик в области компьютерных наук, удостоенный в 1973 г. премии Тьюринга14. Он основал собственную фирму, которая занималась разработкой СУБД и линейкой CASE-средств.

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

PK (primary key) – первичный ключ; FK (foreign key) – внешний ключ;

13Иногда (редко) упоминается в русскоязычной литературе как Бэчмен

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

ники (Association for Computing Machinery, ACM). Ее часто сравнивают с но-

белевской премией, но только для IT-области.

40

PFK (primary and foreign key) – внешний ключ в составе пер-

вичного;

I (inherited) – атрибут, унаследованный от обобщенной сущности. Необходимо отметить, что названия наследуемых атрибутов и внешних ключей в данной нотации являются составными и содер-

жат имя сущности, из которой они мигрировали.

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

« » – мощность «один-к-одному», «» – мощность «один-ко-многим»,

«» – мощность «многие-ко-многим», полнота – с помощью пустого или закрашенного кружочка, а иден-

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

ГРУППА

 

 

СТУДЕНТ

PK,

Шифр группы

 

 

PK,

Номер студбилета

PFK,

ФИЛИАЛ МИФИ. Код

 

 

FK,

ГРУППА.Шифр группы

 

Год набора

 

 

FK,

ФИЛИАЛ МИФИ. Код

 

 

 

 

Фамилия

 

 

 

 

 

 

 

 

 

 

 

 

 

обучается в состоит из

 

СТУДЕНТ ЗАОЧНОГО ОТДЕЛЕНИЯ

 

 

 

IPK,

СТУДЕНТ.Номер студбилета

 

 

 

 

 

 

 

 

 

 

IFK,

ГРУППА.Шифр группы

 

 

учится в

 

IFK,

ФИЛИАЛ МИФИ. Код

 

 

 

 

 

I

СТУДЕНТ.Фамилия

 

 

имеет

 

I

 

 

 

 

Место работы

 

 

 

 

 

 

 

 

 

 

 

 

Второе образование

 

ФИЛИАЛ МИФИ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PK,

Код

 

 

СТУДЕНТ ВЕЧЕРНЕГО ОТДЕЛЕНИЯ

 

 

 

 

 

 

 

Название

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18. Диаграмма «сущность-связь» «Институт» в нотации Бахмана

В показанном на рис. 18 примере шифры учебных групп в различных филиалах НИЯУ МИФИ могут совпадать. Во избежание не-

41

однозначности сущность ГРУППА сделана зависимой и в состав ее первичного ключа введен код филиала МИФИ.

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

3.4. Нотация «сущность-связь» IDEF1X

Данная нотация появилась в рамках программы ICAM в 1985 г., заменив не очень удачную нотацию IFEF1, предложенную четырьмя годами ранее. Автором нотации, которой мало что известно, счита-

ется Мэри Лумис (Mary E. Loomis).

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

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

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

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

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

42

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

Рассмотрим кардинальные числа идентифицирующей связи, представляющей собой сплошную линию с точкой со стороны зависимой сущности . Как известно, эта связь может иметь мощность «один-к-одному» или «один-ко-многим» и должна быть полной со стороны зависимой сущности. Полнота и мощность связи указываются с помощью метки рядом с точкой. Если метка отсутствует, то это связь «один-ко-многим», неполная со стороны основной сущности. Именно такой является связь между филиалом МИФИ и группой (рис. 19): в филиале может быть много групп, а может не быть ни одной. Меткой «P» обозначается полная связь «один-ко- многим», а меткой «Z» – частично полная связь «один-к-одному».

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

Нотация IDEF1X не регламентирует изображение полной связи «один-к-одному», однако из контекста можно предположить, что это должен быть конец линии без метки и дополнительного символа.

Для изображения отношения категоризации в нотации IDEF1X используются два символа, называемых дискриминаторами:

– полная категоризация означает, что набор сущностейкатегорий полный и каждый экземпляр обобщенной сущности должен быть ассоциирован с одним экземпляром какой-либо сущностикатегории (в примере, показанном на рис. 19, студент обязательно должен быть либо очником, либо заочником, либо вечерником);

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

43

Группа

 

Филиал МИФИ

Шифр группы

образована в /

 

 

Код (FK)

включает в себя

Код

Год набора

 

Название

Студент

 

 

Номер студбилета

 

P

 

 

 

Шифр группы (FK)

состоит из

 

Код (FK)

 

Фамилия

/ учится в

 

 

 

 

 

 

 

 

 

 

 

 

категория студента

Студент-очник Студент-заочник Студент-вечерник

Номер студбилета (FK)

Номер студбилета (FK)

Номер студбилета (FK)

 

 

 

Стипендия

Место работы

Место работы

 

Второе образование

 

Рис. 19. Диаграмма «сущность-связь» «Институт» в нотации IDEF1X

Так же, как и в нотации Чена, методика IDEF1X предлагает средство для изображения доменов, вернее, иерархии доменов. На верхнем уровне этой иерархии указывается базовый домен, который определяется на числовом, текстовом, логическом, двоичном и других типах данных. Затем этот домен может быть декомпозирован на домены-типы, для каждого из которых задаются свои дополнительные ограничения (рис. 20).

3.5. Нотация Мартина и кардинальные числа

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

44

Температура (число)

Температура по

Температура по

Температура по

шкале Цельсия

шкале Кельвина

шкале Фаренгейта

(число ≥ –273,15)

(число ≥ 0)

(число ≥ –459,67)

Рис. 20. Иерархия доменов

популярного пакета Power Designer15 и упоминаемая в литературе как нотация Джеймса Мартина (James Martin) или нотация Information Engineering. Она очень близка к нотации Баркера, а ее отличительной чертой является лаконичное и удобное обозначение карди-

нальных чисел:

– «ноль»,

 

– «один»,

– «много». На каждом

 

конце линии указывается пара символов, при этом внешний символ (расположенный ближе к сущности) обозначает мощность, внутренний – полноту. Если верхнее кардинальное число равно единице, то оно не указывается (рис. 21).

Если связь идентифицирующая, то со стороны зависимой сущности используется другой символ:

– идентифицирующая связь мощностью «один-ко-многим»;

– идентифицирующая связь мощностью «один-к-одному».

Отношение категоризации изображается похожим на IDEF1X способом. Если внутри дискриминатора (символа разветвления связи) указан символ «Х», то такая связь является исключающей. Это означает, что экземпляр обобщенной сущности может быть ассоциирован с экземпляром только одной из сущностей-категорий. Если дискриминатор пуст, то возможны ассоциации сразу с несколькими категориями. В показанном на рис. 21 примере связь ис-

15 В начале 2000-х гг. этот пакет занимал 38% рынка CASE-средств для информационного моделирования. Сегодня его производитель – фирма Sybase входит в состав компании SAP, а сам пакет позиционируется как инструмент для моделирования бизнес-процессов.

45

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

Кроме того, как видно из рис. 21, на диаграмме «сущность-связь» в данной нотации традиционно не показываются внешние ключи, мигрировавшие через связи. Миграция происходит лишь на этапе создания физической модели, которая генерируется из концептуальной с привязкой к определенной СУБД. Атрибуты, входящие в состав первичного ключа, подчеркиваются.

образована в

Филиал МИФИ

 

 

Код

 

Название

 

 

 

 

 

 

 

Группа

 

 

 

Студент

Шифр

 

 

 

 

 

 

 

Номер студбилета

учится в

 

 

Год набора

 

 

Фамилия

 

 

 

 

 

 

 

 

 

...

 

 

 

 

 

 

 

 

 

 

 

 

 

Студент-очник

 

Студент-заочник

 

Студент-вечерник

 

 

 

 

 

 

 

Стипендия

Место работы

Место работы

 

 

Второе образование

 

 

 

 

 

 

 

 

 

Рис. 21. Диаграмма «сущность-связь» «Институт» в нотации Мартина

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

46

Таблица 9 чисел в различных нотациях

Чена

Баркера

Бахмана

IDEF1X

(0,1:0,1)

(0,1:1,1)

(1,1:0,1)

(1,1:1,1) (1,1:0,1)

(1,1:1,1)

(0,1:0,N)

(0,1:1,N) (1,1:0,N)

(1,1:1,N)

(1,1:0,N) (1,1:1,N)

(0,N:0,M) (0,N:1,M)

(1,N:0,M)

P

(1,N:1,M)

P

Глава 4. Моделирование поведения

Функциональное моделирование является очень удобным инструментом, если аналитик ставит задачу изучить, формализовать и документировать процессы, происходящие в исследуемой системе. Однако функциональные модели часто очень умозрительны и носят качественный характер. Зачастую один и тот же процесс можно изобразить несколькими вариантами, и все будут правильными. Такая вариабельность ставит вопрос об адекватности модели, о возможностях ее исследования и др. Отсутствие количественных мер в нотациях функционального моделирования ограничивает аналитика в решении таких задач, как оптимизация бизнес-процессов, оценка их ресурсоемкости и вероятности успешного завершения.

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

4.1. Сеть Петри

Модель была предложена в 1962 г. немецким математиком Карлом Адамом Петри16, внесшим огромный вклад в теорию сетей, теорию автоматов, параллельных и распределенных вычислений. Сеть Петри представляет собой ориентированный граф с вершинами двух типов – позициями и переходами (табл. 10). Дуги этого графа могут соединять только вершины различных типов.

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

16 К. Петри впервые использовал свою сеть в возрасте 13-ти лет, однако официальной датой ее опубликования считается защита диссертации, происшедшая 23 года спустя

48

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

Таблица 10

Нотация сетей Петри

Символ

Назначение

Позиция – может использоваться для отображения состояния объекта предметной области

Переход – может использоваться для отображения события или функции

Дуга – указывает возможные пути реализации процесса

На рисунке 22 приведен пример сети Петри с четырьмя позициями и четырьмя переходами. Сеть моделирует часть конвейера по обработке деталей на оборудовании. С помощью маркеров отображается движение детали по конвейеру и состояние оборудования. Как только деталь загружена (маркер в позиции «деталь загружена») и оборудование свободно (маркер в позиции «оборудование свободно»), начинается обработка детали. После того, как деталь обработана, оборудование освобождается, а деталь отправляется дальше.

Рис. 21. Сеть Петри «Обработка детали»

49

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]