• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      結(jié)合經(jīng)濟(jì)補(bǔ)償?shù)囊訟rtifact為中心的業(yè)務(wù)流程失敗恢復(fù)方法

      2015-12-17 07:14:55覃海煥
      關(guān)鍵詞:業(yè)務(wù)流程事務(wù)合作伙伴

      覃海煥

      (上海電機(jī)學(xué)院 電子信息學(xué)院, 上海 200240)

      ?

      結(jié)合經(jīng)濟(jì)補(bǔ)償?shù)囊訟rtifact為中心的業(yè)務(wù)流程失敗恢復(fù)方法

      覃海煥

      (上海電機(jī)學(xué)院 電子信息學(xué)院, 上海 200240)

      摘要:失敗恢復(fù)是業(yè)務(wù)流程管理中很重要的問題。針對(duì)現(xiàn)實(shí)商業(yè)活動(dòng)中,協(xié)作的商家希望能夠結(jié)合經(jīng)濟(jì)補(bǔ)償和技術(shù)方法來恢復(fù)失敗流程的需求,提出了一種結(jié)合上下文和經(jīng)濟(jì)補(bǔ)償?shù)囊詀rtifact為中心的業(yè)務(wù)流程失敗恢復(fù)方法,給出了一種支持(條件)替代服務(wù)和經(jīng)濟(jì)補(bǔ)償規(guī)則定義的事務(wù)模型以及一種結(jié)合經(jīng)濟(jì)補(bǔ)償和條件替代的失敗恢復(fù)機(jī)制,可實(shí)現(xiàn)流程盡可能地向前恢復(fù),并在向后恢復(fù)時(shí)考慮級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償。通過案例分析證實(shí)了方法的可行性。

      關(guān)鍵詞:失敗恢復(fù); 經(jīng)濟(jì)補(bǔ)償; 以Artifact為中心的業(yè)務(wù)流程

      業(yè)務(wù)流程已成為現(xiàn)代組織保持持久競(jìng)爭(zhēng)力的必備品。在面向服務(wù)的環(huán)境下,一個(gè)業(yè)務(wù)流程通過組合一系列服務(wù)來完成特定的業(yè)務(wù)目標(biāo),這些服務(wù)通常由獨(dú)立的組織提供。由多方協(xié)作的、長(zhǎng)時(shí)間執(zhí)行的業(yè)務(wù)流程容易出現(xiàn)各種錯(cuò)誤,如服務(wù)執(zhí)行錯(cuò)誤、服務(wù)QoS(Quality of Service)異常等。為保證業(yè)務(wù)流程能夠正確可靠地執(zhí)行,以盡可能地達(dá)成既定業(yè)務(wù)目標(biāo),在流程遭遇錯(cuò)誤時(shí),需要結(jié)合運(yùn)行時(shí)上、下文盡可能地處理好錯(cuò)誤,使流程能夠繼續(xù)執(zhí)行,即向前恢復(fù);若無法向前恢復(fù),則將流程(語義)回退到其初始狀態(tài),即向后恢復(fù)。

      目前,已有不少工作是利用運(yùn)行時(shí)的上、下文信息來實(shí)現(xiàn)動(dòng)態(tài)服務(wù)適應(yīng)[1-6]和異?;謴?fù)機(jī)制優(yōu)化的[7-10]。前者專注于事務(wù)的向前恢復(fù)機(jī)制,采用基于規(guī)則或基于目標(biāo)的服務(wù)適應(yīng)策略,未涉及異常的分類處理。文獻(xiàn)[7]中對(duì)異常進(jìn)行分類并定義了相應(yīng)的恢復(fù)起點(diǎn),但其異常分類模型中并未區(qū)分交互異常和非交互異常;交互異常通常會(huì)涉及服務(wù)QoS異常,其恢復(fù)方法也不盡相同。文獻(xiàn)[8-11]中側(cè)重于健壯的異常處理和適度的失敗恢復(fù)的研究。

      然而,上述工作均未考慮經(jīng)濟(jì)補(bǔ)償?shù)挠绊憽T诂F(xiàn)實(shí)商業(yè)活動(dòng)中,協(xié)作的商家總是希望能夠通過經(jīng)濟(jì)補(bǔ)償或技術(shù)方法向前恢復(fù)失敗的流程,而非簡(jiǎn)單地回滾,導(dǎo)致全輸?shù)木置妗榇?,文獻(xiàn)[12]中提出了一種基于經(jīng)濟(jì)補(bǔ)償?shù)氖聞?wù)管理模型。該模型總是嘗試通過經(jīng)濟(jì)補(bǔ)償向前恢復(fù)失敗流程,而非通過回滾恢復(fù)數(shù)據(jù)一致性。但并非所有的流程異常都可以通過經(jīng)濟(jì)補(bǔ)償實(shí)現(xiàn)向前恢復(fù),如用戶取消異常會(huì)導(dǎo)致流程回退,且可能涉及經(jīng)濟(jì)補(bǔ)償。因此,事務(wù)模型需要區(qū)分錯(cuò)誤類型并采取不同的恢復(fù)方式。文獻(xiàn)[13]中的業(yè)務(wù)事務(wù)模型給出了業(yè)務(wù)相關(guān)元素的服務(wù)等級(jí)協(xié)議,但并未給出相應(yīng)的運(yùn)行時(shí)的錯(cuò)誤恢復(fù)機(jī)制。

      因此,亟待開發(fā)一種新的事務(wù)模型,以支持異常分類及對(duì)事務(wù)恢復(fù)過程中上下文和經(jīng)濟(jì)補(bǔ)償?shù)木C合考慮,盡量促使流程執(zhí)行完成,并減少流程失敗造成的協(xié)作方的損失。本文提出了一種結(jié)合上下文和經(jīng)濟(jì)補(bǔ)償?shù)囊訟rtifact為中心的業(yè)務(wù)流程事務(wù)模型,支持條件替代服務(wù)、經(jīng)濟(jì)補(bǔ)償規(guī)則的定義;給出了一種區(qū)分異常類型的、綜合考慮了上下文和經(jīng)濟(jì)補(bǔ)償?shù)幕謴?fù)機(jī)制,以盡可能地實(shí)現(xiàn)異常的向前恢復(fù);并在流程向后恢復(fù)時(shí)考慮可能的級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償,以降低其他參與者的經(jīng)濟(jì)損失。最后通過案例研究驗(yàn)證了方法的可行性。

      1業(yè)務(wù)流程中的異常

      圖1展示了一個(gè)生產(chǎn)廠商的訂單處理場(chǎng)景,用以Artifact為中心的業(yè)務(wù)流程模型EZFlow表示[14],其匯集的業(yè)務(wù)數(shù)據(jù)和實(shí)例狀態(tài)有助于提供運(yùn)行時(shí)的上下文。該場(chǎng)景涉及客戶采購流程、廠商訂單處理流程和物流公司的貨運(yùn)流程,相應(yīng)的核心Artifact分別標(biāo)識(shí)為采購單(PO)、訂單(Order)和貨運(yùn)單(SO),其信息模型和流程模型分別如圖1(a)、1(b)所示。圖中,虛線表示流程間的消息交互。在接收到客戶訂單(RO)后,廠商依據(jù)訂單進(jìn)行原材料采購(PPO),安排貨運(yùn)(AS),進(jìn)行生產(chǎn)組裝(AP),之后裝箱發(fā)貨(IP)及發(fā)送票據(jù)(SB),收到付款(RP)后發(fā)送提貨單(SBL),最后結(jié)案訂單(CO)。流程從接收訂單到完成訂單歷時(shí)很長(zhǎng),期間可能會(huì)遭遇各類異常,如服務(wù)執(zhí)行異常、服務(wù)超期完成、服務(wù)完成質(zhì)量未達(dá)到雙方商定的要求、用戶取消異常等,最終導(dǎo)致出貨延期甚至流程失敗。

      根據(jù)服務(wù)是執(zhí)行失敗、QoS異常還是被用戶取消,以及服務(wù)是否與協(xié)作者有交互、服務(wù)異常是否涉及經(jīng)濟(jì)補(bǔ)償?shù)葐栴},本文將異常分為如下4類。

      (1) 服務(wù)QoS異常。在一定條件下,此類異常可通過經(jīng)濟(jì)補(bǔ)償實(shí)現(xiàn)向前恢復(fù);若條件不滿足,則需在經(jīng)濟(jì)補(bǔ)償之后,再根據(jù)服務(wù)可采取的恢復(fù)方法進(jìn)行向前或向后恢復(fù)。如服務(wù)PPO未能按時(shí)發(fā)貨,導(dǎo)致后續(xù)產(chǎn)品發(fā)貨延期,若預(yù)期延遲時(shí)間在客戶可接受范圍內(nèi),則客戶可能在獲得適當(dāng)?shù)慕?jīng)濟(jì)補(bǔ)償后同意流程繼續(xù)執(zhí)行;否則,客戶可能取消訂單。

      (2) 交互服務(wù)功能異常。指與協(xié)作者有交互的服務(wù)發(fā)生執(zhí)行異常。此類異常需先進(jìn)行經(jīng)濟(jì)補(bǔ)償(若導(dǎo)致了經(jīng)濟(jì)損失),再根據(jù)服務(wù)可采取的恢復(fù)方法進(jìn)行向前或向后恢復(fù)。如交互服務(wù)PPO出現(xiàn)異常,廠商要求供應(yīng)商給予經(jīng)濟(jì)補(bǔ)償,若時(shí)間允許則重新采購原料,流程繼續(xù)執(zhí)行;否則回退流程。

      (3) 非交互服務(wù)功能異常。指流程內(nèi)部不與

      圖1 廠商的訂單處理場(chǎng)景Fig.1 Order processing scenario of manufacturer

      協(xié)作者交互的服務(wù)發(fā)生執(zhí)行異常?;謴?fù)時(shí)直接根據(jù)服務(wù)可采取的恢復(fù)方法進(jìn)行向前或向后恢復(fù)。

      (4) 用戶取消異常。指用戶在執(zhí)行過程中進(jìn)行了取消操作,通常會(huì)涉及(級(jí)聯(lián))經(jīng)濟(jì)補(bǔ)償?;謴?fù)時(shí)首先根據(jù)預(yù)先商定的關(guān)于取消的經(jīng)濟(jì)補(bǔ)償策略進(jìn)行經(jīng)濟(jì)補(bǔ)償,然后從流程最終執(zhí)行的活動(dòng)開始進(jìn)行流程的向后恢復(fù)。

      上述異常中,除用戶取消異常外,流程的向后恢復(fù)也可能會(huì)導(dǎo)致合作伙伴間的級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償。為支持這些異常的有效恢復(fù),流程事務(wù)模型需要支持經(jīng)濟(jì)補(bǔ)償規(guī)則、服務(wù)可采取的恢復(fù)方法及合作伙伴的定義,并針對(duì)不同的異常類別制定不同的恢復(fù)機(jī)制。

      2結(jié)合經(jīng)濟(jì)補(bǔ)償?shù)囊訟rtifact為中心的業(yè)務(wù)流程事務(wù)模型

      2.1 相關(guān)概念

      在EZFlow[14-15]中,一個(gè)業(yè)務(wù)流程表示為artifact類、任務(wù)、資源庫和工作流定義、以一個(gè)核心Artifact類承載其業(yè)務(wù)數(shù)據(jù)和執(zhí)行信息。Artifact類A是一個(gè)元組:A= (name,Atts),其中,name為其名稱;Atts為其相關(guān)屬性集。每個(gè)Artifact類總是包含一個(gè)屬性ID,以表示Artifact實(shí)例的唯一標(biāo)識(shí)。

      定義1一個(gè)EZFlow工作流定義是一個(gè)七元組(C,Γ,R,M,T,F,G),其中:

      (1)C為核心Artifact類;Γ為一組輔助Artifact類的集合;R為一組資源庫集合;M為一組消息類型集合;T為一組任務(wù)集合。

      (2)F將T中的每個(gè)任務(wù)t映射到一個(gè)二元組(mi;mo),mi為觸發(fā)t所需要的消息類型,mo為t產(chǎn)生的消息類型。每個(gè)消息類型只能由一個(gè)任務(wù)產(chǎn)生,也只能用來觸發(fā)一個(gè)任務(wù)。

      (3)G為一組三元組(u,v,g)的集合,其中,u∈R且v∈T,或u∈T且v∈R;g為邊(u,v)上的哨函數(shù)。

      EZFlow用快照來表示工作流W的即時(shí)系統(tǒng)狀態(tài),包含Artifact類表、工作流執(zhí)行信息表等。當(dāng)一個(gè)外部消息到達(dá)或一個(gè)任務(wù)執(zhí)行完成時(shí),工作流從一個(gè)快照遷移到另一個(gè)快照,沿著Artifact的生命周期不斷推進(jìn)。一個(gè)工作流的執(zhí)行是系統(tǒng)狀態(tài)和任務(wù)的一個(gè)交替序列s0t0s1t1…tn-1sn,其中,s0是系統(tǒng)初始狀態(tài),t0為系統(tǒng)的初始任務(wù),其后每個(gè)si+1可通過ti推導(dǎo)得出,0≤i

      2.2 結(jié)合經(jīng)濟(jì)補(bǔ)償?shù)臉I(yè)務(wù)流程事務(wù)模型

      依據(jù)活動(dòng)在遭遇異常時(shí)采用的恢復(fù)方法,可將活動(dòng)的恢復(fù)屬性分為4類: 可忽略、可重試、可(條件)替代和可補(bǔ)償。

      定義2給定一個(gè)EZFlowEZ,其事務(wù)屬性定義為一個(gè)映射:Tx:T→{(rec,Sub,t-1)},將EZ任務(wù)集中的每個(gè)任務(wù)t映射到元組(rec,Sub,t-1)。

      (1)rec為t的恢復(fù)屬性,可為ign、retr、subs和comp的任意組合,如A&B,表示同時(shí)具有原子恢復(fù)屬性A和B。ign表示失敗可忽略;retr表示t可在有限次重試中成功完成;subs表示t可替代,在t失敗時(shí)可調(diào)用Sub集合中的替代服務(wù)進(jìn)行恢復(fù);comp表示t可補(bǔ)償,即若異常在t執(zhí)行完成后發(fā)生,t的副作用可通過其補(bǔ)償任務(wù)t-1進(jìn)行語義撤銷。

      (2)Sub為替代服務(wù)集,替代服務(wù)可為條件形式,如if condition then subservice,其中,condition為定義在artifact屬性上的條件表達(dá)式,subservice為功能等價(jià)的服務(wù)。

      上述恢復(fù)屬性中,可忽略(ign)、可重試(retr)、可替代(subs)為向前恢復(fù),可補(bǔ)償(comp)為向后恢復(fù)。在進(jìn)行失敗恢復(fù)時(shí),先嘗試向前恢復(fù)(若有),若不能恢復(fù),則再嘗試向后恢復(fù),稱為基于事務(wù)屬性的恢復(fù)。在運(yùn)行時(shí)可依據(jù)上下文信息選擇滿足條件的替代服務(wù),避免無效的恢復(fù)嘗試。

      為結(jié)合經(jīng)濟(jì)補(bǔ)償進(jìn)行流程恢復(fù),協(xié)作各方需在業(yè)務(wù)協(xié)作之前就協(xié)作過程中可能遭遇的異常的恢復(fù)方式達(dá)成協(xié)議,包括經(jīng)濟(jì)補(bǔ)償及基于恢復(fù)屬性的恢復(fù)方法。

      定義3一個(gè)交互異?;謴?fù)規(guī)則rule是一個(gè)四元組(name,type,faultP,recovery)。

      (1)name為規(guī)則名稱。

      (2)type為規(guī)則類型,其取值為

      type=post/exception/cancel

      其中,post表示后置條件異常,服務(wù)QoS異常屬于這一類;exception表示執(zhí)行異常,交互服務(wù)功能異常屬于這一類;cancel針對(duì)用戶取消行為進(jìn)行定義。

      (3)faultP定義引發(fā)異常的一方,在規(guī)則類型為cancel時(shí),必須定義。

      (4)recovery定義規(guī)則的恢復(fù)行為,如if conditionthen recovery,其中,condition為artifact或異常消息屬性上的條件表達(dá)式。

      復(fù)雜恢復(fù)行為為單個(gè)恢復(fù)行為的組合,如rec1‖rec2,表示恢復(fù)時(shí)會(huì)先嘗試rec1,若沒有成功,再嘗試rec2。每個(gè)恢復(fù)行為為恢復(fù)操作的“與”表達(dá)式,用&&連接,表示恢復(fù)行為包含所有的恢復(fù)操作?;謴?fù)操作可分為經(jīng)濟(jì)補(bǔ)償、基于事務(wù)屬性的恢復(fù)或基于事務(wù)屬性的向后恢復(fù)。其中,經(jīng)濟(jì)補(bǔ)償為過錯(cuò)方向經(jīng)濟(jì)損失方支付一定金額的補(bǔ)償方式,定義為

      FinComp(payer, payee, amount)

      其中,payer和payee分別表示付款方和收款方;amount為補(bǔ)償金額。如交互服務(wù)PPO的供應(yīng)商超期送貨恢復(fù)規(guī)則可定義如下:

      (VendorDlay,post,,if(Order.PORecvDate>Order.

      POPlanRecvDate) &&(Order.PORecvDate≤(Order.

      POPlanRecv Date+2)) then FinComp(Order.vendor,

      self,Order.totalAmt*0.01))

      這條規(guī)則表示若供應(yīng)商的送貨時(shí)間有2天以內(nèi)的延遲,則需支付給廠商訂單金額的1%作為經(jīng)濟(jì)補(bǔ)償。

      在交互服務(wù)異常、用戶取消異?;蛄鞒滔蚝蠡謴?fù)時(shí),可能需要對(duì)流程參與者進(jìn)行經(jīng)濟(jì)補(bǔ)償,而這可能會(huì)進(jìn)一步導(dǎo)致合作伙伴間的級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償。本文從一個(gè)組織的角度定義其業(yè)務(wù)流程的合作伙伴關(guān)系。

      定義4給定一個(gè)EZFlowEZ,參與EZ的一個(gè)合作伙伴關(guān)系pr是一個(gè)五元組(p,role,IA,Rules,ε)。

      (1)p為一種合作伙伴類型,可為協(xié)作的artifact、單位或個(gè)人,如客戶。

      (2)role為p在業(yè)務(wù)協(xié)作中扮演的角色,可為client或provider。

      (3)IA為EZ與p有交互的活動(dòng)集合。

      (4)Rules為一組規(guī)則集合,定義EZ與p交互中違約異常的經(jīng)濟(jì)補(bǔ)償規(guī)則。

      (5)ε:IA→{SubRules|SubRules?Rules},將活動(dòng)集IA中的每個(gè)活動(dòng)映射到Rules的一個(gè)子集SubRules。若SubRules為空則表示相應(yīng)活動(dòng)沒有定義恢復(fù)規(guī)則。

      只有外部環(huán)境或合作伙伴間才可以交換消息,因此,用ext表示外部環(huán)境,用self表示當(dāng)前流程,定義流程的基于合作伙伴關(guān)系的消息類型如下。

      定義5給定一個(gè)EZFlowEZ的合作伙伴關(guān)系集合PR={(p,role,IA,Rules,ε)},基于PR的消息類型msg是一個(gè)五元組(name,Atts,ps,pr,type)。

      (1)name為唯一的消息名稱;Atts為消息的屬性集。

      (2)ps和pr分別為消息發(fā)送者和接收者,至少其中之一須為self,另一個(gè)可為ext或合作伙伴類型;若兩者均為self,則表示EZ的內(nèi)部消息。

      (3)type為消息類別,可為N、P、E或C。其中,N為正常的交互消息;P為QoS異常消息;E為執(zhí)行異常消息;C為取消異常消息。

      綜合上文,本文綜合考慮了經(jīng)濟(jì)補(bǔ)償恢復(fù)策略和上下文感知的以Artifact為中心的業(yè)務(wù)流程事務(wù)模型EZFlow-fcaTx如下。

      定義6結(jié)合上下文和經(jīng)濟(jì)補(bǔ)償?shù)囊訟rtifact為中心的業(yè)務(wù)流程事務(wù)模型EZFlow-fcaTx是一個(gè)四元組(EZ,Tx,PR,MSG)。

      (1)EZ為一個(gè)EZFlow定義;Tx為EZ的事務(wù)屬性。

      (2)PR為EZ的合作伙伴關(guān)系集合;MSG為PR上的消息類型集合。

      在正常執(zhí)行時(shí),事務(wù)工作流EZFlow-fcaTx的執(zhí)行與EZFlow的執(zhí)行類似,由消息類別為N的消息觸發(fā)流程的執(zhí)行,執(zhí)行中的任務(wù)序列t0t1…tn組成了一個(gè)工作流事務(wù),其中,每個(gè)任務(wù)是一個(gè)保持了ACID屬性的子事務(wù)。若在EZFlow-fcaTx的執(zhí)行過程中,某個(gè)任務(wù)ti的執(zhí)行結(jié)果不滿足該任務(wù)的后置條件,則會(huì)拋出類別為P的消息。當(dāng)工作流引擎接收到消息類別為E、C或P的消息時(shí),表示流程出現(xiàn)了異常,將啟動(dòng)流程恢復(fù)程序。

      3失敗恢復(fù)機(jī)制

      3.1 異常類型判定

      為針對(duì)每一類異常采用不同的恢復(fù)機(jī)制,在異常發(fā)生時(shí),首先需要判斷異常類型,可根據(jù)失敗流程實(shí)例Ii接收到的消息類型msg進(jìn)行判定: ① 若消息類別msg.type為P,則為服務(wù)QoS異常QoSEx;② 若msg.type為C,則為用戶取消異常CancelEx;③ 若msg.type為E,需檢查失敗活動(dòng)是否為交互活動(dòng),若是,則異常類型為交互服務(wù)功能異常IFunEx;否則,為非交互服務(wù)功能異常NIFunEx。異常類型判定算法GetExceptionType簡(jiǎn)要列出如下:

      InputIi: the failed instance, msg: the received

      message type;

      OutputexType: exception type, values: QoSEx,

      CancelEx, IFunEx or NIFunEx;

      1. if msg.type==“P”then

      exType←“QoSEx”; ∥服務(wù)QoS異常

      2. else if msg.type==“C” then

      exType←“CancelEx”; ∥取消異常

      3. else if msg.type==“E” then

      exType← “NIFunEx”; ∥非交互服務(wù)功能異常

      failedTask←GetFailedTast(Ii);

      IsInteractiveTask←CheckInteractives(msg.ps, failedTask,Ii.PR);←CheckInteractives(msg.ps, failedTask,Ii.PR);

      if IsInteractiveTask is true then

      exType←“IFunEx”; ∥交互服務(wù)功能異常

      其中,CheckInteractives函數(shù)檢查failedTask是否為交互任務(wù),若是,返回true;否則,返回false。檢查方法如下: ① 從流程Ii的合作伙伴關(guān)系集Ii.PR中檢索合作伙伴為msg.ps的合作伙伴關(guān)系pr;② 若pr為空,則failedTask為非交互活動(dòng),返回false;否則檢查failedTask是否存在于pr的交互活動(dòng)集pr.IA中,若存在,則failedTask為交互活動(dòng),返回true;否則返回false。

      3.2 一種結(jié)合經(jīng)濟(jì)補(bǔ)償和傳統(tǒng)恢復(fù)技術(shù)的失敗恢復(fù)機(jī)制

      本文針對(duì)每一類異常,給出基于EZFlow-fcaTx的失敗恢復(fù)方法。

      3.2.1用戶取消異?;謴?fù)客戶取消業(yè)務(wù)流程α的實(shí)例Ii時(shí),是否會(huì)導(dǎo)致α的參與者產(chǎn)生經(jīng)濟(jì)損失,取決于協(xié)作雙方的取消異常補(bǔ)償規(guī)則及Ii當(dāng)前的執(zhí)行狀態(tài)。因此,用戶取消Ii的恢復(fù)方法包含以下3個(gè)步驟。

      (1) 進(jìn)行經(jīng)濟(jì)補(bǔ)償(若需要)。檢查流程α的合作伙伴關(guān)系集PR中合作類型為Customer的合作伙伴關(guān)系pr,其規(guī)則集Rules中是否包含規(guī)則類型為cancel的規(guī)則,若有,則按照該規(guī)則的恢復(fù)行為recovery進(jìn)行經(jīng)濟(jì)補(bǔ)償。

      (2) 進(jìn)行級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償(若需要)。先確定Ii已執(zhí)行完成任務(wù)中的交互任務(wù)集,記為IT;然后依據(jù)IT進(jìn)行級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償: 若IT非空,則依次對(duì)IT中的每個(gè)任務(wù),從合作伙伴PR中查到提供該服務(wù)的合作伙伴關(guān)系pr,依據(jù)pr.Rules中類型為cancel的規(guī)則(若有)進(jìn)行經(jīng)濟(jì)補(bǔ)償。

      3.2.2非交互服務(wù)功能異?;謴?fù)只需對(duì)異常任務(wù)tk執(zhí)行基于事務(wù)屬性的恢復(fù)。步驟如下:

      (1) 嘗試向前恢復(fù)流程。檢查tk的事務(wù)恢復(fù)屬性rec,若包含ign,則忽略該異常;若包含retr,則重復(fù)調(diào)用tk,直到tk能夠成功完成;若包含subs,則用當(dāng)前流程數(shù)據(jù)評(píng)估替代任務(wù)集Sub中任務(wù)的條件,選擇條件為真的替代任務(wù)重新執(zhí)行。若rec不包含上述向前恢復(fù)屬性,則執(zhí)行下一步。

      (2) 執(zhí)行流程的向后恢復(fù)。進(jìn)行級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償(若需要),與用戶取消異?;謴?fù)的步驟(2)類似;然后從任務(wù)tk-1開始向后恢復(fù)。

      3.2.3交互服務(wù)功能異?;謴?fù)此類異??赡軙?huì)導(dǎo)致合作伙伴產(chǎn)生經(jīng)濟(jì)損失,因此恢復(fù)方法包含兩步: 先進(jìn)行經(jīng)濟(jì)補(bǔ)償(若需要),再進(jìn)行基于事務(wù)恢復(fù)屬性的恢復(fù)。

      遭遇異常的交互服務(wù)tk的經(jīng)濟(jì)補(bǔ)償方法與用戶取消異常恢復(fù)的步驟(1)類似,只是恢復(fù)規(guī)則為合作伙伴關(guān)系中規(guī)則映射函數(shù)ε所定義的tk的恢復(fù)規(guī)則。若流程需要向后恢復(fù),則可能涉及的級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償,與用戶取消異?;謴?fù)的步驟(2)類似。

      3.2.4服務(wù)QoS異?;謴?fù)此類異常在與合作伙伴進(jìn)行交互時(shí)發(fā)生,可通過監(jiān)控交互服務(wù)的執(zhí)行結(jié)果來發(fā)現(xiàn)這類異常。

      在流程實(shí)例Ii的執(zhí)行過程中,當(dāng)交互任務(wù)tk執(zhí)行完成時(shí),引擎取出其合作伙伴關(guān)系PR中與tk相關(guān)聯(lián)的類型為post的規(guī)則集postRules。若postRules為空,表示該服務(wù)沒有QoS限定;否則,依次評(píng)估postRules中的每條規(guī)則;若規(guī)則的條件滿足,則觸發(fā)規(guī)則所定義的恢復(fù)行為。若流程需要向后恢復(fù),則可能涉及的級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償,與用戶取消異?;謴?fù)的步驟(2)類似。

      4案例研究

      本文通過對(duì)流程實(shí)例(見圖1)進(jìn)行異?;謴?fù)來驗(yàn)證方法的可行性。假設(shè)廠商流程Order的部分事務(wù)屬性Tx、合作伙伴關(guān)系集合PR分別如表1、2所示(表1中的上標(biāo)“-1”表示相應(yīng)任務(wù)的補(bǔ)償任務(wù))。

      表2中的規(guī)則定義如下:

      (1) Customer

      (“CusCancel”,“cancel”,“Customer”,if

      Order.state==“RRecv”then FinComp(Order.customer,self,Order.POPayableAmt*0.02))

      表1 訂單處理流程的事務(wù)恢復(fù)屬性Tab.1 Transactional recovery attributes of process Order

      表2 訂單處理流程的合作伙伴關(guān)系集合Tab.2 Partnerships of process Order

      (2) Vendor

      ① (“VendDelay”, “post”, if ((Order.PORecvDate>Order.POPlanRecvDate)&&(Order.PORecvDate≤(Order.POPlanRecvDate+2))then FinComp(Order.vendor,self,Order.

      totalAmt*0.001));

      ② (“VendException”,“exception”, if exception.Date>(Order.POIssueDate+10)then FinComp(Order.vendor,self,Order.POPayableAmt*0.005))

      ③ (“ManufCancel”,“cancel”,“self”,if Order.state==“RRecv”then FinComp(self,Order.vendor,Order.POPayableAmt*0.02))

      下面通過實(shí)例分別討論每類異常的恢復(fù)。

      實(shí)例1客戶取消訂單異常??蛻粝聠我欢螘r(shí)間后,因一些原因(如上游客戶取消訂單)取消訂單,此時(shí)廠商的訂單已到達(dá)狀態(tài)RRecv,客戶取消訂單后,廠商只能積壓庫存或退貨給供應(yīng)商,勢(shì)必造成經(jīng)濟(jì)損失。異常的恢復(fù)過程如下。

      (1) 查找合作類型為Customer的合作伙伴關(guān)系規(guī)則集中滿足條件

      type==“cancel”&&faultP==“Customer”

      的規(guī)則,得到CusCancel,據(jù)此客戶需賠償廠商已采購金額的2%。

      (2) Order的已執(zhí)行任務(wù)序列為{RO,PPO},已與供應(yīng)商進(jìn)行了交互,因此查找合作類型為Vendor的合作伙伴關(guān)系規(guī)則集中滿足條件

      type==“cancel”&&faultP==“self”

      的規(guī)則,得到ManufCancel,據(jù)此廠商需賠償供應(yīng)商采購金額的2%。

      (3) 用補(bǔ)償序列{PPO-1,RO-1}向后恢復(fù)訂單流程Order。

      實(shí)例2非交互服務(wù)AP功能異常。假設(shè)生產(chǎn)服務(wù)AP拋出了異常(如生產(chǎn)線故障),則進(jìn)行基于事務(wù)恢復(fù)屬性的恢復(fù)。由表1可知,AP的恢復(fù)屬性為subs&comp,因而可以用替代服務(wù)LineB進(jìn)行向前恢復(fù)。

      實(shí)例3交互服務(wù)PPO功能異常。

      場(chǎng)景1假設(shè)采購服務(wù)PPO在采購單核發(fā)后8d內(nèi)遭遇了異常(如斷貨),距離廠商計(jì)劃收貨日12d。異常的恢復(fù)過程如下。

      (1) 查找合作類型為Vendor的合作伙伴關(guān)系中任務(wù)PPO的規(guī)則集中類型為exception的規(guī)則,得到VendException,該規(guī)則條件為假,無需進(jìn)行經(jīng)濟(jì)補(bǔ)償。

      (2) 根據(jù)PPO的事務(wù)恢復(fù)屬性恢復(fù)異常,PPO的事務(wù)恢復(fù)屬性為subs&comp,替代服務(wù)VendorB的條件為真,可使用該替代服務(wù)進(jìn)行向前恢復(fù)。

      場(chǎng)景2若PPO在采購單核發(fā)后15d內(nèi)遭遇異常,距離廠商計(jì)劃收貨日1d,則上述第1步的規(guī)則VendException條件為真,供應(yīng)商需補(bǔ)償廠商采購金額的0.5%;第2步替代服務(wù)的條件為假,PPO不能實(shí)現(xiàn)向前恢復(fù),因而啟動(dòng)向后恢復(fù)。此時(shí),根據(jù)流程Order的已執(zhí)行任務(wù)序列可知,不存在級(jí)聯(lián)經(jīng)濟(jì)恢復(fù),只需用補(bǔ)償序列{RO-1}向后恢復(fù)訂單流程Order即可。

      由此可見,在有些情況下,交互服務(wù)異常無需進(jìn)行經(jīng)濟(jì)補(bǔ)償也可向前恢復(fù)(場(chǎng)景1),而有些情況下,在進(jìn)行了經(jīng)濟(jì)補(bǔ)償后也只能向后恢復(fù)(場(chǎng)景2)。

      實(shí)例4服務(wù)PPO的QoS異?;謴?fù)。假設(shè)采購服務(wù)PPO逾期1d完成,即供應(yīng)商晚1d送貨,根據(jù)映射到PPO的類型為post的規(guī)則VendDelay,供應(yīng)商需付給廠商訂單金額的0.1%作為經(jīng)濟(jì)補(bǔ)償,之后流程可以繼續(xù)往下執(zhí)行。這里,經(jīng)濟(jì)補(bǔ)償成功地實(shí)現(xiàn)了流程異常的向前恢復(fù)。

      5結(jié)語

      針對(duì)現(xiàn)實(shí)商業(yè)活動(dòng),協(xié)作商家希望結(jié)合經(jīng)濟(jì)補(bǔ)償來恢復(fù)失敗流程的需要,本文提出了一種結(jié)合經(jīng)濟(jì)補(bǔ)償和上下文感知的以Artifact為中心的業(yè)務(wù)流程事務(wù)模型,給出了異常類型的判定方法和針對(duì)每類異常的不同的恢復(fù)機(jī)制,可通過條件替代服務(wù)、經(jīng)濟(jì)補(bǔ)償?shù)姆绞奖M可能地實(shí)現(xiàn)異常的向前恢復(fù),并在流程的向后恢復(fù)過程中,考慮合作伙伴間的級(jí)聯(lián)經(jīng)濟(jì)補(bǔ)償,從而降低其他參與者的經(jīng)濟(jì)損失,并用案例研究證實(shí)了該方法的可行性。

      參考文獻(xiàn):

      [1]Spanoudakis G,Zisman A,Kozlenkov A.A service discovery framework for service centric systems[C]∥IEEE International Conference on Services Computing.[S.L.]:IEEE,2005: 251-259.

      [2]Colombo M,Nitto E D,Mauri M.SCENE: A service composition execution environment supporting dynamic changes disciplined through rules[J].Lecture Notes in Computer,Science,2006,4294: 191-202.

      [3]Baresi L,Guinea S,Pasquale L.Self-healing BPEL processes with Dynamo and the JBoss rule engine[C]∥International Workshop on Engineering of Software Services for Pervasive Environments in Conjunction with Esec/fse Joint Meeting.[S.L.]: ACM,2007: 11-20.

      [4]Bucchiarone A,Pistore M,Raik H,et al.Adaptation of service-based business processes by context-aware replanning[C]∥Fifth IEEE International Conference on Service-oriented Computing & Applications.[S.L.]: IEEE,2011: 1-8.

      [5]Bucchiarone A,Marconi A,Pistore M,et al.Dynamic adaptation of fragment-based and context-aware business processes[C]∥2012 IEEE 19th International Conference on Web Services (ICWS).[S.L.]: IEEE,2012: 33-41.

      [6]Bucchiarone A,Marconi A,Mezzina C A,et al.On-the-fly adaptation of dynamic service-based systems: Incrementality,reduction and reuse[J].Lecture Notes in Computer Science,2013,8274: 1146-161.

      [7]Cao Jiuxin,Luo Junzhou,Zhang Song,et al.A context-aware recovery mechanism for web services business transaction [C]∥IEEE Ninth International Conference on Services Computing.[S.L.]: IEEE,2012: 352-359.

      [8]Rinderle S,Reichert M.Data-driven process control and exception handling in process management systems[J].Lecture Notes in Computer Science ,2006, 4001: 273-287.

      [9]Ferreira J E,Braghetto K R,Takai O K,et al.Transactional recovery support for robust exception handling in business process services[J].IEEE International Conference on Web Services.IEEE Computer Society,2012: 303-310.

      [10]Garcia M O.,Braghetto K R,Pu C,et al.An implementation of a transaction model for business process systems [J].Journal of Management Information Systems,2012: 271-286.

      [11]Qin Haihuan,Kang Guosheng,Guo Lipeng.MaxInsTx: A best-effort failure recovery approach for artifact-centric business processes[J].Lecture Notes in Computer Science,2013,8274: 558-566.

      [12]Yang Zheng,Yao Jinhui,Chen Shiping,et al.A financial compensation based transaction management model for service-oriented business collaborations[C]∥IEEE International Conference on Web Services.[S.L.]: IEEE,2012: 423-430.

      [13]Carroll N,Haque R,Whelan E,et al.Modelling business transactions across service supply chain networks[M]∥Information Systems Development.New York: Springer,2013: 471-484.

      [14]Xu Wei,Su Jianwen,Yan Zhimin,et al.An artifact-centric approach to dynamic modification of workflow execution[J].Lecture Notes in Computer Science,2011,7044: 256-273.

      [15]Liu Guohua,Liu Xi,Qin Haihuan,et al.Automated realization of business workflow specification[J].Lecture Notes in Computer Science,2010,6275: 96-108. G,Zisman A,Kozlenkov A.A service discovery framework for service centric systems[C]∥IEEE International Conference on Services Computing.[S.L.]:IEEE,2005: 251-259.

      [2]Colombo M,Nitto E D,Mauri M.SCENE: A service composition execution environment supporting dynamic changes disciplined through rules[J].Lecture Notes in Computer,Science,2006,4294: 191-202.

      [3]Baresi L,Guinea S,Pasquale L.Self-healing BPEL processes with Dynamo and the JBoss rule engine[C]∥International Workshop on Engineering of Software Services for Pervasive Environments in Conjunction with Esec/fse Joint Meeting.[S.L.]: ACM,2007: 11-20.

      [4]Bucchiarone A,Pistore M,Raik H,et al.Adaptation of service-based business processes by context-aware replanning[C]∥Fifth IEEE International Conference on Service-oriented Computing & Applications.[S.L.]: IEEE,2011: 1-8.

      [5]Bucchiarone A,Marconi A,Pistore M,et al.Dynamic adaptation of fragment-based and context-aware business processes[C]∥2012 IEEE 19th International Conference on Web Services (ICWS).[S.L.]: IEEE,2012: 33-41.

      [6]Bucchiarone A,Marconi A,Mezzina C A,et al.On-the-fly adaptation of dynamic service-based systems: Incrementality,reduction and reuse[J].Lecture Notes in Computer Science,2013,8274: 1146-161.

      [7]Cao Jiuxin,Luo Junzhou,Zhang Song,et al.A context-aware recovery mechanism for web services business transaction [C]∥IEEE Ninth International Conference on Services Computing.[S.L.]: IEEE,2012: 352-359.

      [8]Rinderle S,Reichert M.Data-driven process control and exception handling in process management systems[J].Lecture Notes in Computer Science ,2006, 4001: 273-287.

      [9]Ferreira J E,Braghetto K R,Takai O K,et al.Transactional recovery support for robust exception handling in business process services[J].IEEE International Conference on Web Services.IEEE Computer Society,2012: 303-310.

      [10]Garcia M O.,Braghetto K R,Pu C,et al.An implementation of a transaction model for business process systems [J].Journal of Management Information Systems,2012: 271-286.

      [11]Qin Haihuan,Kang Guosheng,Guo Lipeng.MaxInsTx: A best-effort failure recovery approach for artifact-centric business processes[J].Lecture Notes in Computer Science,2013,8274: 558-566.

      [12]Yang Zheng,Yao Jinhui,Chen Shiping,et al.A financial compensation based transaction management model for service-oriented business collaborations[C]∥IEEE International Conference on Web Services.[S.L.]: IEEE,2012: 423-430.

      [13]Carroll N,Haque R,Whelan E,et al.Modelling business transactions across service supply chain networks[M]∥Information Systems Development.New York: Springer,2013: 471-484.

      [14]Xu Wei,Su Jianwen,Yan Zhimin,et al.An artifact-centric approach to dynamic modification of workflow execution[J].Lecture Notes in Computer Science,2011,7044: 256-273.

      [15]Liu Guohua,Liu Xi,Qin Haihuan,et al.Automated realization of business workflow specification[J].Lecture Notes in Computer Science,2010,6275: 96-108.

      A Failure Recovery Approach for Artifact-Centric Business ProcessesConsidering Financial Compensation

      QINHaihuan

      (School of Electronic Information Engineering, Shanghai Dianji University, Shanghai 200240, China)

      Abstract:Failure recovery is a crucial issue for business process management. In real-life commercial activities, collaborative participants hope to recover a failed process by combining technical methods and financial compensation. To address such requirements, this paper proposes a failure recovery approach considering financial compensation and context. A transactional artifact-centric business process model is established with (conditional) alternative services and financial compensation rules considered. A recovery mechanism is developed, which combines financial compensation and conditional substitution. The proposed method allows forward recover of the failed process as far as possible, and financially compensates the partners when backward recovery is conducted. Feasibility of the approach is verified in a case study.

      Key words:failure recovery; financial compensation; Artifact-centric business processes

      文章編號(hào)2095-0020(2015)02-0110-08

      作者簡(jiǎn)介:韓超群(1979-),女,講師,博士,主要研究方向?yàn)槲锪髋c供應(yīng)鏈管理,E-mail: hanchaoqun@gmail.com

      基金項(xiàng)目:國家自然科學(xué)基金資助項(xiàng)目(70672039);湖北省軟科學(xué)研究專項(xiàng)資助項(xiàng)目(2010DZ006)

      收稿日期:2015-03-26

      中圖分類號(hào):TP 39;F 273

      文獻(xiàn)標(biāo)志碼:A

      猜你喜歡
      業(yè)務(wù)流程事務(wù)合作伙伴
      “事物”與“事務(wù)”
      基于分布式事務(wù)的門架數(shù)據(jù)處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      分不開的合作伙伴
      金橋(2022年8期)2022-08-24 01:33:38
      RPA機(jī)器人助業(yè)務(wù)流程智能化
      河湖事務(wù)
      聚焦IBIS全球合作伙伴——Carstar及Mitchell公司
      美印合作伙伴
      上海包裝(2019年6期)2020-01-14 07:56:50
      STK業(yè)務(wù)流程優(yōu)化的探究
      企業(yè)財(cái)務(wù)管理、業(yè)務(wù)流程管理中整合ERP之探索
      CHIP全球合作伙伴
      CHIP新電腦(2017年6期)2017-06-19 07:44:03
      繁峙县| 彭山县| 新野县| 泰宁县| 杨浦区| 连江县| 喀喇| 夏邑县| 民权县| 沂水县| 永胜县| 鄯善县| 东丽区| 白山市| 木兰县| 昆山市| 句容市| 东方市| 永州市| 惠来县| 大渡口区| 汉源县| 夹江县| 河池市| 平江县| 齐齐哈尔市| 隆安县| 东至县| 宁城县| 玛纳斯县| 永昌县| 博罗县| 余姚市| 桂阳县| 甘德县| 来凤县| 长春市| 改则县| 永春县| 老河口市| 三都|