Интеграция AllFusion ERwin Data Modeler с AllFusion Component Modeler

Козодаев А.А., технический специалист

В 2001 году компанией Computer Associates была выпущена линейка AllFusion Modeling Suite, которая состоит из пяти продуктов, а именно:

В линейку AllFusion входят продукты, обеспечивающие поддержку полного цикла разработки программного обеспечения. В данной статье будет рассмотрена интеграция AllFusion ERwin Data Modeler (далее по тексту - AEDM) с AllFusion Component Modeler (далее по тексту - ACM).

AEDM является CASE-продуктом, который позволяет эффективным образом проектировать, документировать и сопровождать базы данных. К особенностям данного продукта можно отнести поддержку нескольких методик проектирования баз данных, а именно: IDEF1X, IE, а также методика моделирования хранилищ и витрин данных - DM, поддержку множества (более 20) серверов баз данных и некоторые другие функциональные возможности.

ACM является инструментом для построения информационных систем с использованием унифицированного языка моделирования - UML. В последней версии продукта полноценно поддерживается UML версии 1.4. ACM включает в себя ряд функциональных возможностей, которые успешно выделяют его из аналогичных программных продуктов.

К таким можно отнести:

  • Model Xpert Engine - функция, позволяющая проверять модели, создаваемые в ACM на предмет соответствия правилам графического языка UML
  • Model Xfer - функция, позволяющая переносить модели между различными репозиториями
  • поддержка обратного генерирования кода для платформы Microsoft .Net
  • поддержка прямого генерирования для следующих языков программирования: Java, CORBA, Visual C++, и Visual Basic

Для осуществления процесса интеграции в дистрибутив ACM включена утилита AllFusion Component Modeler-ERwin Data Modeler Add-In . Для того, чтобы воспользоваться возможностями данной утилиты, не обязательно устанавливать оба продукта (AEDM и ACM), однако в последнем случае предоставляются наиболее полные возможности для интеграции. Процесс интеграции можно инициировать как из ACM, так и из AEDM. В качестве примера в статье будет рассмотрена следующая ситуация. В ACM построена диаграмма классов, затем некоторые классы из этой диаграммы импортируются в AEDM. Следующим этапом является изменение полученной на основании диаграммы классов модели данных ERwin и дальнейшая синхронизация изменений модели данных с моделью UML, построенной в ACM.

Диаграмма классов в ACM выглядит следующим образом:

Рисунок 1. Исходная диаграмма классов.

Далее эта диаграмма импортируются в AEDM, это можно сделать, выбрав в AEDM меню Tools - Add-Ins…- Import from AllFusion Component Modeler. В возникшем окне нужно выбрать, из какой рабочей области (workspace) ACM необходимо загрузить элементы диаграммы классов. В следующем окне выбираются классы, которые будут представлены в модели данных AEDM.

Рисунок 2. Импортирование необходимых классов.

В следующих двух окнах мастера интеграции необходимо присвоить импортируемым классам стереотип ERwin и в случае, если мастер не смог конвертировать связи ACM в связи AEDM, нужно также уточнить типы связей. После того, как мастер отработает, будет создана соответствующая ER-диаграмма в AEDM. При этом необходимо учитывать, что в исходной диаграмме классов импортируемые классы и их атрибуты приобретут следующие стереотипы: ERWIN_ENTITY для классов и ERWIN_ATTRIBUTE - для атрибутов.

Рисунок 3. Полученная ER-диаграмма.

В результате анализа полученная ER-диаграмма была изменена, в нее были добавлены две новые сущности:

1) "способ доставки" с неключевыми атрибутами: название, срок
2) "фирма производитель" с неключевым атрибутом: название фирмы
а также в сущность "продукт" добавлен неключевой атрибут: единица измерения.

На этом этапе принимается решение импортировать произведенные в AEDM изменения в ACM, для этого в ACM выбирается пункт меню Tools - ERwin - Import. В первом окне мастера необходимо выбрать, из какого источника (xml или er1 файла) будет производиться импорт. Во втором окне необходимо указать элементы модели данных, построенной в AEDM, которые будут импортированы в модель ACM (окно, аналогичное указанному в рисунке 2). В окне под названием XMI Difference будут указаны все различия между файлом AEDM и моделью ACM, в которую будут импортироваться элементы модели данных. На этом этапе у пользователя есть возможность подтвердить либо отклонить те или иные элементы, которые будут импортированы.

Рисунок 4. Просмотр различий между файлом AEDM и моделью данных ACM.

После завершения работы мастера выбранные элементы импортируются в модель ACM, что можно продемонстрировать на следующем рисунке. В дереве модели появились два новых класса: "способ доставки" и "фирма производитель" и у класса "продукт" появился атрибут единица измерения.

Рисунок 5. Дерево модели ACM с импортированными элементами.

На этом простом примере была продемонстрирована возможность интеграции AllFusion ERwin Data Modeler и AllFusion Component Modeler с помощью утилиты AllFusion Component Modeler-ERwin Data Modeler Add-In.

Дополнительная информация


Страница сайта http://www.interface.ru
Оригинал находится по адресу http://www.interface.ru/home.asp?artId=1001