Компания IBM
Опубликован: 14.08.2008 | Доступ: свободный | Студентов: 1089 / 150 | Оценка: 4.75 / 3.75 | Длительность: 27:55:00
Дополнительный материал 2:

Вопросы интеграции

WebSphere Business Integration Modeler в настоящее время поддерживает экспорт моделей для импортирования в XDE моделей с примененным профилем Business Modeler. В этом приложении описывается философия, требования, проектирование и реализация интеграции между моделями WebSphere Business Integration Modeler/BOM (Business Object Models) и Rational Software Architect/UML2.

Интегрирование WebSphere Business Integration Modeler и Rational Software Architect

Интеграция WebSphere Business Integration Modeler и Rational Software Architect/Rational Software Modeler основывается на преобразовании BOM-моделей в UML2. В этом преобразовании BOM-модели рассматриваются как контракты, в которых указывается, какие реализации должны быть выполнены в Rational Software Architect. Модели WebSphere Business Integration Modeler рассматриваются не как что-то, что нужно разработать или реализовать, а как формирование контракта о том, что должна делать реализация, но не о том, как она должна это делать.

Контракт состоит из двух частей. Статическая часть, или контракт об использовании, определяет, что должны знать клиенты, чтобы применять службы, реализованные на UML2 с помощью Rational Software Architect. Это задачи, которые вызываются в BPEL-процессе, сгенерированном в WebSphere Business Integration Modeler. Из WebSphere Business Integration Modeler они извлекаются через роли, назначенные задачам в бизнес-процессах. Для каждой задачи процесса, которой была назначена роль, мы создаем интерфейс этой роли и добавляем операцию, соответствующую вызванной задаче. Обратите внимание, что реализуется не весь бизнес-процесс и не всем операциям во всех ролях необходима непосредственная реализация. Однако если процесс является автоматизированным (и следовательно, ему соответствует BPEL-процесс, который выполняет оркестровку областей ответственности ролей), то все задачи этого процесса должны иметь какую-нибудь реализацию. То есть они должны иметь реализацию в Rational Software Architect, даже если эта реализация состоит только в отправке электронного письма, SMS-сообщения, помещения элемента в расписание заданий, выводе всплывающего окна предупреждения или помещения записи в корзину входящих рабочего потока. Поэтому интерфейсы, соответствующие ролям BOM, являются хорошим способом фиксации контракта на использование в Rational Software Architect.

Реализующий контракт – это сам бизнес-процесс. Лучший способ моделирования его на UML2 – это создать кооперацию (Collaboration), содержащую операцию (Activity), которая представляет собой UML2-версию бизнес-процесса. Роли в кооперации соответствуют ролям (requiredRole) BOM-модели. Это те роли, которые назначены каждой из задач в бизнес-процессе. В UML2 ролям соответствует InputPin (Входной контакт), который является целью для CallOperationAction. Имя входного контакта представляет собой имя требования ресурса BOM, а его тип – это интерфейс, соответствующий роли, содержащей вызванную операцию. В CallOperationAction:: operation также задается операция интерфейса роли.

Прецеденты использования (use cases), соответствующие бизнес-процессам из BOM-модели, также создаются так, чтобы сформировать высокоуровневое представление бизнес-требований и место для указания нефункциональных характеристик. Эти прецеденты использования реализуются кооперациями, сгенерированными для бизнес-процессов BOM. Не нужны никакие дополнительные нестандартные зависимости, и нет никаких непрослеживаемых связей между моделями BOM и UML2.

Кооперация (Collaboration) теперь может иметь любое количество классификаторов (Classifier), содержащих вхождения коопераций (CollaborationOccurrences), которые связывают в кооперации ее части с ролями, формируя реализацию, выполняющую указанный контракт. Нет никаких ограничений по способам организации классификаторов. Обычно им приходится иметь дело с прецедентами использования других систем, архитектурными и нефункциональными вопросами, выходящими за рамки функциональных требований, указанных контрактом в кооперации. В результате существует высокая степень свободы в том, как одна реализация моделируется и трансформируется в другую. Но в окончательной реализации необходимые интерфейсы, указанные в контракте и сгенерированные на основе необходимых ролей BOM-модели, будут каким-то образом реализованы. В результате BPEL-код, сгенерированный из BOM-модели, сможет легко вызывать необходимые задачи.

