Опубликован: 13.04.2006 | Уровень: специалист | Доступ: платный | ВУЗ: Московский государственный университет путей сообщения
Лекция 12:

Система интеграции приложений IBM WebSphere MQ

< Лекция 11 || Лекция 12: 12345 || Лекция 13 >

Другие продукты семейства WebSphere MQ

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

Рассмотренные ниже продукты предназначены для расширения возможностей IBM WebSphere MQ.

MQ Integrator Broker

При создании комплексной информационной системы, объединяющей подсистемы различного назначения, разработанные в разное время разными коллективами разработчиков, возникает проблема <вавилонской башни>: объединяемые подсистемы используют при взаимодействии друг с другом разные языки, форматы сообщений, их семантическое наполнение и пр. При этом зачастую различия незначительны (например, набор полей в сообщении один и тот же, но их порядок различен), но требуют изменения всего приложения либо разработки специального преобразователя сообщения для каждого приложения.

Решить эту проблему помогает специализированный продукт семейства WebSphere MQ - MQ Integrator Broker. Фактически, MQ Integrator представляет собой программу-брокер, осуществляющую сбор и преобразование информации, приходящей от различных приложений. При этом возможно как преобразование всех типов сообщений к единому типу, так и локальное преобразование каких-либо типов сообщений.

Реализация правил преобразования происходит посредством понятного пользовательского интерфейса, и внесение новых типов преобразований не требует существенных трудозатрат. Форматы сообщений определяются в поставляемых словарях сообщений или в XML.

Помимо стандартных функций преобразования сообщений, MQ Integrator Broker позволяет добавлять к сообщениям информацию из баз данных предприятия (<обогащение информации>), автоматически сохранять часть информации из сообщений и пр.

Как и любое приложение-брокер, MQ Integrator Broker реализует механизмы подписки приложений на те или иные типы сообщений, механизмы рассылки сообщений по темам. Реализация подобной функциональности в рамках серверной части существенно сокращает объем разработки бизнес-приложений.

Кроме того, MQ Integrator Broker позволяет осуществлять визуальное моделирование и отладку правил преобразования, а также поддерживает набор адаптеров, которые могут использоваться для интеграции приложений (см. ниже). Недавно разработанные функции интеграции со SCADA-системами позволяют задействовать MQ Integrator для решения задач управления производством и технологическими процессами.

Как и любое соединение типа <звезда>, MQ Integrator Broker приводит к существенному сокращению количества соединений между приложениями. Кроме того, применение <распределенного> MQ Integrator Broker в совокупности с базовой функциональностью WebSphere MQ позволяет реализовать сложную распределенную архитектуру передачи и преобразования информации практически без дополнительного программирования, с использованием лишь базовой функциональности WebSphere MQ.

MQ Workflow

Деятельность любого предприятия строится по определенным формальным процедурам (рабочим процессам). В процессе автоматизации предприятия разработчикам приходится осуществлять реализацию всего набора рабочих процессов в рамках информационной системы. Большое значение при этом имеет обмен данными между элементами рабочего процесса. Логичным представляется использование для решения этой проблемы WebSphere MQ как средства, обладающего мощными возможностями для передачи сообщений и интеграции различных приложений.

MQ Workflow входит в состав семейства MQ и представляет собой систему управления рабочими процессами (бизнес-процессами). MQ Workflow позволяет в графическом режиме осуществлять построение и отладку бизнес-процессов. Созданная с помощью специальных средств MQ Workflow модель может быть затем инициирована для реальных приложений таким образом, что приложения осуществляют взаимодействие друг с другом в соответствии с описанным процессом. Управление взаимодействием (передача управления приложению; ветвление процесса в зависимости от условий и текущей ситуации и пр.) реализуется в рамках MQ Workflow, вследствие чего бизнес-приложения подвергаются минимальной модификации.

Наиболее часто MQ Workflow применяется для автоматизации бизнес-процессов, в которые вовлечены как сотрудники предприятия, так и информационные системы.

