Сентябрь 2005


Тема номера: Oracle BAM и Oracle Rules – новые технологии Oracle


Алан Джок

Содержание бизнес-процессов
(Containing Business Processes

by Alan Joch)

Источник: журнал Oracle magazine, no.2, 2005,
http://www.oracle.com/technology/oramag/oracle/05-mar/o25bpel.html

Новый Web-стандарт гармонично сочетает гибкость и синхронизацию бизнес-процессов.

Дайте признанному музыкальному мастеру, например, Itzhak Perlman, скрипку, и он единолично сможет создать вдохновенное соло. Для большего же полнозвучия его можно было бы объединить с оркестром всемирно известных музыкантов. Но независимо от того, как организуются индивидуальные исполнители, талантливый дирижер (conductor) является ключевым элементом в организации всех и вся, в исполнении гармонично звучащей музыки.

В Web-сервисах также господствует гармония. Многие узко специализированные компоненты программного обеспечения, которые самостоятельно или под руководством исполняют свои задачи, могут динамически присоединиться к другим, образуя связанные бизнес-процессы, например, систему обработки заказов.

В прошлом интеграция Web-сервисов базировалась на нестандартных собственной разработки протоколах, которые лишь добавляли головную боль интеграторщикам.

Но вот на центральную сцену вышел новый талант - признанный стандарт, известный как BPEL (Business Process Execution Language – Язык Исполнения Бизнес-Процессов), который позволяет бизнесу (бизнесам) оркестровать и синхронизировать Web-сервисы. BPEL не ограничен только Web-сервисами на SOAP (Simple Object Access Protocol - Простой Протокол Доступа к Объектам); посредством специальной структуры BPEL-процесс может вызвать Web-сервисы независимо от их формата.

