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

Реализация. Создание процесса Request External Reports

Аннотация: В этой лекции описано, как ИТ-специалист по процессам изменяет бизнес-процесс,предоставленный бизнес-аналитиком, с целью реализации интерфейсов, предложенных ИТ-архитектором, а затем тестирует и размещает процесс в WebSphere Business Integration Server Foundation

В этой лекции мы опишем разработку и размещение бизнес-процесса, который можно экспортировать из WebSphere Business Integration Modeler в формате Business Process Execution Language for Web service (BPEL4WS). Мы создадим наш бизнес-процесс, используя выходные данные WebSphere Business Integration Modeler, которые мы можем получить от бизнес-аналитика. Поскольку в бизнес-процессе, экспортируемом из Modeler, по-прежнему отсутствуют готовые к реализации службы и настройки, необходимые для работы с бизнес-процессом в реальной системе, мы должны модифицировать код BPEL, чтобы система работы с бизнес-процессами могла исполнять этот бизнес-процесс.

Эта лекция включает в себя следующие разделы:

  1. 10.1, "Общий обзор";
  2. 10.2, "Импортирование WSDL и BPEL в IDE";
  3. 10.3, "Интеграция процесса и его служб";
  4. 10.4, "Интеграция процесса и его служб"1Название раздела дается согласно оригиналу. – Примеч. ред . ;
  5. 10.5, "Контроль пути через процесс";
  6. 10.6, "Реализация операции для специалиста по обработке претензий";
  7. 10.7, "Компоновка";
  8. 10.8, "Тестирование и отладка процесса";
  9. 10.9, "Размещение процесса на сервере".

10.1 Общий обзор

ИТ-специалист по процессам с помощью WebSphere Studio Application Developer Integration Edition V5.1.1 размещает бизнес-процесс, созданный бизнес-аналитиком в WebSphere Business Integration Modeler, на платформе WebSphere Business Integration Server Foundation V5.1. На рис. 10.1 показана центральная роль ИТ-специалиста по процессу в реализации решения.

Создание потока для бизнес-процесса

Рис. 10.1. Создание потока для бизнес-процесса

Код BPEL экспортируется из WebSphere Business Integration Modeler ИТ-специалистом по процессу, а не бизнес-аналитиком. Перед экспортом необходимо исправить технические ошибки в коде BPEL, а ИТ-специалист имеет необходимые навыки исправления ошибок. Также ИТ-специалист может получить общий вид процесса в Modeler. Экспортирование кода BPEL описано в разделе 4.5.3, "Экспорт процесса RequestExternalReports в виде процесса BPEL4WS".

В BPEL-процессе для взаимодействия с большинством внешних служб используются ссылки на партнеров. Все ссылки на партнеров, необходимые ИТ-специалисту по процессу, находятся в WSDL-файлах. Они были определены архитектором решения с помощью Rational Software Architect. Эти файлы были упакованы в один zip-файл для простоты управления. Этот zip-файл нужно импортировать в пакет Web-Sphere Studio Application Development Integration Edition.

Все необходимые дополнительные WSDL-интерфейсы можно определить в WebSphere Studio Application Development Integration Edition или в вашем любимом WSDL-редакторе.

Существует три вида служб, интеграцией которых занимается ИТ-специалист по процессу:

  1. Существуют простые Web-службы, вызываемые бизнес-процессом. Они все обыч- но реализуются в виде EJB и располагаются на отдельном сервере WebSphere Application Server.

    Такие службы описаны в "Реализация. Тестирование и размещение компонентов приложения" , "Тестирование и размещение компонентов приложений".

  2. Существуют службы, подключенные к ESB и реализованные WebSphere Business Integration Message Broker. Запросы и ответы реализуются как отдельные службы, а Process Choreographer играет роль службы, получающей ответы от ESB. Эти службы описаны в "Реализация. Создание корпоративной сервисной шины" , "Создание корпоративной сервисной шины".
  3. Еще один вид связи, который нужно установить, – это связь между WebSphere MQ Workflow и WebSphere Business Integration Server Foundation. Система Wokflow имеет специальный механизм интеграции, использующий прокси-EJB, функционирующий на той же системе работы с процессами, что и бизнес-процесс. Таким образом, вызов процесса RequestExternalReports – это простая ссылка на партнера, в которой наш процесс вызывается данным EJB от имени процесса Workflow. Установка такого соединения относится к области ответственности ИТ-специалиста по Workflow.