Этот подход более сложен, чем тот, который используется при импорте/экспорте материалов между WebSphere Business Integration Modeler и XDE. Однако он предоставляет формализованный способ определения интеграции между продуктами с использованием возможностей обоих продуктов при минимальном перекрытии и дублировании (и с решением проблем). Модель Rational Software Architect может напрямую ссылаться на кооперацию, интерфейсы и операции модели BOM без копирования. BOM-модель для Rational Software Architect может быть доступной только для чтения, поскольку для того, чтобы создать реализацию, нет необходимости изменять контракты. Любые изменения BOM-модели, внесенные в WebSphere Business Integration Modeler, сразу отражаются в модели Rational Software Architect, что устраняет ошибки, связанные с трансформациями или согласованиями, а также разницей во времени. Может потребоваться обновить ярлык или выйти из Rational Software Architect и войти заново. Мы рассматриваем возможность включить в модели WebSphere Business Integration Modeler, находящиеся в редакторе Rational Software Architect, автоматическое уведомление об изменениях модели. Но появление такого уведомления маловероятно.

Также отметьте, что данная стратегия интеграции совместима с профилем Enterprise Application Architecture, который используется для моделирования готовых бизнес-приложений, включая архитектурные аспекты. Поэтому WebSphere Business Integration Modeler можно применять для создания бизнес-моделей, формирующих контракты для бизнес-приложений, а EAA можно использовать для регистрации этих контрактов в стандартном UML2, что позволяет повторно употреблять появляющиеся трансформации для платформ WebSphere.

Ниже приводятся специфические требования.

  1. Сконфигурируйте Rational Software Architect, чтобы он мог загружать файл WebSphere Business Integration Modeler 5.1.12 resources.XMI, и преобразуйте его в UML2 при помощи применения профиля UML BM. Это устраняет необходимость в операциях импорта/экспорта и обеспечивает лучшую интеграцию инструментов.
  2. Автоматически примените профиль BM к импортированным моделям.
  3. Загрузчик прочитает файлы WebSphere Business Integration Modeler при помощи пользовательского EMF-ресурса и преобразует их в UML2, чтобы модели WebSphere Business Integration Modeler/BOM могли просматриваться в проводнике моделей Rational Software Architect и интегрироваться с другими UML2-моделями.
  4. Преобразованную BOM-модель можно сохранить в виде стандартного файла Rational Software Architect .emx (XMI2.1) после дополнения ее созданной в Rational Software Architect реализацией профиля UML BM (Business Modeler) из плагина com.ibm.xtools.buzmodeler.
  5. Разработчику не обязательно иметь установленный WebSphere Business Integration Modeler. Не требуется никаких дополнительных связей между Rational Software Architect и WebSphere Business Integration Modeler. Rational Software Architect для инсталляции не может требовать наличия метамодели WebSphere Business Integration Modeler.
  6. Загружайте только элементы модели BOM WebSphere Business Integration Modeler, но не схемы.
  7. Поддерживаются версии WebSphere Business Integration Modeler Advanced Version 5.1 и 5.1.1.

Прецедент использования Business Process and Application Development

Данный прецедент использования не предназначен для того, чтобы охватывать все аспекты моделирования бизнес-процесса, моделирования интеграции с объектами или генерации и размещения приложений. Он предназначен для того, чтобы дать представление об этих темах в контексте интеграции WebSphere Business Integration Modeler и Rational Software Architect, и представляет собой простой, но типичный сквозной процесс разработки.

Этапы прецедента использования:

  1. С помощью WebSphere Business Integration Modeler выявите и зафиксируйте ключевые бизнес-процессы:
    • зафиксируйте элементы бизнес-данных, которыми обмениваются процессы и задачи;
    • назначьте задачи ролям;
    • определите необходимые ресурсы;
    • организация.
  2. Эмулируйте бизнес-процессы, чтобы проверить их и определить оптимальную потребность в ресурсах.
  3. Выявите возможности для программной автоматизации.
  4. С помощью Rational Software Architect создайте модель реализации.
  5. Откройте модель WebSphere Business Integration Modeler в Rational Software Architect, чтобы увидеть бизнес-контракт.
  6. Выполните контракт, используя возможности Rational Software Architect.
  7. Сгенерируйте и разместите реализацию, созданную в Rational Software Architect.
  8. Сгенерируйте оркестровку процесса, используя WebSphere Business Integration Modeler.
  9. Свяжите задачи в WebSphere Business Integration Modeler с их реализацией, созданной в Rational Software Architect.