Компания Policy Studies Inc. (PSI), находящаяся в Денвере (Denver) фирма по аутсорсингу и технологическому консалтингу в интересах государства и местных органов власти, является самым ранним адаптатором BPEL, который был в ней использован для управления системой, которая определяет пригодность и производит регистрацию для SCHIP (State Children's Health Insurance Program - Государственная Программа Страхования Здоровья Детей). Открытые стандарты BPEL обеспечивают для каждого клиента PSI механизм быстрой настройки приложений, сводя затраты разработки к минимуму, что улучшает конкурентоспособное положение PSI.

"В нашем бизнесе очень важно короткое время реакции" - говорит Роберт Уольз (Robert Wales), вице-президент по производственной архитектуре PSI. "Гибкость BPEL обеспечивает большое преимущество. Наше приложение мы можем скроить и повторно развернуть его в другой структуре. Это в терминах ROI (коэффициент окупаемости инвестиций) помогает нам лучше работать, чем большинство компаний на этом рынке".

Внутри сервис-ориентированной архитектуры

Внедрение BPEL – это часть большего движения больших и средних компаний к сервис-ориентированной архитектуре (SOA), который формирует новый мир взаимосвязанных сервисов. В прошлом правили сложные "tightly coupled" (сильно связанные) приложения собственной разработки. Разработчики писали единые большие программы потоков технологического процесса (workflow), к которым соответственно потребностям компании приспосабливали свои внутренние процессы и настраивали программное обеспечение. Теперь "свободно соединяемые" Web-сервисы обещают гибкость mix-and-match [смешение и подгонка - принцип, используемый при компоновке систем из стандартных программных модулей – словарь Lingvo] компаниям, которые только собираются пересмотреть или установить новые индивидуальные компоненты для изменения состояния бизнеса.

Большинство Web-сервисов опирается на открытые стандарты, например, XML-схемы - для моделей данных; SOAP - для коммуникаций между сервисами; и WSDL (Web Services Description Language - Язык Описания Web-сервисов) - для определения местоположения и возможностей сервисов. BPEL входит в эту команду с механизмом открытых стандартов оркестрации Web-сервисов в workflow-процессах.

Технологические эксперты полагают, что BPEL готов к взлету. "Мы думаем, что он станет одной из более важных и распространенных технологий Web-сервисов на годы вперед" - говорит Дэвид Смит (David Smith), вице-президент при технологическим исследованиям и аналитическому консалтингу Gartner, Стамфорд, штат Коннектикут. "Коль скоро люди пробуют все более и более сделать при помощи Web-сервисов, они все больше и больше должны знать о способах их оркестровки, и BPEL - это то, что нужно всем", объясняет Смит. “Те, кто уже использует Web-сервисы, - хорошие кандидаты на использование BPEL, чтобы расширить область применения сервисов, связывая их в большие процессы”.

Финансы, телекоммуникации, государственные организации и промышленные предприятия находятся в числе самых первых пользователей BPEL при внедрении основанных на Web-сервисах потоков работ (workflows). Например, когда клиент запрашивает новый DSL-сервис (Digital Subscriber Line - цифровая абонентская линия), телеком-провайдер может использовать систему управления заказами, включающую индивидуальные Web-сервисы, чтобы принять заказ, выбрать DSL-модем по каталогу, установить устройство у клиента и спланировать визит техника, чтобы перепрограммировать переключатель. В течении этого потока работ где-то могут произойти нарушения стандартного процесса. Заказы на модемы, в которых испытывается недостаток, могут направить в другую сторону связанный поток работ, позвонить изготовителю для поставки дополнительных модемов, послать уведомление клиенту о задержке заказа. BPEL обеспечивает структуру, которая поддерживает это сложное осуществление (прим.ред.: в оригинале humming – жужжание) потока работ.

Среди реализуемых BPEL пунктов имеется широко распространенная поддержка, которая предоставляется основными поставщиками программного обеспечения, включая Oracle. Oracle BPEL Process Manager 10g включает основанный на J2EE сервер BPEL, который запускается на Oracle Application Server 10g или на любом другом J2EE-сервере приложений. "Oracle прокладывает путь использования BPEL, поскольку предлагает одну из самых первых его реализаций" – говорит Смит.

Oracle поставляет расширенный Oracle BPEL Process Manager, который функционирует на новом выпуске сервера приложений Oracle Application Server 10g (см. врезку “Понимающий SOA сервер приложений”). В дополнение к расширенному BPEL Oracle Application Server 10g включает новую функциональность – мониторинг бизнес-активности (BAM - business activity monitoring), как часть Oracle Integration (см. врезку "BAM: Наблюдение за протеканием бизнес-процессов") и расширенный человеческий компонент потока работ, который непосредственно интегрирован в Oracle BPEL Server.

Oracle BPEL Process Manager и Oracle BPEL Server

Производительность является ключевым фактором при выборе PSI Oracle-ского сервера для BPEL. "Мы сделали несколько испытаний, проверяя способность Oracle BPEL Server удовлетворить нашим требованиям" - вспоминает Уольз из PSI . "И мы убедились, что можем задействовать на лету десятки тысяч BPEL-процессов в любое заданное время, а каждый день выполнить сотни тысяч процессов".

Понимающий SOA сервер приложений
(SOA-Savvy App Server)

Последняя версия сервера приложений Oracle, Oracle Application Server 10g Release 2, включает несколько новых возможностей в части сервис-ориентированной архитектуры (SOA) и grid-технологий уровня предприятия, а также расширенные наборы возможностей бизнес-интеграции.

Чтобы повысить производительность разработчиков, которые строят SOA- и J2EE- приложения, новый выпуск сервера приложений включает версию Oracle JDeveloper 10g, обеспечивающего поддержку SOA-стандартов, как-то: WSIF, WS-Reliability (WS-надежность), WS-Security (WS-безопасность) и WS-Policy (WS-политика).

Технологически теперь также поддерживается JavaServer Faces, основанная на стандартах структура пользовательского интерфейса на стороне сервера для развернутых в Web Java-приложений. Oracle также имеет одну из наибольших коллекций компонентов JavaServer Faces, доступных сегодня с Oracle ADF Faces Components, коллекция включает 82 JavaServer Faces компонентов.

Новые возможности интеграции уровня предприятия включают расширенную автоматизацию бизнес-процессов и мониторинг с помощью Oracle BPEL Process Manager 10g, мониторинг бизнес-активности (BAM), а также управление и бизнес-событиями. Дополнительно этот выпуск обеспечивает обновленную автоматизированную поддержку широкого разнообразия индустриальных протоколов и стандартов, включая RosettaNet, HL7, EDI, EDIFACT, AS2, UCCNet и SWIFT.

Для grid-технологий уровня предприятия Oracle Application Server 10g Release 2 обеспечивает возможности высокой готовности, как-то: автоматическое восстановление после сбоев, многоуровневое отказоустойчивое предупреждение, механизм ретроспективного сохранения и расширенная кластеризация вместе со способностью резервирования и восстановления.

Oracle BPEL Process Manager позволяет разработчикам включать в потоки работ любые Web-сервисы, которые используют WSDL или SOAP. Благодаря WSIF (Web Services Invocation Framework - Структура Вызова Web-сервисов), Oracle BPEL Process Manager может также интегрировать Java- и EJB- коды в процесс BPEL. WSIF представляет собой простой Java API, используемый для вызова Web-сервисов, независимо от их формата. Вместо того чтобы работать непосредственно с SOAP API (стандарт для Web-сервисов), разработчики могут взаимодействовать с абстрактными представлениями Web-сервисов, разрешая им работать с той же самой программной моделью, независимо от того, как реализован Web-сервис. "Используя WSIF-построение, компании могут получить истинную производительность Java" - говорит Дэвид Шаффер (David Shaffer), директор по управлению продуктом Oracle BPEL Process Manager. "Разработчик не должен знать, реализованы ли эти сервисы на Java, сообщаются ли они через присущие Java методы или поддерживают ли они связь посредством SOAP."

Oracle BPEL Process Manager также включает сервис, который приводит к тому, что сообщения Java Message Service похожи на аналогичные для любого другого асинхронного сервиса. "Это позволяет людям интегрировать сообщения, скажем, MQ Series, в их BPEL-процессы точно так же, как любой другой сервис" - добавляет Шаффер. Кроме того, Oracle BPEL Process Manager оперирует с простыми HTTP-запросами типа “получить-и-объявлять” (get-and-post), с сообщениями электронной почти и адаптерами типа Java Connector Architecture, которые соединяются с конечными (back-end) системами.

Oracle BPEL Process Manager также помогает поддерживать надежность потоков работ. Если система терпит аварию в середине выполнения потока процессов, Oracle BPEL Process Manager удержит состояние потока в точке прерывания, так что процесс может возобновиться, когда система стартует повторно. Oracle BPEL Designer (Проектировщик), программный модуль в Oracle BPEL Process Manager, обеспечивает графический интерфейс "тащить-и-удалять” (drag-and-drop), чтобы создать потоки работ. Oracle BPEL Designer включает меню стандартных синхронных и асинхронных BPEL-сервисов и позволяет разработчикам создавать их собственные шаблоны для вызова пользовательских действий (активностей). "Главные разработчики теперь могут стать разработчиками интеграции, потому что BPEL стандартизирует всю логику этого процесса" - говорит Шаффер.

Еще более надежным делает сервер его интеграция с полным стеком технологий Oracle. "Выгода от функционирования во главе всего базы данных Oracle и сервера приложений состоит в том, что Вы получаете преимущества grid-архитектуры" - говорит Ашиш Мохиндру (Ashish Mohindroo), директор по продуктовому маркетингу в Oracle. "Если отказывает один сервер, процесс все же выполняется, благодаря применению технологий балансирования нагрузки, отказоустойчивости и др. Также можно масштабировать систему простым добавлением серверов".

Управление Изменчивостью

PSI доверяет Oracle BPEL,Process Manager, потому что все эти возможности делают компанию более гибкой и более приспособленной к изменениям в условиях бизнес-деятельности. Например, приложения, определяющие пригодность и производящие регистрацию, очень сложны из-за многих шагов, которые необходимы для обработки различных случаев, и большой сложности логики определения пригодности в субсидированных правительством программах страхования здоровья. Претенденты должны предоставить доказательства дохода и гражданства, а представители программы могут многократно выяснять различные вопросы в течение прикладного процесса. "Это - изменчивый поток работ. Он имеет тенденцию постоянно изменяться с течением времени" - объясняет Уольс. “Вы должны иметь возможность вмешаться в процесс в точке, где следует изменить относительно короткий заказ, чтобы удовлетворить требования группы депозитария спорного имущества”.

Коротко о фирмах

Policy Studies Inc.
Denver, Colorado
www.policy-studies.com
Policy Studies Inc. предоставляет аутсорсинговые, консалтинговые и технологические информационные сервисы для органов власти на уровне штатов и местном уровне в США, а федеральному правительству U.S.
Год основания: 1984
Число служащих: 1,600
Продукты Oracle:
Oracle Database, Oracle BPEL Process Manager

CenterStone Software
Hopkinton, Massachusetts
www.centerstonesoft.com

CenterStone Software - независимый продавец программного обеспечения, который включен в число компаний Global 2000 с его решением eCenter One, комплексным приложением для управления средствами обслуживания и недвижимым имуществом.

Год основания: 1999
Число служащих: 50
Продукты Oracle:
Oracle BPEL Process Manager

Oracle BPEL Process Manager предоставляет PSI-приложению "глаголы и синтаксис", чтобы это могло осуществиться. "Мы можем применить 42 дискретных Web-сервиса, каждый из которых уникален, и составить из них бизнес-процесс, который сделает нечто полезное, как-то: выполнит чье-то приложение или зарегистрирует попечительскую организацию". PSI сначала рассматривает центрально коммерческие решения и стремится использовать Oracle BPEL Process Manager, поскольку он построен на основе стандартов и обеспечивает лучший ROI.

Возможность многократного использования кодов и быстрый выход на рынок - это ключи к эффективности, и Oracle BPEL Process Manager в SOA-среде дает PSI эти преимущества. Вдобавок ко всему, Уольса привлекает долгосрочный потенциал Oracle BPEL Process Manager. "Мы полагаем, что большинство наших потенциальных бизнес-партнеров будут двигаться к SOA. Использование BPEL - стратегический выбор. Мы думаем, что через три-пять лет мы сможем построить системы, которые будут включать компоненты наших бизнес-партнеров, а BPEL организует все действия".

Фирма CenterStone Software, Hopkinton, штате Массачусетс, также устремилась к Oracle BPEL Process Manager во многом по тем же самым причинам. Oracle BPEL - открытый стандарт, который поможет независимому продавцу программного обеспечения обойти конкурентов, автоматизируя дорогие ручные процессы его больших корпоративных клиентов.

Приложение eCenter One, решение CenterStone для рабочего места управления ресурсами, которое контролирует все вопросы корпоративного недвижимого имущества и управления средствами обслуживания, работает в точке, где осуществляется административное планирование перемещения или сдачи в аренду для выполнения обработки заказа. "Все, что необходимо – это перевезти кого-то куда-то и зажечь свет" - говорит Росс Леибоуитз (Ross Leibowitz), главный технологический специалист CenterStone.

За сценой этих действий находится широкое множество сложных бизнес-процессов и связанных системных и обрабатывающих функций. "Наши клиенты хотят автоматизировать все эти различные бизнес-процессы, и BPEL позволяет нам делать это" - говорит Леибоуитз.

Эти бизнес-процессы могут подключать унаследованные приложения, компоненты eCenter One, Web-сервисы и ручные процессы, выполняемые человеком. "Если кто-то говорит, что в его офисе слишком жарко, мы применим поток работ, который посмотрит, где человек сидит, и пошлет сообщение специалисту по средствам обслуживания или сервис-провайдеру, который отвечает за обогрев и охлаждение здания" - объясняет он. "Это сообщение может быть передано электронной почтой или, возможно, вызовом Web-сервиса, который посылает запрос и возвращает ответ".

Обеспечение гибкого способа построения такого типа потоков работ было для CenterStone точкой приложения BPEL, но не единственной точкой. "Поскольку системы автоматизации средств обслуживания становятся все более распространенными, мы знаем, что надо применять компонент самообслуживания; например, если кто-то считает, что в его офисе слишком жарко, то надо послать сообщение непосредственно в HVAC-систему. Мы объединяем системы и людей, чтобы получить эффективность".

Большие идеи

BPEL дает пионерам от SOA и другое преимущество, разрешая им постепенно строить системы управления бизнес-процессами (BPM - business process management) этап за этапом, а не в сложной и дорогостоящей моде "большого удара" ("big bang"), диктуемой традиционной интеграцией приложений предприятия и составляющими собственность BPM-технологий. "Вы не должны разорвать все ваши существующие системы; Вы можете использовать BPEL, чтобы продлить существование вашего приложения и начать двигаться в направлении Web-сервисов и интеграции бизнес-процессов" - говорит Шаффер. "Это означает, что когда корпорация определяет свои бизнес-процессы, это делается стандартным способом, которым независим от продавца. Это - мощная модель, которая дает пользователям управление тем, что часто является их самым важным активом: их бизнес-процессами".

"BAM: Наблюдение за протеканием бизнес-процессов"
(BAM: Looking Under the Business Processing Covers)

Технологии мониторинга бизнес-активности (business activity monitoring - BAM), которые работают рука об руку с технологиями эффективности бизнес-процессов, стали возможными благодаря BPEL - Языку Исполнения Бизнес-Процессов (Business Process Execution Language).

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

BAM от Oracle - это часть Oracle Application Server 10g Enterprise Edition и продуктов Oracle Integration. В его возможности входят обнаружение событий, как только они случаются, сравнение производительности с установленными метриками и порогами, показ результатов на инструментальных панелях (dashboard) в реальном времени и вызов сигналов тревоги, когда это необходимо.

Основой Oracle BAM являются датчики (sensor), которые обнаруживают возникновение событий, которые BAM отслеживает по желанию конечных пользователей. Эти датчики поддерживают широкий диапазон источников событий, включая приложения, базы данных, системы управления сообщениями (JMS, MQ, AQ), RFID-датчики и инструменты бизнес-процессов типа Oracle BPEL Process Manager. "Oracle стоит обособленно в своем предложении BAM, обеспечивая нашу всестороннюю стратегию мониторинга событий, анализа и управления событиями во многих различных системах" - говорит Кевин Клагадж (Kevin Clugage), маркетинговый продукт-менеджер Oracle.

Возможности Oracle BPEL и функциональность BAM работают вместе, чтобы помочь создать, используя BPEL, и мониторить, используя BAM, сложный поток процессов. "Когда вы осуществляете свои процессы в BPEL, фактически не надо никаких усилий, чтобы включить BAM" - говорит Дэвид Шаффер, директор по управлению продуктом Oracle BPEL Process Manager. "Вместе они – потрясающее приложение для автоматизации бизнес-процессов."

Предположим, например, что финансовое учреждение использует Oracle BPEL Process Manager для создания процесса получения ссуды. Этот процесс получения вызывает приложения ссуды, введенные клиентами и автоматически обрабатывает их, сначала вызывает сервис, который оценивает кредитоспособность претендентов, а затем выполняет процессы, которые собирают информацию по различным типам ссуд, доступных приложению, и, наконец, оценивает и ранжирует предложения ссуды.

Финансовое учреждение интересуется оценкой нескольких аспектов приложений ссуды в режиме реального времени, так что оно использует способности BAM сервера приложений Oracle Application Server по установлению ряда событий, которые анализируют и контролируют процесс предоставления ссуды. Например, чиновник, руководящий выдачей ссуд, хочет посмотреть на число приложений, отклоненных и принятых в течение дня, наряду со средним временем, которое требуется для выполнения каждого шага процесса. Этот чиновник также хочет увидеть те приложения, которые основаны на других переменных, как-то: количество ссуд, завершенность основного приложения ссуды, полный объем ссуды. Способность BAM обнаружить связанные бизнес-события из различных гетерогенных систем и приложений, вовлеченных в процесс выдачи ссуды, а затем автоматически выполнить сложные вычисления и сравнить результаты с ключевыми индикаторами производительности (KPIs - key performance indicators) представляет собой очень мощную возможность BAM Oracle.

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

Даже компании, которые все же не приняли SOA-структуры, могут использовать BAM, добавляют Clugage. "Наблюдайте за неявными процессами, идентифицируйте события, которые происходят в определенных бизнес-процессах, а затем используете BAM для непосредственного контакта, чтобы контролировать события" – говорит он.


Alan Joch (ajoch@monad.net) - технический писатель из Новой Англии (New England), специализирующийся в области промышленных и интернетовских приложений.

E-mail this page