Об этом мы поговорим в "Изменение процесса изучения претензий" , "Изменение процесса изучения претензий".

Когда ИТ-специалист по процессу закончит формирование BPEL-процесса, процесс можно протестировать либо путем импорта компонентов приложения в тестовую среду WebSphere Studio Application Development Integration Edition, либо путем связывания тестовых версий служб, работающих на своих исходных платформах. После отладки и тестирования процесса он размещается в WebSphere Business Integration Server Foundation.

10.2 Импортирование WSDL и BPEL в IDE

WSDL-код, используемый в решении для работы с внешними оценщиками, был создан архитектором решения и является частью PSM (модели, специфичной для продуктов) – контракта между архитектором решения и ИТ-специалистами. Код BPEL был сформирован бизнес-аналитиком и является частью CIM (модели, независимой от вычислений) – контракта между бизнес-аналитиком и ИТ-специалистами. В данном разделе описывается, как ИТ-специалист переносит файлы WSDL и BPEL в WebSphere Studio Application Development Integration Edition.

10.2.1 Импортирование WSDL из Rational Software Architect

WSDL-определения будут применяться для создания ссылок на партнеров, операций и переменных в BPEL-модели. Архитектор решения экспортировал готовые WSDL-определения в zip-файл (см. раздел 6.4, "Обеспечение доступа к материалам"). Теперь мы импортируем этот zip-файл в WebSphere Studio Application Development Integration Edition и создадим необходимые нам ссылки на партнеров.

  1. Запустите WebSphere Studio Application Development Integration Edition и откройте перспективу Business Integration (Бизнес-интеграция). Выберите пункт меню File (Файл) \to New (Новый) \to Service Project (Проект службы). Откроется мастер New Project (Новый проект) ( рис. 10.2).
    Создание нового проекта службы

    Рис. 10.2. Создание нового проекта службы
  2. Введите уникальное имя для нового проекта (ITSOLGI) и нажмите Finish (Готово). Новый проект службы будет создан в папке Service Projects (Проекты служб) представления Services (Службы).
  3. Перед копированием WSDL-файла в проект службы, включающий наш новый BPEL-процесс, создайте новый Java-пакет для организации импортированных WSDL-файлов.

    Щелкните правой кнопкой мыши по проекту службы ITSOLGI и выберите пункт меню New (Новый) \to Package (Пакет). Введите в поле имени пакета services и нажмите OK.

    Совет. Если вы решили загружать WSDL-код из другого проекта (или ссылаться на него), то вам нужно изменить свойства проекта службы ITSOLGI, чтобы он ссылался на другой проект.
    Создание нового Java-пакета

    Рис. 10.3. Создание нового Java-пакета
  4. Импортирование необходимых WSDL-файлов.

    В проводнике по пакетам ( Package explorer ) щелкните правой кнопкой мыши по элементу Import (Импорт) > выберите zip-файл > найдите WSDL-файлы, упакованные архитектором решения (или используйте .\SG24-6636\RSA\ClaimsInvestigation WSDL files.wsdl), и выберите WSDL-код, применяемый службой Assessor Automation (см. табл. 10.1). Нажмите Finish (Готово).

