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

2. ERWin

.pdf
Скачиваний:
86
Добавлен:
20.03.2016
Размер:
7.04 Mб
Скачать

Copy item to

Перенести несовпадающие элементы из левой в пра-

the right

вую модель.

 

Сопоставить (связать) два элемента вручную. После

 

запуска инструмента автоматически подсвечивается

Match two

текущий объект или свойство в левой модели. Далее

items

требуется щелкнуть по объекту или свойству в правой

 

модели. В результате элементы из левой и правой мо-

 

дели будут сопоставлены.

Unmatch two

Отменить ранее выполненное сопоставление элемен-

items

тов.

Undo

Отменить последнее действие.

Redo

Вернуть результаты последнего отмененного дей-

ствия.

 

 

Открыть диалог Report для генерации отчета о разли-

Show Report

чиях между сравниваемыми моделями для Word,

 

Excel или web-браузера.

Help

Открыть окно Справки по диалогу Resolve

Differences.

 

Таблица 15. Описание функций панели анализа влияний

Элемент

управления Вид Название

Action Log

Message Log

Left Alter

Script/Schema

Generation

Right Alter

Script/Schema

Impact Analysis Toolbar.

Описание

Открывает журнал изменений моделей Action Log

врежиме «только для чтения». Журнал отображается

вформе двух панелей, в которых показывается история изменений сравниваемых моделей, произведенных в диалоге Resolve Differences. Журнал имеет инструменты для анализа (поиска) определенных транзакций и генерации отчетов по изменениям моделей с помощью ERwin Data Browser.

Сообщает, какое действие только что выполнялось, а также успешно или нет завершено это действие. Генерирует скрипт на изменение (alter script) левой модели по результатам синхронизации. После активации инструмента сначала открывается диалог Schema Generation Alter Script, с помощью которого настраиваются опции генерации скрипта. (Имеет смысл, когда левой моделью представлена база данных или скрипт.)

Примечание. Данная опция не доступна, когда сравнивается проект Visual Studio с моделью ERwin DM. Генерирует скрипт на изменение (alter script) правой модели по результатам синхронизации. После актива-

91

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

Примечание. Данная опция не доступна, когда сравнивается проект Visual Studio с моделью ERwin DM.

Таблица 16. Описание функций панели известных различий

Known Differences Toolbar.

 

Элемент

 

управления

Вид

Название

Save Known

Differences Into a

Snapshot

Load Known Differences From a Snapshot

Mark/Unmark a

Row as a Known

Difference

Show Known Difference Items

Описание

Сохранить известные различия как моментальный снимок (Snapshot). Открывается диалог Save Snapshot, в котором можно настроить опции для сохранения моментального снимка.

Загрузить сохраненный моментальный снимок (Snapshot) в текущую сессию сравнения Resolve Differences. Открывается диалог Load Snapshot, в

котором можно выбрать требуемый снимок. Пометить (или снять метку) строчку как «известное различие» (Known Difference). Можно выбрать несколько строк, удерживая клавишу CNTR и щелкая левой кнопкой мышки по требуемым строкам в диалоге Resolve Differences. Когда выбранные строки помечаются как «известные различия», они более не отображаются в списке найденных отличий диалога Resolve Differences. После выбора известных отличий их можно сохранить как моментальный снимок

(Snapshot).

Отобразить известные различия, скрытые ин-

струментом Mark a Row as a Known Difference.

Инструмент неактивен, если неактивен моментальный снимок или не были отмечены известные различия.

Show Differences that have changed since the last loaded Snapshot

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

92

Таблица 17. Описание функций панели стандартных фильтров

Standard Filters Toolbar.

 

Элемент

 

управления

Вид

Название

 

Show Equal

 

Items

 

Show Resolved

 

Items

Show Not Equal

Show Unaligned

Objects on the

Right

Show Unaligned

Objects on the

Left

Описание

Отобразить одинаковые объекты и свойства в обеих моделях.

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

Отобразить все различия между объектами и свойствами в обеих моделях. Фильтр выбирается по умолчанию при открытии диалога Resolve Differ-

