Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Компьютерлік орындалатын тіл
Computer executable language
Веб-қызметтер бизнес-процессін орындау тілі (WS BPEL), көбінесе BPEL (Бизнес-процессін орындау тілі) деп аталады, веб-қызметтер арқылы бизнес-процестердегі амалдарды анықтауға арналған OASIS стандартындағы орындалатын тіл. BPEL-дегі процестер ақпаратты экспорттау және импорттау үшін тек веб-қызметтер интерфейстерін пайдаланады.
The Web Services Business Process Execution Language (WS BPEL), commonly known as BPEL (Business Process Execution Language), is an OASIS standard executable language for specifying actions within business processes with web services. Processes in BPEL export and import information by using web service interfaces exclusively.
Шолу
Веб-қызметтердің өзара әрекеттесуін екі түрлі жолмен сипаттауға болады: орындалатын бизнес-процестер және абстрактілі бизнес-процестер ретінде. Орындалатын бизнес-процесс – бизнес-өзара әрекеттесуге қатысушының нақты мінез-құлқын модельдейді. Ал абстрактілі бизнес-процесс – орындалуы көзделмеген, жартылай белгіленген процесс. Орындалатын процестерден өзгеше, абстрактілі процесс қажетті нақты операциялық егжей-тегжейлердің бір бөлігін жасыруы мүмкін. Абстрактілі процестер сипаттамалық рөл атқарады, бірнеше мүмкін қолданылу сценарийлерін қамтиды, соның ішінде байқалатын мінез-құлық және/немесе процесс үлгісі. WS BPEL орындалатын және абстрактілі бизнес-процестерді сипаттауға арналған тіл арқылы процестердің мінез-құлқын модельдеуге бағытталған. Осы арқылы ол Веб-қызметтердің өзара әрекеттесу моделін кеңейтеді және оны бизнес-мәмілелерді қолдауға мүмкіндік береді. Сонымен қатар, ол кәсіпорындардың ішінде де, арасында да автоматтандырылған процестерді интеграциялауды жеңілдетуге арналған, өзара үйлесімді интеграциялық модельді анықтайды. Оның дамуы үлкен және кішкентай масштабта бағдарламалау үшін әртүрлі тілдер қажет деген ойдан туындады. Сондықтан ол XML форматында сақталады және үлкен масштабта бағдарламалауға мүмкіндік беруді мақсат етеді.
One can describe Web service interactions in two ways: as executable business processes and as abstract business processes. An executable business process: models an actual behavior of a participant in a business interaction. An abstract business process: is a partially specified process that is not intended to be executed. Contrary to Executable Processes, an Abstract Process may hide some of the required concrete operational details. Abstract Processes serve a descriptive role, with more than one possible use case, including observable behavior and/or process template. WS BPEL aims to model the behavior of processes, via a language for the specification of both Executable and Abstract Business Processes. By doing so, it extends the Web Services interaction model and enables it to support business transactions. It also defines an interoperable integration model that should facilitate the expansion of automated process integration both within and between businesses. Its development came out of the notion that programming in the large and programming in the small required different types of languages. As such, it is serialized in XML and aims to enable programming in the large.
Тарих
WS BPEL-дің бастамасы Web Services Flow Language (WSFL) және Xlang тілдеріне саяды. 2001 жылы IBM және Microsoft әрқайсысы дерлік бірдей, "ірі масштабты" бағдарламалау тілдерін анықтады: WSFL (Web Services Flow Language) және Xlang. Microsoft тіпті XLANG/s деп аталатын скрипт нұсқасын жасады, ол кейіннен BizTalk Server-дегі Orchestrations қызметтерінің негізі болды. Олар бұл тілдің «патенталды және толыққанды құжатталмаған» екенін нақты көрсетті. BPML-дің пайда болуы мен танымалдылығы, сондай-ақ BPMI.org және JBoss және Intalio Inc. басқаруымен ашық BPMS қозғалысының өркендеуімен, IBM және Microsoft бұл тілдерді BPEL4WS деп аталатын жаңа тілге біріктіруге шешім қабылдады. 2003 жылдың сәуір айында BEA Systems, IBM, Microsoft, SAP және Siebel Systems BPEL4WS 1.1 спецификациясын Web Services BPEL техникалық комитеті арқылы стандарттау үшін OASIS ұйымына ұсынды. BPEL4WS 1.0 және 1.1 нұсқалары болғанымен, OASIS WS BPEL техникалық комитеті 2004 жылдың 14 қыркүйегінде өз спецификациясын «WS BPEL 2.0» деп атауға дауыс берді. (Атаудың өзгеруі BPEL-ді «WS» (мысалы, WS Security сияқты) әрпімен басталатын басқа веб-қызметтер стандарттарының атау конвенцияларымен үйлестірді және BPEL4WS 1.1 мен WS BPEL 2.0 арасында жасалған маңызды жаңартуларды ескерді.) Нақты нұсқа туралы сөз болмаса, BPEL термині жиі қолданылады. 2007 жылдың маусым айында Active Endpoints, Adobe Systems, BEA, IBM, Oracle және SAP BPEL4People және WS HumanTask спецификацияларын жариялады, олар BPEL процестерінде адамдардың өзара әрекеттесуін қалай жүзеге асыруға болатынын сипаттайды.
The origins of WS BPEL go back to Web Services Flow Language (WSFL) and Xlang. In 2001, IBM and Microsoft had each defined their own fairly similar, "programming in the large" languages: WSFL (Web Services Flow Language) and Xlang, respectively. Microsoft even went ahead and created a scripting variant called XLANG/s which would later serve as the basis for their Orchestrations services inside their BizTalk Server. They specifically documented that this language "is proprietary and is not fully documented." With the advent and popularity of BPML, and the growing success of BPMI. org and the open BPMS movement led by JBoss and Intalio Inc., IBM and Microsoft decided to combine these languages into a new language, BPEL4WS. In April 2003, BEA Systems, IBM, Microsoft, SAP, and Siebel Systems submitted BPEL4WS 1.1 to OASIS for standardization via the Web Services BPEL Technical Committee. Although BPEL4WS appeared as both a 1.0 and 1.1 version, the OASIS WS BPEL technical committee voted on 14 September 2004 to name their spec "WS BPEL 2.0". (This change in name aligned BPEL with other web service standard naming conventions which start with "WS " (similar to WS Security) and took account of the significant enhancements made between BPEL4WS 1.1 and WS BPEL 2.0.) If not discussing a specific version, the moniker BPEL is commonly used. In June 2007, Active Endpoints, Adobe Systems, BEA, IBM, Oracle, and SAP published the BPEL4People and WS HumanTask specifications, which describe how human interaction in BPEL processes can be implemented.
BPEL мен BPMN арасындағы қатынас
WS BPEL үшін стандартты графикалық белгілеу жоқ, себебі OASIS техникалық комитеті бұл мәселені қарастырмады деп шешті. Кейбір жеткізушілер өздерінің белгілеулерін ойлап тапты. Бұл белгілеулер BPEL-дегі көптеген құрылымдар блоктық түрде құрылғандығын (мысалы, тізбек, while, pick, scope және т.б.) пайдаланады. Бұл мүмкіндік BPEL процестерінің сипаттамаларын Nassi-Shneiderman диаграммасын еске түсіретін стильдегі структураграммалар түрінде тікелей визуализациялауға мүмкіндік береді. Басқалары BPEL процестерінің сипаттамаларын түсіру үшін графикалық интерфейс ретінде басқа бизнес-процестерді модельдеу тілін, атап айтқанда Бизнес-процестерді модельдеу және нотация (BPMN) қолдануды ұсынды. Осы тәсілдің мүмкіндігін көрсету үшін BPMN спецификациясына BPMN-нен BPEL 1.1-ге бейресми және толық емес сәйкестік кірген. BPMN-ді BPEL-ге толыққанды сәйкестендіру бірнеше құралдарда, соның ішінде BPMN2BPEL деп аталатын ашық кодты құралда іске асырылды. Дегенмен, осы құралдарды дамыту BPMN мен BPEL арасындағы маңызды айырмашылықтарды көрсетті, бұл BPMN модельдерінен адам оқи алатын BPEL кодын жасауды өте қиын, ал кейбір жағдайларда тіпті мүмкін емес етеді. BPMN-нен BPEL-ге және кері инженерия жасау мәселесі одан да қиын: BPMN диаграммаларынан BPEL кодын жасау және бастапқы BPMN моделі мен жасалған BPEL кодын синхронды түрде сақтау, яғни біреуін өзгерткенде екіншісіне де өзгеріс енгізілуі.
There is no standard graphical notation for WS BPEL, as the OASIS technical committee decided this was out of scope. Some vendors have invented their own notations. These notations take advantage of the fact that most constructs in BPEL are block structured (e. g., sequence, while, pick, scope, etcetera.) This feature enables a direct visual representation of BPEL process descriptions in the form of structograms, in a style reminiscent of a Nassi–Shneiderman diagram. Others have proposed to use a substantially different business process modeling language, namely Business Process Model and Notation (BPMN), as a graphical front end to capture BPEL process descriptions. As an illustration of the feasibility of this approach, the BPMN specification includes an informal and partial mapping from BPMN to BPEL 1.1. A more detailed mapping of BPMN to BPEL has been implemented in a number of tools, including an open source tool known as BPMN2BPEL. However, the development of these tools has exposed fundamental differences between BPMN and BPEL, which make it very difficult, and in some cases impossible, to generate human readable BPEL code from BPMN models. Even more difficult is the problem of BPMN to BPEL round trip engineering: generating BPEL code from BPMN diagrams and maintaining the original BPMN model and the generated BPEL code synchronized, in the sense that any modification to one is propagated to the other.
BPEL-ге "шағын бағдарламалау" қолдауын қосу
BPEL-дің "if then elseif else" және "while" сияқты басқару құрылымдары, сондай-ақ оның айнымалыларды өңдеу мүмкіндіктері логиканы жүзеге асыру үшін "шағын" бағдарламалау тілдерін пайдалануға тәуелді. Барлық BPEL жүзеге асырулары XPath 1.0 тілін стандартты тіл ретінде қолдауы тиіс. Алайда, BPEL дизайны кеңейтілуге мүмкіндік береді, сондықтан жүйе құрушылар басқа тілдерді де қолдана алады. BPELJ – бұл JSR 207-ге қатысты күш-жігер, ол Java-ның BPEL ішінде "шағын" бағдарламалау тілі ретінде жұмыс істеуіне мүмкіндік беруі мүмкін.
BPEL's control structures such as 'if then elseif else' and 'while' as well as its variable manipulation facilities depend on the use of 'programming in the small' languages to provide logic. All BPEL implementations must support XPath 1.0 as a default language. But the design of BPEL envisages extensibility so that systems builders can use other languages as well. BPELJ is an effort related to JSR 207 that may enable Java to function as a 'programming in the small' language within BPEL.
BPEL4Адамдар
Веб-қызметтердің таратылған бизнес-қосымшаларда кеңінен қабылдануына қарамастан, адамдардың араласуының болмауы көптеген нақты бизнес-процестер үшін маңызды кемшілік болды. Осы кемшілікті жою мақсатында, BPEL4People BPEL-ді тек веб-қызметтерді ұйымдастырудан ғана емес, сонымен қатар рөлдерге негізделген адамдардың іс-әрекеттерін ұйымдастыруға дейін кеңейтті.
Despite wide acceptance of Web services in distributed business applications, the absence of human interactions was a significant gap for many real world business processes. To fill this gap, BPEL4People extended BPEL from orchestration of Web services alone to orchestration of role based human activities as well.