Важный совет. WSDL-файлы должны импортироваться прямо в папку пакета, а не в подпапку. По умолчанию дерево папок копируется из Rational Software Architect и WSDL-файлы находятся в поддиректории. Это не создает никаких проблем при формировании BPEL-процесса, если имена папок представляют собой допустимые имена пакетов. Однако при размещении процесса WSDL-файлы не копируются из поддиректории в размещаемый EAR-файл. Хорошей практикой является перенос WSDL-файлов прямо в папку пакета с самого начала. Если же ваши WSDL-файлы оказались в неверной директории, как их переместить?
  • Если вы обнаружили ошибку до того, как начали разрабатывать и компоновать процесс, просто перенесите WSDL-файлы, используя навигатор.
  • Если вы начали разрабатывать и компоновать процесс или даже перешли к размещению прежде чем проблема обнаружилась, то при переносе WSDL многие ссылки будут переработаны, но все же не на 100 %. После переработки, используя кнопку поиска, найдите все пути к предыдущему местоположению WSDL и исправьте ссылки. Проще всего открыть затронутые этой ошибкой файлы в простом текстовом редакторе. Один из файлов, который перерабатываться не будет, – это файл <имя_процесса>.bpelex. В этом файле нужно будет изменить по одной ссылке на каждую связь с партнером. При вводе нового пути к WSDL-файлам убедитесь, что путь начинается с прямого слеша (/). Отсутствие слеша приведет к ошибке компоновки процесса.

10.2.2 Импортирование BPEL из WebSphere Business Integration Modeler

Прежде чем описывать методику импортирования BPEL из WebSphere Business Integration Modeler в WebSphere Studio Application Development Integration Edition, мы должны сказать, что первый вопрос, который должен решить ИТ-специалист, будет следующий:

  • нужно ли продолжить уточнение BPEL-процесса CIM в Modeler, а затем переносить его в WebSphere Studio Application Development Integration Edition
  • или нужно взять модель, полученную от аналитика, как есть, когда она будет готова для экспорта?

ИТ-специалист может редактировать бизнес-процесс Request External Reports, используя любой инструмент.

Когда нужно импортировать BPEL в IDE

В Modeler бизнес-процесс отображается с использованием Business Process Modeling Notation (BPMN)2См. работу Stephen White, "Introduction to BPMN", по адресу http://www.bpmn.org/Documents/Introduction%20to%20BPMN.pdf .

В WebSphere Studio Application Development Integration Edition существует три альтернативных способа редактирования бизнес-процесса, соответствующих разным стилям моделирования бизнес-процессов. Стиль Modeler выбирается как наиболее подходящий для бизнес-аналитика и единый для разных инструментов моделирования. Поскольку этот стиль не привязан к какой-то конкретной технологии работы с процессами, так проще сравнивать бизнес-процессы, смоделированные с использованием разных инструментов. Кроме того, проще понять логику всего потока. В случае сложных потоков, возможно, стоит продолжить уточнение логики потока в Modeler, прежде чем переносить ее в WebSphere Studio Application Development Integration Edition.

Стили редактирования WebSphere Studio Application Development Integration Edition разрабатывались для того, чтобы максимально упростить связывание потока с необходимой технологией. В частности, два из этих стилей, BPEL-процесс на основе потоков и BPEL-процесс на основе последовательностей, оптимизированы для редактирования BPEL-процессов. Выбор зависит от вашего личного вкуса. В какой то момент будет необходимо отредактировать BPEL-поток с использованием WebSphere Studio Application Development Integration Edition, чтобы выполнить тонкую настройку выполнения потока.

Существуют следующие вопросы:

  • В какой момент ИТ-специалист должен перейти от применения Modeler к использованию WebSphere Studio Application Development Integration Edition?
  • Когда следует, принимая во внимания возможности инструментов, экспортировать BPEL из Modeler?
  • Насколько детальным должно быть редактирование BPEL в Modeler?

В сценарии с работой с внешними оценщиками сделать выбор достаточно просто. Выбор основывается на нашем решении о том, что за моделирование интерфейсов и данных отвечает архитектор решения. Бизнес-аналитик определяет только модель функционирования бизнес-процесса, но не интерфейсы. Архитектор решения использует для моделирования интерфейсов Rational Software Architect. Архитектор решил выбрать Rational Software Architect, а не WebSphere Business Integration Modeler, поскольку существует требование включать интерфейсы прямо в UML-модель архитектуры. Специалист по процессам с самого начала должен работать в WebSphere Studio Application Development Integration Edition, поскольку ему нужно объединить BPEL-процесс с WSDL-интерфейсами. В Modeler нет возможности импортировать WSDL-определения интерфейсов.

