После разработки модели данных ее следует связать с моделью процессов. Такая связь гарантирует завершенность анализа, гарантирует, что есть источник данных (сущность) для всех потребностей данных (работа). Связи объектов способствуют согласованности, корректности и завершенности анализа.
Стрелки в модели процессов (BPwin) обозначают некоторую информацию, использующуюся в моделируемой системе. В ERwin на логическом уровне модели данных информация отображается в виде сущностей (соответствуют таблицам на физическом уровне), состоящих из атрибутов сущностей (соответствуют колонкам таблицы). Сущности состоят из совокупности отдельных записей - экземпляров сущностей (соответствуют записям в таблице). К модели данных предъявляются определенные требования (нормализация данных), которые призваны обеспечить компактность и непротиворечивость хранения данных. Основная идея нормализации данных - каждый факт должен храниться в одном месте. Это приводит к тому, что информация, которая моделируется в виде одной стрелки в модели процессов, может содержаться в нескольких сущностях и атрибутах в модели данных. Кроме того, на диаграмме модели процессов могут присутствовать различные стрелки, изображающие одни и те же данные, но на разных этапах обработки (например, необработанные детали - обработанные детали - собранное изделие). Информация о таких стрелках находится в одних и тех же сущностях. Следовательно, одной и той же стрелке в модели процессов могут соответствовать несколько сущностей в модели данных и, наоборот, одной сущности может соответствовать несколько стрелок.
Стрелке в модели процессов может соответствовать отдельная сущность в модели данных. Так, стрелке "Части" на рис. 6.23 соответствует сущность "Часть", стрелке "Конечные продукты" - сущность "Продукт".
Информация о стрелке может содержаться только в нескольких атрибутах сущности. Разным атрибутам, одной и той же сущности могут соответствовать разные стрелки. На рис. 6.24 стрелка "Новая часть" соответствует атрибутам "Номер части" и "Название части", стрелка "Наличное количество" - атрибутам "Количество".
Рис. 6.23. Преобразование стрелки в сущность
Рис.6.24. Преобразование стрелки в атрибут
Работы в модели процессов могут создавать или изменять данные, которые соответствуют входящим или выходящим стрелкам. Они могут воздействовать как целиком на сущности (создавая или модифицируя экземпляры сущности, рис. 6.25), так и на отдельные атрибуты сущности (рис. 6.26).
Рис.6.25. Воздействие работы на сущность
BPwin позволяет связывать элементы модели данных, созданной с помощью ERwin, документировать влияние работ на данные и тем самым позволяет создать спецификации на права доступа к данным для каждого процесса (см. ниже).
Рис. 6.26. Воздействие работы на атрибут
2) Экспорт данных из ERwin в BPwin и связывание объектов модели данных со стрелками и работами
Первым шагом связывания модели данных и модели процессов является экспорт данных из ERwin в BPwin.
Основные способы связывания объектов модели данных и модели процессов:
1) Экспорт и импорт через файлы формата.EAX -.BPX.
2) Синхронизация моделей, хранящихся в репозитории ModelMart при помощи утилиты ModelMart Synchronizer.
Ниже будет рассмотрен первый способ связывания моделей. Для экспорта модели данных из ERwin в BPwin необходимо в ERwin открыть модель и выбрать пункт меню File/Bpwin/Export. В появившемся диалоге необходимо выбрать имя файла *.eax и нажать ОК.
Затем в BPwin нужно открыть модель процесса, выбрать в меню пункт FiIe/Import/Erwin (EAX)..., выбрать имя файла и нажать ОК. Появится протокол импорта. Если закрыть диалог протокола, появляется диалог Irnport frorn EAX Verification. Для внесения данных в модель процесса следует щелкнуть по кнопке Accept Changes. Кнопка Review Changes вновь вызывает диалог протокола импорта, кнопка Cancel Changes отменяет импорт.
После внесения данных в модель процессов можно связать сущности и атрибуты со стрелками. Правой кнопкой мыши нужно щелкнуть по стрелке и выбрать в контекстном меню Arrow Data.
Появляется закладка Arrow Data диалога Arrow Property.
Рис. 6.27 Закладка Arrow Data диалога Arrow Property
Для связывания атрибута со стрелкой достаточно щелкнуть по иконке выбора Д в иерархическом списке атрибутов. При этом сущность автоматически связывается со стрелкой. Каждая стрелка в модели процессов может быть связана с несколькими атрибутами различных сущностей.
Кнопка Copy In позволяет копировать связанные данные из другой стрелки.
Кнопка Clear - все связи стрелки с данными.
Кнопка Migrate вызывает диалог Changes to Arrow Data Associations, в котором отображаются данные, мигрирующие от дочерних к родительским стрелкам (для разветвляющихся и сливающихся стрелок). При миграции возможны изменения связывания данных:
• Delelions - если данные связаны с родительской стрелкой, но не связаны с дочерней, связи с родительской стрелкой удаляются;
• Additions - если данные связаны с дочерней стрелкой и не связаны с родительской, добавляется связь с родительской стрелкой.
Для подтверждения изменений в диалоге Changes to Arrow Data Associations следует щелкнуть по кнопке Commit. Миграция возможна только в моделях IDEFO и DFD.
Как было указано выше, работы могут воздействовать на данные. Для документирования такого воздействия необходимо щелкнуть правой кнопкой мыши по работе и выбрать пункт меню Data Usage Editor (рис. 6.28).
Рис. 6.28 Диалог Data Usage Editor для стрелок управления и входа
Рис. 6.29. Диалог BPwin Data Usage Editor для стрелки выхода
В появившемся диалоге Data Usage Editor в виде иерархического списка показываются все работы модели, стрелки, которые касаются работ, сущности и атрибуты, которые были связаны со стрелками. В верхнем списке нужно щелкнуть по имени стрелки, с которой были связаны сущности и атрибуты, для задания ассоциации достаточно щелкнуть по окну jyjj в иерархическом списке.
Для сущностей задается ассоциация CRUD (Create, Read, Update, Delete), для атрибутов - IRUN (Insert, Read, Update, Nullify). Ассоциации CRUD и IRUN - это правила использования сущностей и атрибутов работами, т. e. то, что могут делать работы с входящими или исходящими данными. Данные не могут использоваться работами произвольно. Стрелки входа представляют данные, которые работа преобразует в выход или потребляет. Такие данные могут быть обновлены (Update) или удалены (Delete), но не могут быть созданы (Create). Данные, связанные со стрелками управления, могут быть только прочитаны (Read), но не могут быть изменены - процедуры и стратегии не могут изменяться в работе. Данные, связанные со стрелками выхода, могут быть обновлены (если им соответствуют данные стрелок входа), удалены (Delete) или созданы (Create). Для стрелок механизма ассоциации не устанавливаются.
Результат связывания объектов модели процессов можно отобразить в отчете Data Usage Report (меню Reports/Data Usage Report). Ниже приведен пример такого отчета.
Рис. 6.30 Отчет по связыванию