...

понедельник, 19 августа 2013 г.

Что дает автоматизация бизнес-процессов с применением IBM BPM и J2EE?



Обзор на основе опыта разработки корпоративных систем с использованием J2EE и IBM BPM 7.0 и 7.5.

Данная статья, как, надеемся, и следующие, даст понимание, что ожидают бизнес-заказчики от использования IBM BPM (Business Process Management) платформы и что они в результате получают.


А с другой стороны, что получают разработчики – упрощение или усложнение работы.


Введение



Знакомство с IBM BPM начнем с небольшого предисловия. Для начала, напишем, что IBM BPM – это общее название, которое объединяет ряд продуктов IBM из линейки WebSphere предназначенных для управления бизнес-процессами.


Основными из них являются (см. Рисунок2):



  • WAS (WebSphere Application Server) – J2EE Application Server, базовая программная платформа.

  • ESB (WebSphere Enterprise Service Bus) – корпоративная шина данных, на которой размещаются все сервисы с бизнес-логикой.

  • Process Server (WebSphere Process Server) – непосредственно сама платформа для выполнения бизнес-процессов в версии 7.0. А в версии 7.5, кроме самого Process Server есть еще движок от Lombardi. Об их сравнении уже будет в следующих статьях.


Какие задачи помогает решать BPM


В течении нескольких последних лет, мы реализовывали различные виды проектов с использованием BPM, в основном в банковской сфере.

Исходя из опыта, можно описать основные преимущества использования готовых решений от IBM по сравнению с написанием «своих решений»:



  1. Визуальное моделирование и выполнение бизнес-процессов.

  2. Набор готовых компонент для построения гибких бизнес-процессов: условия, параллельные ветки, ожидания, события и т.д.

  3. Взаимодействие с пользователем для выполнения ручных действий (Human Tasks)

  4. Гибкость в переконфигурировании бизнес-процессов.

  5. Управляемость бизнес-процессов. Обеспечивается встроенными средствами, например, такой утилитой как Process Choreographer, которая дает возможность как мониторить выполняющиеся экземпляры бизнес-процессом, изменять их состояние, так и, в случае необходимости, вручную изменять данные или даже ход выполнения конкретного экземпляра.

  6. Поддержка транзакционности при выполнении бизнес-задач.

  7. Поддержка версионности бизнес-процессов.

  8. Стабильность работы. Обеспечивается соответствующим конфигурированием серверов в виде кластера с распределением нагрузки (load balancing). Минимальное время простоя гарантирует конечно конфигурирование кластера со всеми активными нодами.

  9. Продуктивность. Организация BPM платформы в виде кластера дает хорошую масштабируемость системы, за счет добавления в систему новых серверов в виде кластерных нод.


Архитектура


Архитектурно взаимодействие основных компонент BPM можно представить довольно просто, см. Рисунок 3:


1. WebSphere Process Server:



  • Содержит смоделированные бизнес-процессы как шаблоны

  • Запускает на выполнение экземпляры бизнес-процессов на основании смоделированных шаблонов.

  • Экземпляры бизнес-процессов на вход принимают объекты данных (Business Object) и выполняют заложенную бизнес-логику, при этом могут обращаться к различным сервисам через ESB.




2. WebSphere Enterprise Service Bus:


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

  • ESB Сервисы выполняют обработку и трансформацию входных и получение требуемых выходных данных для решения конкретных задач.

  • ESB Сервисы могут обращаться как к внешним, так и к внутренним системам и базам данных.

  • ESB Сервисы, для выполнения требуемой бизнес-логики, могут использовать как готовые компоненты WebSphere ESB, так и созданные разработчиками, например, с использованием Java.


Разработка


Основная разработка ведется в WebSphere Integration Developer (WID) — начиная с версии 7.5, это уже Designer. WID разработан на базе Eclipse и позволяет как создавать бизнес-процессы и ESB сервисы, так и писать и отлаживать код, например, на Java.


Дополнительно, можно использовать и некоторые другие инструментарии от IBM, такие как:



  • WebSphere Modeler для предварительного моделирования бизнес-процессов.

  • Portlet Factory для создания визуальных Портлетов.

  • IBM Process Designer – среда разработки BPMN-процессов, заменяющая Lombardi Teamworks.





Визуальная часть


Для построения визуальной части систем по работе с бизнес-процессами IBM BPM предлагает 3 основные варианта, см. Рисунок 5:



  1. Использовать еще одно решение от IBM — WebSphere Portal. Разработчики могут создавать Портлеты под этот портал, используя часть уже «готовой» функциональности, такой как интеграцию с Process Server, готовый контроль по управлению задачами (Task List) и др.

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

  2. Использовать WebSphere Business Space. Это решение от IBM является частью Process Server и представляет собой веб-приложение с набором уже готовых виджетов для управления бизнес-процессами. Для добавление новой функциональности можно как конфигурировать «стандартные виджеты», так и создавать новые.

    Данный вариант удобен для быстрого старта в начале работы с BPM, но имеет ряд ограничений и недостатков при реальной эксплуатации, таких как: медленная работа JavaScript в Internet Explorer, оформление форм только в виде виджетов и т.д.

  3. Использовать внешний интерфейс Process Sever-а (API). Визуальную часть можно разработать на любом языке, фрейморке, платформе, а интеграцию с BPM реализовать через подключение готового и доступного API самого Process Server.

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





Заключение



В качестве заключения, хочется написать при каких основных условиях, с нашей точки зрения, использование IBM BPM является наиболее эффективным:

  1. Использование IBM BPM как единой платформы для автоматизации бизнес-процессов компании. Замечание: частичное применение BPM может привести к большим накладным расходам как на разворачивание, так и на поддержку самой платформы.

  2. Создание и развитие корпоративной шины данных (ESB) компании для размещения сервисов с бизнес-логикой. Важным аспектом построения ESB с сервисно-ориентированной архитектурой (SOA) .

  3. Наличие высококвалифицированных системных администраторов, которые смогут как развернуть, так и поддерживать BPM платформу с необходимым уровнем масштабируемости, отказоустойчивости и безопасности.

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


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers. Five Filters recommends: 'You Say What You Like, Because They Like What You Say' - http://www.medialens.org/index.php/alerts/alert-archive/alerts-2013/731-you-say-what-you-like-because-they-like-what-you-say.html


1 комментарий:

  1. Интересная статья, хорошо написано, если есть базовые понятия о предмете и собственно об автоматизации бизнес процессов предприятия.

    ОтветитьУдалить