Ж у р н а л   о   к о м п ь ю т е р н ы х   с е т я х   и   т е л е к о м м у н и к а ц и о н н ы х   т е х н о л о г и я х
СЕТИ И СИСТЕМЫ СВЯЗИ on-line
  ПОИСК: ПОДПИСКА НА НОВОСТИ: НОМЕР:
    ДОМОЙ • Архив: Новостей | Конференций | НомеровПодписка
 
   
 
   
    
РЕДАКЦИЯ
 
Все о журнале
Подписка
Как проехать
Где купить
Отдел рекламы
График выхода журнала
Адреса в Интернет

РУБРИКАТОР
   
• Инфраструктура
• Информационные
   системы

• Сети связи
• Защита данных
• Кабельные системы
• Бизнес
• Колонка редактора
• Электронная
   коммерция

• Только на сервере
• Системы
   учрежденческой
   связи

• Новые продукты


Rambler's Top100

  

Перспективы BPEL

Эрик Р. Пизковски

Новая версия спецификации BPEL (Business Process Execution Language) позволяет «переносить» бизнес-процессы, т. е исполнять их в системах, базирующихся на BPEL-механизмах разных разработчиков.

Интеграция разнородных систем и приложений в комплексные бизнес-процессы всегда была нелегкой задачей. Web-сервисы появились как средство довести функциональность этих систем до всей организации, но сами по себе они не ориентированы на нужды интеграции и координации бизнес-процессов. Язык BPEL (другие названия — BPEL4WS и WS-BPEL) устраняет это слабое место, отображая модель того, как Web-сервисы оперируют бизнес-процессами. Спецификация BPEL существует уже более пяти лет, но подготавливаемая к выпуску новая спецификация WS-BPEL 2.0 содержит существенные уточнения. В ней устраняются и исправляются множество неоднозначностей и неясностей и закладывается хорошая основа для успешной работы в будущем.

BPEL содержит много языковых конструкций для работы с Web-сервисам, включая обработку ошибок, корреляцию событий и поддержку условной логики. Спецификация WS-BPEL 2.0 улучшает и расширяет эти языковые конструкции.

Несмотря на это, переход на версию 2.0 не будет безболезненным. Старая и новая версии имеют существенные синтаксические и семантические различия.

И к сожалению, версия WS-BPEL 2.0 не совместима с предыдущей. Кроме того, в ней отсутствуют некоторые ключевые возможности, такие, как поддержка взаимодействия между людьми и поддержка вложенных процессов (субпроцессов).

История развития BPEL

BPEL — это язык, используемый для управления коммуникациями между системами или бизнес-партнерами. Поскольку он предназначен для описания процессов, то BPEL-процесс может представлять собой ИТ- или бизнес-сценарий. BPEL-процессы обычно исполняются на больших временных интервалах и используются для решения широкого круга задач — от интеграции систем до координирования процесса согласования финансовых отношений между деловыми партнерами.

Первоначальный вариант спецификации, разработанный компаниями BEA Systems, IBM и Microsoft, получил широкую поддержку в отрасли. Однако, когда другие разработчики начали строить продукты на базе этой спецификации, проявились ее неоднозначности и пробелы. Для устранения этих недостатков поставщики, реализовавшие исполняющие механизмы BPEL (BPEL engines), разрабатывали соответствующие расширения. Для продолжения успешного развития BPEL, содействия его широкому признанию и включения в него (в качестве открытых стандартов) расширений, предложенных сторонними разработчиками, BEA, IBM и Microsoft в мае 2003 г. предоставили спецификацию в организацию OASIS (Organization for the Advancement of Structured Information Standards). В соответствии со своими правилами OASIS присвоила спецификации наименование WS-BPEL. В результате спецификация BPEL уже тогда на один шаг отдалилась от статуса открытого стандарта. В ИТ-сообществе в связи с этой спецификацией существуют различные ожидания. Хо-тя спецификация WS-BPEL 2.0 в сравнении с BPEL4WS 1.1 предлагает новые возможности и усовершенствования, сфера ее действия остается неизменной.

Принцип работы BPEL

Уникальные языковые конструкции, присущие BPEL, позволяют поместить соответствующую спецификацию на вершину иерархии Web-сервисов OASIS и делают ее хорошим средством для организации взаимодействия сервисов, которая получила название «оркестровка». Значение BPEL возросло вместе с широким распространением сервис-ориентированной архитектуры SOA (Service-Oriented Architecture), поскольку она требует оркестровки. Последняя позволяет организациям определять и переопределять бизнес-процессы в режиме реального времени, создает так необходимую организациям гибкость и является ключевой ценностью SOA.

Для реализации оркестровки в BPEL-процесс входят языковые конструкции — последовательности, действия (activities), вызовы, назначения и операторы условной логики — для вызова других сервисов и организации их совместной работы. Один из способов, при помощи которых BPEL поддерживает условную логику, необходимую для оркестровки, сводится к концепции действий. Действия реализуют логику процесса и разделены на два класса: основные и структурированные. Основные действия описывают элементарные шаги хода процесса, структурированные — определяют логику управления процессом и поэтому могут рекурсивно содержать в себе другие элементарные и/или структурированные действия.

Усовершенствования версии BPEL 2.0

