Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методы и средства проектирования информационных систем и технологий. Учебное пособие.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
– не связанные стрелки (unconnected border arrow);
– не разрешенные стрелки (unresolved (square tunneled) arrow connection);
– блоки, не имеющие по крайней мере одной стрелки выхода и
одной стрелки управления (activity “Наименование функциональ­ного блока” has no Control) и т. д.
Для наглядного представления количества уровней декомпози­ции и отношений между родительскими и дочерними диаграммами следует сформировать отчет Node Tree. Для этого нужно вызвать диалог Diagram/Add Node Tree, после чего появится диалоговое ок­но, где будет предложено название отчета (можно написать другое) – Node Tree Name, верхний уровень диаграммы, с которого следует начать строить отчет – Top level activity, и выбрать количество уров­ней который будет иметь отчет – Number of levels (рис. 10.10).
Рис. 10.10. Окно построения отчета Node Tree
При нажатии кнопки «Далее» можно изменить либо оставить прежними параметры отчета. Затем следует нажать кнопку «Гото-
91
во» и появится сформированный отчет. Отчет имеет древовидную структуру (рис. 10.11).
Рис. 10.11. Пример отчета Node Tree
Задания к работе
Задание 1. Ознакомитесь с назначением и возможностя- ми BPWin.
Задание 2. Разработайте функциональную модель любого процесса.
Задание 3. Отобразите разработанную функциональную мо- дель в среде BPWin.
Методика выполнения работы
Для выполнения заданий к лабораторной работе необходимо изучить раздел «Теоретическая часть».
Содержание отчета
Отчет о выполнении лабораторной работы должен включать:
1) ответы на контрольные вопросы;
2) подробное описание процесса построения функциональной
диаграммы в BPWin.
Контрольные вопросы
1. Охарактеризуйте требования, предъявляемые к методикам
реализации и программным инструментальным средствам, техно­логией создания информационных систем.
2. Дайте характеристику среде BPWin.
3. Что представляет собой модель в BPWin?
92
4. Каким образом задается описание работ в BPWin?
5. При помощи какого инструмента задается связь между ра-
ботами в модели BPWin?
6. Перечислите и охарактеризуйте основные виды стрелок.
7. Опишите алгоритм создания функциональной модели в
BPWin.
Литература
Основная: 1–4.
Дополнительная: 1–4.
11. МОДЕЛИРОВАНИЕ В ERwin
Цель – работы является проведение процесса системного мо-
делирования для заданной предметной области с помощью ин­струментальной среды ERwin.
Формируемые компетенции или их части: ПК-1; ПК-2; ПК-3; ПК-4; ПК-30.
Теоретическая часть
Реляционные базы данных. Реляционная база данных – это те- ло связанной информации, сохраняемой в двухмерных таблицах. Напоминает адресную или телефонную книгу. В книге имеется большое количество входов, каждый из которых соответствует определенной особенности. Для каждой такой особенности, может быть несколько независимых фрагментов данных, например имя, телефонный номер, и адрес. Предположим, что вы должны сфор­матировать эту адресную книгу в виде таблицы со строками и столбцами. Каждая строка (называемая также записью) будет соот­ветствовать определенной особенности; каждый столбец будет со­держать значение для каждого типа. В реляционной модели все данные представляются как факты о сущностях и связях.
Сущность – это, например, человек, место, вещь, событие, концепция, в которых хранится информация. Сущности именуются обычно существительными, такими как покупатель, компьютер, служащий, продажа.
93
Более точно, сущность – это множество индивидуальных объ­ектов – экземпляров, причем все эти объекты являются различны­ми. Связь – это функциональная зависимость между сущностями. Например, «служащий совершает продажи».
Каждая сущность обладает атрибутами. Атрибут – это свой­ство объекта, характеризующее его экземпляр. Сущность служа­щий может иметь атрибуты имя, дата рождения и т.д.
Общепринятым видом графического изображения реляцион­ной модели данных является ER-диаграмма. На такой диаграмме сущности (таблицы) изображаются прямоугольниками, возможно, соединенными между собой линиями (связями). Такое графическое представление облегчает восприятие структуры базы данных по сравнению с текстовым описанием.
Моделирование в ERwin
Процесс построения информационной модели. Процесс по- строения информационной модели состоит из следующих шагов: определение сущностей; определение зависимостей между сущно­стями; задание первичных и альтернативных ключей; определение атрибутов сущностей; приведение модели к требуемому уровню нормальной формы; переход к физическому описанию модели: назначение соответствий имя сущности – имя таблицы, атрибут сущности – атрибут таблицы; задание триггеров, процедур и огра­ничений; генерация базы данных.
ERwin создает визуальное представление (модель данных) для решаемой задачи. Это представление может использоваться для детального анализа, уточнения и распространения как части доку­ментации, необходимой в цикле разработки. Однако ERwin далеко не только инструмент для рисования. ERwin автоматически созда­ет базу данных (таблицы, индексы, хранимые процедуры, триггеры для обеспечения ссылочной целостности и другие объекты, необ­ходимые для управления данными).
Основные компоненты диаграммы Erwin – это сущности, ат- рибуты и связи. Каждая сущность является множеством подобных индивидуальных объектов, называемых экземплярами. Каждый эк­земпляр индивидуален и должен отличаться от всех остальных эк­земпляров. Построение модели данных предполагает определение сущностей и атрибутов, т. е. необходимо определить, какая ин-
94
формация будет храниться в конкретной сущности или атрибуте. Если рассматривать диаграмму как графическое представление правил предметной области, то сущности и атрибуты являются существительными, а связи – глаголами.
Сущности (Entity) в ERwin. На диаграмме сущность изобража­ется прямоугольником. В зависимости от режима представления диаграммы прямоугольник может содержать имя сущности, ее описание, список ее атрибутов и другие сведения.
Горизонтальная линия прямоугольника разделяет атрибуты сущности на два набора – атрибуты, составляющие первичный ключ в верхней части, и прочие (не входящие в первичных ключ) – в нижней части.
Сущность можно определить как объект, событие или концеп­цию, информация о которых должна сохраняться. Сущности долж­ны иметь наименование с четким смысловым значением, имено­ваться существительным в единственном числе, не носить «техни­ческих» наименований и быть достаточно важными для того, что­бы их моделировать. Именование сущности в единственном числе облегчает в дальнейшем чтение модели. Фактически имя сущности дается по имени ее экземпляра. Примером может быть сущность «Студент» (но не «Студенты»!) с атрибутами «Номер студенческо­го билета», «Фамилия студента» и «Адрес студента». На уровне физической модели ей может соответствовать таблица students с колонками st_id, st_lname и address. Сущности соответствует таб­лица в реальной СУБД.
В ERwin сущность визуально представляет три основных вида информации: атрибуты, составляющие первичный ключ; не клю­чевые атрибуты; тип сущности (независимая/зависимая).
Первичным ключом служит атрибут или набор атрибутов, уникально идентифицирующих единственный экземпляр сущно­сти. Другими словами, первичный ключ может быть как одним ат­рибутом, так и состоять из нескольких. Первичный ключ, состоя­щий более чем из одного атрибута, называется составным, или
компонентным, ключом.
Первичный ключ должен быть статическим (static) и неразру­шаемым (non-volatile). Под статичностью и неразрушаемостью подразумевается, что первичный ключ не должен подвергаться из­менениям. Изменения первичного ключа трудно сопровождать, что
95
часто приводит к весьма дорогостоящим переделкам, поэтому лучшим считается вариант, когда первичный ключ абсолютно не зависит от экземпляров сущности. Выбор первичного ключа может оказаться непростой задачей, решение которой может повлиять на эффективность будущей ИС. В одной сущности могут оказаться несколько атрибутов или наборов атрибутов, претендующих на роль первичного ключа. Такие претенденты называются потенци- альными ключами (candidate key). Для каждого первичного ключа ERwin создает при генерации структуры БД уникальный индекс.
Итак, можно сформулировать правила определения сущностей:
– сущность должна иметь уникальное имя;
– сущность обладает одним или несколькими атрибутами, ко-
торые либо принадлежат сущности, либо наследуются через отно­шения;
– сущность обладает одним или несколькими атрибутами, ко­торые однозначно идентифицируют каждый образец сущности и называются ключом или составным ключом;
– каждая сущность может обладать любым количеством от­ношений с другими сущностями;
– если внешний ключ целиком используется в составе первич­ного ключа, то сущность является зависимой от идентификатора.
Экземпляры независимой (родительской) сущности могут быть уникально идентифицированы без определения ее связей с другими сущностями; зависимая (дочерняя) сущность, наоборот, не может быть уникально идентифицирована без определения ее связей с другими сущностями. Зависимая сущность отображается в ERwin прямоугольником с закругленными углами.
Зависимая сущность может наследовать один и тот же внеш­ний ключ от более чем одной родительской сущности, или от од­ной и той же родительской сущности через несколько связей. Если не введены различные роли для такого множественного наследова­ния, ERwin считает, что в зависимой сущности атрибуты внешнего ключа появляются только один раз.
Унификация – это объединение двух или более групп атрибу­тов внешних ключей в один внешний ключ (группу атрибутов), в предположении, что значения одноименных атрибутов в дочер­ней сущности всегда одинаковы.
96
Атрибуты (Attribute) в ERWin. Сущность должна обладать некоторым набором атрибутов. Атрибуты представляют собой факты, которые служат для идентификации, характеристики отне­сения к категории, числового представления или другого вида опи­сания состояния экземпляра сущности. Атрибуты формируют ло­гические группы, описывающие каждый экземпляр сущности. Конкретным экземпляром атрибута является значение. Например, атрибут с названием «Имя» определяет область определения для фактов о сущности с названием «Клиент». «Артём», «Константин», «Станислав» – примеры конкретных значений «Имени» для кон­кретных экземпляров «Клиента».
Правила атрибутов
1. Каждый атрибут каждой сущности обладает уникальным
именем.
2. Сущность может обладать любым количеством атрибутов.
При идентифицирующем отношении сущность «потомок» наследует атрибут и/или атрибуты, составляющие первичный ключ сущности «родителя».
Возможный ключ – это один или несколько атрибутов, чьи значения однозначно определяют каждый экземпляр сущности.
Хороший первичный ключ будет обладать следующими при­знаками: значение гарантирует уникальность для каждого из эк­земпляров; значение не имеет скрытого смысла; область определе­ния значений будет оставаться постоянной с течением времени; значения существуют для каждого из экземпляров сущности.
При работе информационными системами часто бывает необ­ходимо обеспечить доступ к нескольким экземплярам сущности, объединенным каким-либо одним признаком для повышения про­изводительности в этом случае используются неуникальные ин­дексы. ERwin позволяет на уровне логической модели назначить атрибуты, которые будут участвовать в неуникальных индексах. Такие атрибуты называются инверсными входами (Inversion
Entries).
Инверсный вход – это атрибут или группа атрибутов, которые не определяют экземпляр сущности уникальным образом, но часто используется для обращения к экземплярам сущности. ERwin ге- нерирует не уникальный индекс для каждого инверсного входа.
97
Сущности представляют собой факты, информацию о которых любая организация заинтересована накапливать и сопровождать. Они составляют существо модели и в основном выявляются во время рабочих сессий. Полное и точное отражение атрибутов в мо­дели требует тщательного анализа, гарантирующего, что атрибуты точно соответствуют требованиям к информации.
Связи (relationships) в Erwin. Связь является логическим соот- ношением между сущностями. Каждая связь должна именоваться глаголом или глагольной фразой. Имя связи выражает некоторое ограничение или бизнес-правило и облегчает чтение диаграммы. По умолчанию имя связи на диаграмме не показывается. На логи­ческом уровне можно установить идентифицирующую связь «один-ко-многим», связь «многие-ко-многим» и неидентифициру­ющую связь «один-ко-многим». Связь – это понятие логического уровня, которому соответствует внешний ключ на физическом уровне. В ERwin связи представлены пятью основными элемента­ми информации: тип связи (идентифицирующая, неидентифици­рующая, полная/неполная категория, неспецифическая связь); ро­дительская сущность; дочерняя (зависимая) сущность; мощность связи (cardinality); допустимость пустых (null) значений.
В IDEFIX различают зависимые и независимые сущности. Тип сущности определяется ее связью с другими сущностями. Иденти­фицирующая связь устанавливается между независимой (роди­тельской) и зависимой (дочерней) сущностями. Зависимая сущ­ность изображается прямоугольником со скругленными углами. При установлении идентифицирующей связи атрибуты первичного ключа родительской сущности автоматически переносятся в состав первичного ключа дочерней сущности. Эта операция дополнения атрибутов дочерней сущности при создании связи называется ми­грацией атрибутов. В дочерней сущности новые атрибуты поме­чаются как внешний ключ – FK.
При установлении неидентифицирующей связи дочерняя сущность остается независимой, а атрибуты первичного ключа ро­дительской сущности входят в состав неключевых атрибутов до­черней сущности. Неидентифицирующая связь служит для связы­вания независимых сущностей. Для определения связей ERwin вы­бирается тип связи, затем мышью указывается родительская и до­черняя сущность. Идентифицирующая связь изображается сплош-
98
ной линией; не идентифицирующая – пунктирной линией. Линии заканчиваются точкой со стороны дочерней сущности.
Мощность связей (Cardinality) – служит для обозначения от- ношения числа экземпляров родительской сущности к числу эк­земпляров дочерней.
Различают четыре типа сущности:
1) общий случай, когда одному экземпляру родительской
сущности соответствуют 0, 1 или много экземпляров дочерней сущности; не помечается каким-либо символом;
2) символом Р помечается случай, когда одному экземпляру
родительской сущности соответствуют 1 или много экземпляров дочерней сущности (исключено нулевое значение);
3) символом Z помечается случай, когда одному экземпляру
родительской сущности соответствуют 0 или 1 экземпляр дочерней сущности (исключены множественные значения);
4) цифрой помечается случай точного соответствия, когда од-
ному экземпляру родительской сущности соответствует заранее заданное число экземпляров дочерней сущности.
Допустимость пустых (NULL) значений в не идентифициру­ющих связях ERwin изображает пустым ромбиком на дуге связи со стороны родительской сущности.
Имя связи на логическом уровне представляет собой глагол, связывающий сущности. Физическое имя связи (которое может от­личаться от логического) для ERWin означает имя ограничения или индекса. Для отображения имени связи выберите опцию в ме­ню: Format/Relationship Display/Verb phrase.
Связи категоризации. Некоторые сущности определяют целую категорию объектов одного типа. В ERwin в таком случае создает­ся сущность для определения категории и для каждого элемента категории, а затем вводится для них связь категоризации. Роди­тельская сущность категории называется супертипом, а дочерние –
подтипом.
Например, сущность «входящий документ» может быть как запросом, так и распоряжением. Первые и вторые имеют различ­ные, частично пересекающиеся наборы атрибутов (минимальное пересечение подтипов составляет первичный ключ). Общая часть этих атрибутов, включая первичный ключ, помещается в сущ­ность-супертип «входящий документ». Различная часть (например,
99
данные о содержании, отправителе) помещается в сущности­подтипы.
В сущности-супертипе вводится атрибут-дискриминатор, поз­воляющий различать конкретные экземпляры сущности – подтипа.
В зависимости от того, все ли возможные сущности-подтипы включены в модель, категорийная связь является полной или не­полной.
В ERwin полная категория изображается окружностью с дву­мя подчеркиваниями, а неполная – окружностью с одним подчер­киванием.
Правила отношений категоризации
1. Сущность типа «категория» может иметь только одну об-
щую сущность.
2. Сущность-категория, принадлежащая одному отношению категоризации, может быть общей сущностью в другом отношении категоризации.
3. Сущность может быть общей сущностью в любом количе­стве отношений категоризации.
4. Атрибуты первичного ключа сущности-категории должны совпадать с атрибутами первичного ключа общей сущности.
5. Все экземпляры сущности-категории имеют одно и то же значение дискриминатора, и все экземпляры других категорий должны иметь другие значения дискриминатора
Роли. Имя роли (функциональное имя) – это синоним атрибу-
та внешнего ключа, который показывает, какую роль играет атри­бут в дочерней сущности. По умолчанию в списке атрибутов пока­зываются только имя роли. Для отображения полного имени атри­бута (как функционального имени, так и имени роли) следует в контекстном меню выбрать пункт Format/ Entity Display и затем включить опцию Rolename/Attribute. Полное имя показывается как функциональное имя и базовое имя, разделенные точкой. Имя роли задается на вкладке Rolename диалогового окна Relationship. Это окно вызывается двойным щелчком мыши по линии связи.
Обязательным является применение имен ролей в том случае,
когда два или более атрибутов одной сущности определены по од­ной и той же области, т. е. они имеют одинаковую область значе­ний, но разный смысл.
100
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]