ences.

Отобразить объекты левой модели, которые отсутствуют в правой модели. Фильтр не действует на свойства объектов. Фильтр выбирается по умолчанию при открытии диалога Resolve Differences. Отобразить объекты правой модели, которые отсутствуют в левой модели. Фильтр не действует на свойства объектов. Фильтр выбирается по умолчанию при открытии диалога Resolve Differences.

Таблица 18. Описание функций панели навигации Navigation Toolbar.

Элемент

управления Вид Название

Go to Previous (Next) Difference

Find (Find Next)

an Item

Expand all (Collapse all)

Описание

Перейти к предыдущему (следующему) найденному различию объектов или свойств.

Найти (найти следующий) объект или свойство.

Развернуть (свернуть) текущую ветвь дерева сравниваемых объектов

Для генерации отчета по результатам сравнения следует щелкнуть

мышкой по пиктограмме на стандартной панели инструментов диалога Resolve Differences, в открывшемся диалоге Report Dialog (рис. 91) выбрать формат отчета и нажать ОК. Пример отчета по результатам сравнения в формате HTML представлен на рис. 92.

93

Рис. 91. Диалог Report Dialog для выбора формата отчета.

Рис. 92. Пример отчета по результатам сравнения в формате HTML.

Изменение моделей в диалоге Resolve Differences в процессе синхронизации происходит в реальном времени. После того, как вы закончили работу с Complete Compare, обе модели могут остаться открытыми в ERwin DM; это зависит от того, установлен ли флажок Auto close Database/Script Models (закрыть автоматически) в закладке Advanced Options

Мастера Complete Compare.

Для сохранения изменений моделей следует:

1.Щелкнуть по кнопке Finish диалога Resolve Differences для завершения сессии сравнения. (Примечание. Можно изменить опции сравнения

вМастере Complete Compare и запустить новый сеанс сравнения.)

2.В Мастере Complete Compare щелкнуть по кнопке Close.

3.В диалоге Close Models выбрать модели, которые следует закрыть (рис. 93). После щелчка по кнопке ОК для каждой из моделей, помеченной для закрытия, появится диалог Close, запрашивающий подтверждение сохранения изменений модели (рис. 94).

94

Рис. 93. Диалог Close Models.

Рис. 94. Диалог Close.

Если в процессе Complete Compare изменения касались базы данных или файла скрипта, то сохранить эти изменения можно одним из следующих способов:

сохранить изменения в новой модели,

сгенерировать скрипт на изменение базы данных (alter script),

сохранить изменения в новом файле-скрипте.

Таким образом, инструмент Complete Compare, встроенный в CASE- средство ERwin Data Modeler позволяет автоматизировать одну из задач сопровождения баз данных за счет автоматизации трудоемкого процесса сравнения и синхронизации моделей и баз данных.

Уровни проектирования

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

95

Рис. 95. Пример иерархии уровней проектирования.

Простым примером может служить 3-х уровневая иерархия (рис. 95).

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

Второй уровень проектирования – это универсальная физическая модель данных. Бизнес-требования преобразуются в правила реализации базы данных в физической модели данных. На этом уровне проектирования определяют структуру таблиц, колонок (с универсальным именованием), необходимых для представления бизнес-приложения. Однако в универсальной физической модели данных объекты и свойства не зависят от базы данных. Универсальная физическая модель может быть создана с помощью универсального ODBC в качестве целевой базы данных. Другие модели данных, специфичные для базы данных, могут быть получены из универсальной физической модели данных.

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

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

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

На следующем уровне проектирования могут быть представлены несколько логических моделей данных для ряда бизнес-приложений, например, приложения для ввода заказа и отслеживание продаж. Несмотря на большие различия этих приложений, в них, вероятно, используются некоторые общие сущности, например, СОТРУДНИК и КЛИЕНТ. Модель

96

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

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

Как и в предыдущем примере, если каждое приложение работает на нескольких платформах базы данных (DB2 и Oracle), то последний уровень проектирования необходим для моделей данных, ориентированных на разные платформы баз данных.

