• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    BPMN到BPEL模型轉(zhuǎn)換的研究

    2014-12-31 00:00:00李娜曾秋麗
    數(shù)字化用戶 2014年11期

    【摘 要】業(yè)務(wù)流程執(zhí)行語言BPEL的抽象級(jí)別并不適合業(yè)務(wù)流程分析與設(shè)計(jì),相反,BPMN提供了更高級(jí)別的抽象模型。為了讓編寫業(yè)務(wù)流程既滿足業(yè)務(wù)分析與設(shè)計(jì)人員的直觀和可視化要求,又要使得設(shè)計(jì)的業(yè)務(wù)流程可以直接執(zhí)行,那么從BPMN模型到BPEL的轉(zhuǎn)換就變得很有必要了。本文首先對(duì)BPMN與BPEL的相關(guān)技術(shù)進(jìn)行了簡(jiǎn)單的介紹,然后對(duì)BPMN中的基礎(chǔ)元素進(jìn)行了分類,并分別提出了各個(gè)類型中的元素到BPEL元素的映射。

    【關(guān)鍵詞】業(yè)務(wù)流程建模符號(hào);業(yè)務(wù)流程執(zhí)行語言;模型轉(zhuǎn)換

    1 前言

    在現(xiàn)代的業(yè)務(wù)流程管理(BPM)中的一個(gè)很重要的特點(diǎn)是能夠?qū)⒏鞣NWeb服務(wù)按照既定的規(guī)則編排成可執(zhí)行的業(yè)務(wù)流程,在這個(gè)過程中,業(yè)務(wù)流程規(guī)范是整個(gè)流程的基礎(chǔ)和核心內(nèi)容,目前有很多規(guī)范標(biāo)準(zhǔn),主要分為兩種,一種是基于有向圖的,這個(gè)適合業(yè)務(wù)流程設(shè)計(jì)人員使用,比如BPMN;另一種是基于塊結(jié)構(gòu)語言的,這適合流程引擎解釋執(zhí)行,比如WS-BPEL。建立BPEL業(yè)務(wù)流程模型的最終目的是可以在引擎中執(zhí)行,然而,BPEL的抽象級(jí)別并不適合業(yè)務(wù)流程分析與設(shè)計(jì),相反,BPMN提供了更容易接受的更高級(jí)別的抽象模型。因此,為了讓編寫業(yè)務(wù)流程既滿足業(yè)務(wù)分析與設(shè)計(jì)人員的直觀和可視化要求,又要使得設(shè)計(jì)的業(yè)務(wù)流程可以直接執(zhí)行,那么從BPMN模型到BPEL的轉(zhuǎn)換就變得很有必要了。然而,它們之間的轉(zhuǎn)換存在著諸多的問題,并且在轉(zhuǎn)換過程中也會(huì)存在很多的限制,因此,本文只是對(duì)BPMN的基礎(chǔ)元素和流程模型到BPEL的轉(zhuǎn)換進(jìn)行研究。

    1.1 BPMN與BPEL介紹

    以下對(duì)BPMN和BPEL兩種建模語言進(jìn)行簡(jiǎn)單的介紹,并分別給出基礎(chǔ)的建模元素。

    1.2 BPMN

    業(yè)務(wù)流程建模與標(biāo)注(BPMN, Business Process Modeling Notation)是對(duì)象管理組織(OMG, Object Management Group)維護(hù)的關(guān)于業(yè)務(wù)流程建模的行業(yè)性標(biāo)準(zhǔn)。BPMN的主要目標(biāo)是通過提供一套既符合業(yè)務(wù)分析與設(shè)計(jì)人員直觀和可視化需求,又能表現(xiàn)復(fù)雜流程語義的圖形標(biāo)注和建模方式,同時(shí)也為技術(shù)開發(fā)人員從事業(yè)務(wù)流程管理提供支持。BPMN基本上涵蓋了業(yè)務(wù)流程建模以及工作流建模的所有的元素和應(yīng)用需要,因此,它包含了許多不同的圖形符號(hào),總的來說可以將這些圖形分為:流對(duì)象(Flow Objects)、任務(wù)(Task)、連接對(duì)象(Connecting Objects)、網(wǎng)關(guān)(Gateway)、容器(Container)等。

    1.3 BPEL

    BPEL是基于web服務(wù)的業(yè)務(wù)流程執(zhí)行語言,是專門為整合Web Service而制定的一項(xiàng)標(biāo)準(zhǔn)規(guī)范。

    BPEL基元活動(dòng)是與外界進(jìn)行交互的最簡(jiǎn)單的形式,與服務(wù)進(jìn)行交互、操作、傳輸數(shù)據(jù)或者處理異常等,BPEL的基元活動(dòng)包括如下:

    流程用于和外界進(jìn)行交互的基元活動(dòng):receive、invoke、reply;

    流程用于傳輸數(shù)據(jù)的基元活動(dòng):assign;

    通過throw活動(dòng)發(fā)出故障信號(hào);

    通過terminate活動(dòng)放棄所有流程實(shí)例的執(zhí)行;

    通過wait活動(dòng)使流程等待一段時(shí)間或到達(dá)某個(gè)截止期限后再執(zhí)行;

    通過empty活動(dòng)不執(zhí)行任何的動(dòng)作;

    通過compensate活動(dòng)做一些補(bǔ)償動(dòng)作,通常需要和scope聯(lián)合使用;

    結(jié)構(gòu)活動(dòng)主要是用來規(guī)定基元活動(dòng)發(fā)生的順序,BPEL4WS的結(jié)構(gòu)化的活動(dòng)包括如下:

    活動(dòng)之間的順序控制由 sequence、switch 和 while來實(shí)現(xiàn) ;

    活動(dòng)間的并發(fā)和同步由 flow 來實(shí)現(xiàn);

    基于外部事件的不確定的選擇由 pick 來實(shí)現(xiàn)。

    2 轉(zhuǎn)換方法

    目前,存在許多的BPMN到BPEL的映射方法,比如在文獻(xiàn)中,Gao Yi提出了一種將GOTO結(jié)構(gòu)消除的思路來解決BPMN到BPEL映射的問題,他認(rèn)為BPMN是一種類似具有GoTo結(jié)構(gòu)的程序語言,而BPEL則是不包含GoTo結(jié)構(gòu)的程序語言;文獻(xiàn)提出了一套完整的解決BPMN到BPEL映射問題的方案,在這個(gè)方案中,定義了一個(gè)BPD的核心子集,然后將BPD的子集轉(zhuǎn)換成塊結(jié)構(gòu),并用“component”來表示轉(zhuǎn)換后的BPD的子集。

    不同于以上提出的映射方法,本文認(rèn)為BPMN是面向圖形結(jié)構(gòu)的而BPEL卻是塊結(jié)構(gòu)的,并且BPMN流程的方向是可以任意的,而BPEL流程方向是固定的。同時(shí),由于BPMN與BPEL的基本結(jié)構(gòu)類似,并且在元素上都有相關(guān)的映射,因此本文提出的映射方式就是BPMN的元素一一對(duì)應(yīng)的映射成BPEL元素,暫且不考慮更加復(fù)雜的流程關(guān)系。

    BPMN模型元素主要分成兩個(gè)類型,一個(gè)是用于流程控制的結(jié)構(gòu)元素,另一個(gè)是其他的節(jié)點(diǎn)元素,其中子流程也算是節(jié)點(diǎn)元素,只不過是一種復(fù)合型節(jié)點(diǎn)。

    2.1基本結(jié)構(gòu)的映射

    BPMN流程控制結(jié)構(gòu)主要分為順序、并行、選擇和循環(huán)。這些對(duì)應(yīng)BPEL中的,,, 元素。以下通過一些簡(jiǎn)單的例子來說明兩者之間的轉(zhuǎn)換。

    (1)順序結(jié)構(gòu)(Sequence)

    (2)并行結(jié)構(gòu)(flow)

    (3)選擇結(jié)構(gòu)(switch)

    (4)循環(huán)結(jié)構(gòu)(while)

    以上四種流程結(jié)構(gòu)是最常用的,除此之外還有其他的一些元素可以加入到這些結(jié)構(gòu)中,并且這些結(jié)構(gòu)可以混合著使用,這樣可以構(gòu)建功能更加強(qiáng)大的業(yè)務(wù)流程模型。

    2.2 節(jié)點(diǎn)元素映射

    下面給出了一些常見的BPMN節(jié)點(diǎn)元素以及子流程的映射過程

    (1)流程開始事件:BPEL的”pick”或者是”receive”活動(dòng)對(duì)象

    (2)流程的終止事件:”terminate”元素

    (3)收到消息并觸發(fā)任務(wù)活動(dòng):

    (4)定時(shí)任務(wù)或者是周期性觸發(fā)任務(wù):映射為”receive”,并且需要使用”wait”元素來表示等待的時(shí)間,然后再使用”invoke”元素向”receive”發(fā)送消息。

    (5)錯(cuò)誤產(chǎn)生:”throw”元素

    (6)嵌入式子流程:BPEL中對(duì)立的流程。

    (7)獨(dú)立型的子流程:BPEL中對(duì)立的流程,下級(jí)對(duì)象本身會(huì)被映射成”invoke”元素,用于調(diào)用這個(gè)流程

    除了以上給出的BPMN向BPEL映射的元素節(jié)點(diǎn)以外,還有其他可映射的元素。特別是在BPMN2.0中包含了更加豐富的元素,而能夠轉(zhuǎn)換或者轉(zhuǎn)換之后有意義的元素只是占了BPMN元素集的一部分。

    3 總結(jié)與展望

    本文首先介紹了BPMN與BPEL這兩種業(yè)務(wù)流程建模語言,并給出兩者之間的不同之處,以及在實(shí)際建模過程中的互補(bǔ)作用,從而提出進(jìn)行轉(zhuǎn)換的必要性。然后在轉(zhuǎn)換方法方面,將BPMN元素分成了流程控制元素和節(jié)點(diǎn)元素,并分別給出了這兩類元素的映射方法。本文中的方法主要是針對(duì)基本元素和流程進(jìn)行的,在今后的工作中,將會(huì)對(duì)更加復(fù)雜的業(yè)務(wù)過程提出轉(zhuǎn)換方法,并以此實(shí)現(xiàn)相關(guān)的轉(zhuǎn)換工具。

    參考文獻(xiàn):

    [1] 詹林,曹海燕.全程優(yōu)化平臺(tái)中BPMN與BPEL相互轉(zhuǎn)換的研究[J]. 電腦與信息. 2008(06):65-66

    [2] 魏明,夏永霖,魏峻. BPMN到BPEL2.0的模型轉(zhuǎn)換方法[J]. 計(jì)算機(jī)應(yīng)用研究. 2008(11): 89-90

    [3] 李艷華,邱錦倫,宋炯. 基于BPMN輔助構(gòu)建Web Services的研究[J]. 計(jì)算機(jī)工程. 2006(14): 125

    [4] YiGao BPMN-BPEL Transformation and Round Trip Engineering http://www.eclarus.com/pdf/BPMN_BPEL_Mapping.pdf 2006.04

    [5] Chun Ouyang, Marlon Dumas, Wil M.P.van der Aslst, Arthur H.M.ter Hofstede From Business Process Models to Process-oriented Software Systems:The BPMN to BPEL Way* BPM Center Report BPM-06-27, BPMcenter.org, 2006.06

    永年县| 左贡县| 自贡市| 江源县| 滦平县| 宜兴市| 五家渠市| 集安市| 利津县| 胶南市| 水城县| 古田县| 垣曲县| 偃师市| 武汉市| 静乐县| 义乌市| 关岭| 南靖县| 琼中| 临颍县| 满城县| 分宜县| 台北市| 枣阳市| 大方县| 康保县| 灌阳县| 富锦市| 巴林右旗| 确山县| 田林县| 竹山县| 文昌市| 东山县| 正宁县| 镇赉县| 镇江市| 孟州市| 临安市| 江达县|