Как правило, процесс работы MQ Workflow можно разбить на три стадии. На первой стадии с помощью компонента Buildtime происходит определение процесса, включающее:

  • графическое моделирование бизнес-процесса;
  • определение персонала (люди, организации, роли);
  • регистрация программ, используемых для реализации отдельных бизнес-процедур;
  • определение структур данных;
  • определение топологии этапа исполнения.

Результатом процесса определения является готовая к работе модель (описание) бизнес-процесса. Данная модель может быть записана в репозитарий компонента Buildtime для дальнейшего использования или модификации. Кроме того, Buildtime поддерживает специальный формат описания бизнес-процессов MQ Workflow Flow Definition Language - FDL, что позволяет применять описанный процесс в рамках других систем, а также импортировать готовое описание бизнес-процесса для его дальнейшего выполнения.

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

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

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

Готовая модель передается в специализированный компонент MQ Workflow Runtime, где на основе модели формируется копия бизнес-процесса - реальный набор операций, которые будут выполнены приложениями и людьми в ходе данного бизнес-процесса. Управление бизнес-процессом включает:

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

Реализация данных функций возможна благодаря наличию в MQ Workflow широкого набора API для интеграции со сторонними приложениями, а также набора GUI для обеспечения комфортной работы пользователей с системой управления бизнес-процессами.

Подлежащие исполнению операции появляются в рабочих списках назначенных пользователей. Данные списки содержат постоянно обновляемые наборы операций, которые должны быть выполнены пользователем. Они являются первичным интерфейсом, с помощью которого пользователи начинают выполнение операций. В ходе самого выполнения могут также вызываться различные приложения, задействоваться другие пользователи. Управление этим процессом осуществляется MQ Workflow, вследствие чего пользователь ограждается от выполнения ненужных или запрещенных действий, а также сокращается время, затрачиваемое на выполнение работы.

Современные бизнес-процессы включают в себя как ориентированные на человека рабочие операции, так и автоматизированные приложения. Модель потока операций должна объединять операции, выполняемые людьми (<ручные операции>) с автоматически выполняемыми операциями.

Длительность ручных операций может измеряться минутами, часами, сутками, неделями. Оценка эффективности работы сотрудника, фиксирование времени выполнения им тех или иных операций производится путем обработки соответствующей информации внутри MQ Workflow. После проведения анализа данной информации может быть сделан вывод о результатах деятельности сотрудника или приняты рекомендации по оптимизации процесса выполнения им своих функций.

Клиентским интерфейсом для выполнения операций является продукт Client, входящий в стандартную поставку MQ Workflow. Именно в нем и содержится рабочий список назначенных пользователю задач. Кроме стандартного клиента MQ Workflow позволяет применять в качестве клиентского приложения Lotus Notes, Web-браузер и пр. В последнем случае предполагается использование специализированного API.

MQ Adapter

Применение информационных брокеров при проектировании системы интеграции приложений не позволяет полностью отказаться от разработки адаптеров, с помощью которых осуществляется <соединение> приложений и MQ. Создание таких адаптеров для каждого приложения <с нуля> является достаточно трудоемким процессом.

Решить проблему позволяет программный продукт MQ Adapters, включающий два основных компонента - MQ Adapter Kernel и MQ Adapter Builder. Последний продукт является инструментальной средой, которая существенно облегчает процесс построения адаптеров для приложений. Созданный с его помощью адаптер функционирует под управлением MQ Adapter Kernel, который реализует функции взаимодействия адаптера и остальных продуктов MQ. Adapter Kernel может управлять работой нескольких адаптеров одновременно.

MQ Everyplace

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

Для решения задачи гарантированной доставки сообщений в потенциально ненадежной коммуникационной среде предназначен продукт MQ Everyplace. Он обеспечивает соединение карманных и мобильных устройств с бизнес-приложениями. При этом сохраняются все свойства MQ: гарантированность доставки, возможность защиты информации с помощью шифрования, интеграция с приложениями и пр.

< Лекция 11 || Лекция 12: 12345 || Лекция 13 >
Ярослав Матюхин
Ярослав Матюхин
Россия
Сергей Исаков
Сергей Исаков
Россия