Рис. 96. Пример иерархии моделей предприятия.

Для поддержки иерархии уровней проектирования ERwin DM предоставляет ряд инструментов, запустить которые можно через меню Tools (рис. 97). Среди них

Add Model Source (добавить источник мо-

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

Derive New Model (породить новую модель).

Позволяет создать новую модель на основе существующей модели. В результате порождения обе

модели остаются связанными, причем исходная

Рис. 97. Меню Tools.

модель рассматривается как модель-источник.

 

97

Split L/P Model (расщепить смешанную модель). Расщепляет сме-

шанную модель на две модели: логическую и физическую, причем логическая модель рассматривается как модель-источник.

Sync with Model Source (синхронизировать с моделью-источником).

Модель может быть связана с источником модели в результате расщеплении смешанной (логико-физической) модели, порождения модели или добавления источника модели. После того как модели присвоен источник модели, изменения в объектах, которые были перенесены из источника модели, отслеживаются автоматически. В любое время можно использовать мастер Sync with Model Source для импорта и экспорта изменений между моделью и ее источником.

Link Model Source (связать с источником). Часто концептуально связанные модели разрабатываются независимо друг от друга. Чтобы связать ранее независимые модели используют инструмент Link Model Source. Инструмент позволяет сопоставить существующие объекты в двух моделях, создавая связь между ними. В отличие от инструментов Add Model Source, Derive Model, и Sync with Model Source инструмент Link Model Source не создает новых объектов в целевой модели (хотя можно использовать возможности диалога Resolve Differences для импорта/экспорта объектов и свойств). Можно поддерживать и обновлять связанные объекты

спомощью инструмента Sync with Model Source tool.

У модели может быть несколько моделей-источников. ERwin DM 7.2 поддерживает единый вид Мастеров (диалоговых окон) для инструментов

Add Model Source, Link Model Source, Derive New Model, Sync with Model Source, который основан на рассмотренном ранее Мастере Complete Compare. Мастера позволяют:

Определить модель-цель и модель-источник.

Установить фильтр на типы объектов.

Установить фильтр на список объектов.

Задать правила преобразования имен (Naming Standard).

Определить правила преобразования связей «многие ко многим» и иерархии категорий.

После настройки перечисленные инструменты генерируют диалоговое окно Resolve Differences, рассмотренное ранее. При импорте или экспорте изменений ERwin DM обновляет дату синхронизации в моделях и диалоге Model Sources Properties (Свойства источников модели).

Трансформация

Трансформация – прием, позволяющий применить и зарегистрировать проектное решение, т. е. решение о внесении изменений в объекты на определенном уровне проектирования. При применении трансформации в ERwin в свойства ряда объектов вносятся изменения с целью усовершен-

98

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

Автоматизация. ERwin DM упрощает совершенствование логической и физической моделей. Вместо трудоемкого «ручного» изменения модели можно использовать встроенные Мастеры для автоматизации процессов преобразования (трансформации) объектов модели.

Трассировка. Для каждого объекта модели, создаваемого при трансформации, в ERwin DM ведется историческая информация. Историю трансформированных объектов можно проследить.

Сохранение свойств объекта. Свойства трансформированных объектов сохраняются.

Для запуска процесса трансформации следует выбрать объекты, участвующие в трансформации и щелкнуть по соответствующей кнопке на панели трансформаций ERwin Transform Toolbar (табл. 5). В появляющихся диалогах Мастера трансформаций нужно ответить на ряд вопросов, определяющих применение трансформации. В табл. 19 на примерах показано начальное и конечное состояния трансформируемых объектов.

Таблица 19. Состояние объектов до и после трансформации.

Исходные объекты

Используемая

Результат трансформации

трансформация

 

 

Многие ко многим

Идентификация связи «иерархия наследования»

Свертывание связи «иерархия наследования»

99

Развертывание связи «иерархия наследования»

Вертикальное разбиение таблицы

Горизонтальное разбиение таблицы

Денормализация

развертывания

Денормализация

свертывания

ИЛИ

100