BPEL

BPEL

BPEL (англ. Business Process Execution Language) — язык на основе XML для формального описания бизнес-процессов и протоколов их взаимодействия между собой. BPEL расширяет модель взаимодействия веб-служб и включает в эту модель поддержку транзакций.

В общем виде конфигурация BPEL-проекта выглядит следующим образом:

  • BPEL-визуальный редактор;
  • Сервер управления бизнес-процессами.

Основные файлы BPEL-проекта:

  • .bpel — логический синтез и координация веб-служб. Фактически, алгоритм исполнения бизнес-процесса. (его графическое представление напоминает блок-схему и диаграмму потоков данных в одном лице).
  • .wsdl — описание интерфейсов для обмена сообщениями. «Как достичь веб-службы» (WSDL).
  • .xsd — описание структур данных проекта (XML Schema).

Содержание

История

Фирмы IBM и Microsoft определили два довольно схожих языка, WSFL и Xlang, соответственно. Рост популярности BPML, успех BPMI.org и открытое движение BPMS вынудили Intalio Inc., IBM и Microsoft принять решение объединить эти языки в новый язык — BPEL4WS. В апреле 2003, BEA Systems, IBM, Microsoft, SAP и Siebel Systems передали BPEL4WS 1.1 OASIS для стандартизирования по Web Services BPEL Technical Committee. Хотя BPEL4WS появился сразу в версиях 1.0 и 1.1, технический комитет WS-BPEL OASIS проголосовал 14 сентября 2004 назвать спецификацию WS-BPEL 2.0. Это изменение было сделано, чтобы выровнять BPEL с другими стандартами веб-сервисов, которые по соглашению об именовании начинаются на WS-.

В июне 2007, Active Endpoints, Adobe, BEA, IBM, Oracle и SAP опубликовали спецификации BPEL4People и WS-HumanTask, где описывалось как может быть реализовано в BPEL взаимодействие с людьми.

О дальнейшем направлении разработки BPEL разгорается жаркая дискуссия. Необходимость добавить семантику в BPEL в форме WS-HumanTask и прочего только подчёркивает тот факт, что BPEL никогда не был полноценным языком.

Пример BPEL

Гипотетический пример. BPEL-последовательность mathProcess принимает переменную $numIn возводит её в квадрат и возвращает результат в переменной $numOut.

 <process name="mathProcess" targetNamespace="http://example.com/ws-bp/math"
 xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable" 
 xmlns:math="http://manufacturing.org/wsdl/math">
    <partnerLinks>
        <partnerLink name="Math" partnerLinkType="math:exampleMath" myRole="mathService" />
    </partnerLinks>
    <variables>
        <variable name="numIn"  messageType="math:unsignedInt"/>
        <variable name="numOut"  messageType="math:unsignedInt"/>
        <variable name="num"  type="xsd:unsignedInt"/>
    </variables>
    <sequence>
        <receive partnerLink="Math" portType="math:mathPort" operation="secondDegree" variable="numIn" createInstance="yes"/>
        <assign name="LoopCounterIncrement">
          <copy>
             <from>$numIn.request</from>
             <to variable="num"/>
          </copy>
          <copy>
             <from>$num * $num</from>
             <to variable="numOut" part="response"/>
          </copy>
        </assign>
        <reply operation="secondDegree" partnerLink="Math" portType="math:mathPort" variable="numOut"/>
    </sequence>
 </process>

Литература

  • Understanding SOA with Web Services. By Eric Newcomer, Greg Lomow. Addison Wesley Professional 2004
  • SOA for the Business Developer: Concepts, BPEL, and SCA. Ben Margolisand, Joseph Sharpe

См. также

Стандарты



Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "BPEL" в других словарях:

  • BPEL — Die WS Business Process Execution Language (BPEL) ist eine XML basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft… …   Deutsch Wikipedia

  • BPEL — Business Process Execution Language En informatique, Business Process Execution Language (ou BPEL, prononcé bipeul , ou bipèl ), est un langage de programmation destiné à l exécution des procédures d entreprise. Le BPEL est issu des langages WSFL …   Wikipédia en Français

  • WS-BPEL — Die WS Business Process Execution Language (BPEL) ist eine XML basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft… …   Deutsch Wikipedia

  • WS-BPEL — (Web Services) Business Process Execution Language, WS BPEL (en castellano, Lenguaje de Ejecución de Procesos de Negocio con Servicios Web), es un lenguaje estandarizado por OASIS para la composición de servicios web. Está desarrollado a partir… …   Wikipedia Español

  • Comparison of BPEL engines — This article is a comparison of BPEL and BPMN engines. Product Product Page Vendor Edition Release Date Framework Compatibility License ActiveVOS [1] Active Endpoints [2] 8.0 September 2010 Servlet or Java EE BPMN 2.0; WS BPEL; …   Wikipedia

  • WS-BPEL — Business Process Execution Language En informatique, Business Process Execution Language (ou BPEL, prononcé bipeul , ou bipèl ), est un langage de programmation destiné à l exécution des procédures d entreprise. Le BPEL est issu des langages WSFL …   Wikipédia en Français

  • Oracle BPEL Process Manager — is a BPEL engine that is a member of the Oracle Fusion Middleware family of products. It enables enterprises to orchestrate disparate applications and Web services into business processes. The ability to quickly build and deploy these processes… …   Wikipedia

  • Business Process Execution Language — As defined in the abstract of the Web Services Business Process Execution Language OASIS Standard WS BPEL 2.0, WS BPEL (or BPEL for short) is a language for specifying business process behavior based on Web Services. Processes in WS BPEL export… …   Wikipedia

  • BPEL4WS — Die WS Business Process Execution Language (BPEL) ist eine XML basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft… …   Deutsch Wikipedia

  • Business Process Execution Language — Die WS Business Process Execution Language (BPEL) ist eine XML basierte Sprache zur Beschreibung von Geschäftsprozessen, deren einzelne Aktivitäten durch Webservices implementiert sind. Die im Jahr 2002 von IBM, BEA Systems und Microsoft… …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»