Спецификация WS-BPEL 2.0 содержит новые действия и улучшает почти все уже существующие; кроме того, некоторые существующие действия в ней переименованы. Благодаря вводу новых и усовершенствованию ряда существовавших ранее механизмов расширения WS-BPEL 2.0 имеет очень хорошие перспективы. Фирменные усовершенствования или расширения, реализованные в исполнительном механизме BPEL одного разработчика, при попытке экспорта в другие BPEL-механизмы будут игнорироваться. Разработчики обычно предлагают расширения с целью преодоления недостатков спецификации. Хотя многие из этих расширений могут быть внесены в BPEL только к выпуску следующей версии, механизмы расширения позволяют разработчикам реализовать «будущую функциональность» уже сегодня, не рискуя при этом стабильностью стандарта. Ведь даже если в дальнейшем такое расширение и становится стандартом, OASIS, скорее всего, не будет использовать его в оригинальном виде, а предварительно попытается переработать.

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

Трудности перехода на новую версию

Существенные различия между BPEL4WS 1.1 к WS-BPEL 2.0, о которых шла речь выше, сильно усложняют переход на новый стандарт, а главное — версия WS-BPEL 2.0 не является обратно совместимой с BPEL4WS 1.1. К тому же WS-BPEL 2.0 не хватает некоторых важных качеств: в ней не будет поддержки принципа модульности, повторного использования кода и уже упомянутых выше механизмов взаимодействия между людьми и поддержки субпроцессов. Можно ожидать появления расширений, решающих эти проблемы, но сама версия WS-BPEL 2.0 перечисленные концепции не поддерживает.

Есть мнение, что отсутствие поддержки взаимодействия между людьми и субпроцессов — это огромный недостаток, поскольку язык оркестровки без этой поддержки является неполным. И действительно, такая поддержка необходима для того, чтобы BPEL обрабатывал модели любых процессов стандартным образом. Эти недостатки, однако, не отпугивают клиентов от BPEL, поскольку данные функции часто предлагаются в фирменных решениях поставщиков.

Для поддержки взаимодействия между людьми компании IBM и SAP предложили свое расширение BPEL — BPEL4People. Задачи, связанные с взаимодействием между людьми, существенно отличаются от работы с сервисами. В процессе исполнения они имеют определенные статусы («готова к исполнению», «выполняется», «завершена», «завершена неудачно» и т. д.) и в каждый данный момент времени задача имеет только одного пользователя. Обращения к сервисам в процессе своего исполнения не меняют статуса, поскольку сервису и им все равно, сколько людей пользуются им в данный момент. По причине этих фундаментальных различий любая реализация описанной выше функциональности должна формулироваться как расширение, а не как часть базовой спецификации. К сожалению, в настоящее время в большинстве механизмов BPEL эта функциональность реализуется только через фирменные расширения. Ситуация не изменится и в новой версии спецификации.

В большинстве случаев использование фирменных расширений затрудняет переход от BPEL-механизма одного разработчика к аналогичному механизму другого разработчика. Так же обстоит дело и с субпроцессами. Язык BPEL в настоящее время не поддерживает явного объявления субпроцессов. Как в BPEL4WS 1.1, так и в WS-BPEL 2.0 можно лишь единственным образом имитировать субпроцесс — определив целый бизнес-процесс как независимый сервис и вызвать его при помощи действия «вызов» (invoke activity). Это конечно, до некоторой степени паллиатив, поскольку субпроцесс получается полностью скрытым от своего родительского процесса и отсутствует возможность координации субпроцесса с родительским процессом на всем их жизненном цикле.

Для решения этих проблем компании IBM и SAP предложили свое решение — совокупность расширений для субпроцессов BPEL-SPE (Extensions for Sub-Processes). Эта заявка на стандарт (но уже для следующей спецификации BPEL), подразумевающая явное объявление субпроцессов, предусматривает повторное их использование, жесткую увязку жизненных циклов субпроцесса и его родительского процесса и возможность обращения субпроцесса к данным своего родительского процесса.

Версия WS-BPEL 2.0 есть свидетельство того, что работа над спецификацией продолжается. Усовершенствования, которые она в себе несет, показывают, какими большими возможностями в деле совершенствования спецификаций располагают такие органы стандартизации, как OASIS, и демонстрируют хорошее усвоение уроков, полученных в результате работы с предыдущими версиями. Удобства, предлагаемые новой версией BPEL, могут быть полезны пользователям языка, но с переносом существующих BPEL-процессов из старой версии в новую будут возникать трудности. Прямые и скорые выгоды от применения WS-BPEL 2.0 смогут извлечь разработчики, поскольку они наверняка будут пользоваться преимуществами механизмов расширения, которые предлагаются новой версией спецификации..





  
10 '2007
СОДЕРЖАНИЕ

бизнес

• На родине Web

инфраструктура

• «Многоликое» монтажное оборудование

• Проектирование ЦОДа

• VoIP-системы громкого оповещения

• Правда о надежности устройств хранения данных

• C помощью iFind мы найдем друг друга без проблем

сети связи

• Наше мобильное будущее?

информационные системы

• Перспективы BPEL

• Тяжкое бремя Vista: смиритесь с неизбежностью

• Сlick-to-call делает вызов

• Виртуальные справочники осваивают рынок

кабельные системы

• Характеристики СКС и квалификация кабельщиков очень важны для ЦОДов

• Оптоволокно для внутриобъектовых систем

защита данных

• Интервью журнала NWC с руководителем компании Imperva Шломо Крамером

• Speermint: стандартизированный протокол SIP-пиринга

• Во всем виноват браузер

• Сертификация сайтов не решает проблему безопасности

новые продукты

• Кабельные стяжки для пищевой промышленности; Эстетичное управление шнурами; Новые ИБП для дома и офиса; Шлюз для передачи сотового трафика через DSL; О мечте парковщика


• Калейдоскоп



 Copyright © 1997-2007 ООО "Сети и Системы Связи". Тел. (495) 234-53-21. Факс (495) 974-7110. вверх