В других проектах разработки, управляемой моделями, выбор может быть другим. Моделирование данных может осуществляться в WebSphere Business Integration Modeler или в каком-нибудь специальном средстве моделирования данных. Как уже обсуждалось в разделе 3.2.8, "Цепочки инструментов", прежде чем серьезно приступать к работе над проектом, важно определить, что за какие задачи отвечает, какие инструменты используются и как интегрируются артефакты, полученные в разных инструментах.

В нашем случае выбор ограничен, поскольку WebSphere Business Integration Modeler 5.1.1 не поддерживает импортирование WSDL. Однако в проекте, в котором WSDL-определения создаются в Modeler вместе с BPEL, у ИТ-специалиста есть гораздо больший простор для осуществления технической детализации модели процесса в WebSphere Business Integration Modeler до ее экспортирования в WebSphere Studio Application Development Integration Edition.

В нашем сценарии лучшим вариантом было экспортировать простое определение BPEL-процесса из WebSphere Business Integration Modeler и дать задание ИТ-специалистам использовать WSDL-определения из Rational Software Architect для завершения определения процесса и его реализации, как это описывается в оставшейся части данной главы.

Экспортирование BPEL из Modeler

Модель бизнес-процесса, созданную бизнес-аналитиком, нужно сохранить в CIM-контракте между ролями проекта, относящимися к бизнесу и к ИТ.

Затем ИТ-специалист берет на себя ответственность за дальнейшую детализацию модели.

Проверка правильности BPEL в WBI Modeler

Если переключить WebSphere Business Integration Modeler в режим BPEL, будут отображаться все ошибки и предупреждения, связанные с BPEL. Все эти ошибки необходимо исправить, прежде чем BPEL можно будет экспортировать. Предупреждения проблемой не являются. В подразделе "Проверка модели процесса" раздела 4.5.3 объясняется, как следует исправлять ошибки BPEL в процессе RequestExternalReport.

Когда ошибок в модели процесса не останется, ее можно экспортировать, а ее определения импортировать в WebSphere Studio Application Development Integration Edition. Существует несколько вариантов каталога для импорта:

  • каталог данных;
  • каталог процесса;
  • каталог ресурсов;
  • каталог организации или его содержимое;
  • какой-то один процесс, бизнес-элемент, ресурс или подразделение организации.

Если экспортируется весь процесс, то вместе с ним будут экспортированы все бизнес-элементы, используемые процессом и его подпроцессами, а также все индивидуальные ресурсы и организационные подразделения, отвечающие за выполнение процесса. Бизнес-элементы, определения ресурсов, определения организации и местоположения экспортируются в формат файлов XML-схемы (XSD).

В разделе "Экспортирование процесса", описывается экспорт процесса RequestClaimsAssessor из WebSphere Business Integration Modeler и все опции, которые нужно при этом включать.

Импортирование BPEL в IDE

Чтобы импортировать BPEL в IDE, выполните следующие шаги:

  1. Щелкните правой кнопкой мыши по проекту службы ITSOLGI, выберите пункт меню Import (Импорт). Откроется мастер импорта. Выберите пункт File system (Файловая система), нажмите Next (Далее).
  2. Укажите папку-источник, куда вы экспортировали BPEL из Modeler. При работе с материалами, поставляемыми с этим курсом, импортируйте файлы из директо- рии .\SG24-6636\Modeler, как показано на рис. 10.4. Убедитесь, что в поле Into folder (В папку) указан проект служб, созданный в разделе 10.2.1, "Импортирова- ние WSDL из Rational Software Architect". Бизнес-процесс и бизнес-элементы будут импортированы в рабочее пространство. Убедитесь, что для импорта был выбран корень информационной модели, а также файлы BPEL и WSDL ( рис. 10.4).
Импортированные файлы процесса

Рис. 10.4. Импортированные файлы процесса
Надежда Белякова
Надежда Белякова
Россия
Pavel Pelevin
Pavel Pelevin
Украина, Одесса