向吉祥,莫 啟,2+,謝仲文,汪煜祺,王佳能
(1.云南大學(xué) 軟件學(xué)院,云南 昆明 650091;2.云南大學(xué) 云南省軟件工程重點(diǎn)實(shí)驗(yàn)室,云南 昆明 650091;3.泰山學(xué)院 智慧文旅產(chǎn)業(yè)學(xué)院,山東 泰安 271000)
隨著跨企業(yè)合作模式[1]的出現(xiàn),現(xiàn)代商業(yè)環(huán)境下[2-3]的企業(yè)流程通常需要與其合作企業(yè)的流程協(xié)作交互,以完成特定的業(yè)務(wù)功能,該過(guò)程在學(xué)術(shù)界和工業(yè)界被稱為協(xié)同業(yè)務(wù)過(guò)程[4]。
協(xié)同業(yè)務(wù)過(guò)程廣泛應(yīng)用于各種行業(yè),如醫(yī)療[5]、電子商務(wù)[6]、物聯(lián)網(wǎng)[7]等。作為一種關(guān)鍵業(yè)務(wù)協(xié)同使能技術(shù)(enabling technique),協(xié)同業(yè)務(wù)過(guò)程在挖掘組織信息系統(tǒng)潛能、優(yōu)化組織流程運(yùn)作和降低組織流程運(yùn)營(yíng)成本等方面發(fā)揮著重要的作用,然而與傳統(tǒng)組織內(nèi)的業(yè)務(wù)過(guò)程相比,協(xié)同業(yè)務(wù)過(guò)程通常涉及多個(gè)參與組織,不同部門之間有不同類型的協(xié)作模式,而且各參與者跨越組織邊界,任務(wù)間存在復(fù)雜的通信、交互和協(xié)作關(guān)系,增大了建模和分析的困難。同時(shí),由于現(xiàn)代軟件系統(tǒng)涉及太多個(gè)人和敏感用戶信息,隱私保護(hù)問(wèn)題越發(fā)重要[8]。為確保正確實(shí)施各參與組織的任務(wù)并保護(hù)用戶隱私信息,有效合理地對(duì)協(xié)同業(yè)務(wù)過(guò)程進(jìn)行形式化建模和分析成為該領(lǐng)域的研究熱點(diǎn)[9]。
目前,國(guó)內(nèi)外研究者圍繞協(xié)同業(yè)務(wù)過(guò)程提出多種建模方法。一般來(lái)說(shuō),業(yè)務(wù)過(guò)程協(xié)同建模通常需要借助某種形式化方法,主要有基于Petri網(wǎng)[10]和基于進(jìn)程代數(shù)[11]的方法。業(yè)務(wù)過(guò)程通常由業(yè)務(wù)流程建模標(biāo)注(Business Process Modeling Notation, BPMN)描述,現(xiàn)已提出幾種方法將其轉(zhuǎn)換為Petri網(wǎng)和過(guò)程代數(shù)描述的過(guò)程模型[12-13]?,F(xiàn)有工作中出現(xiàn)的大多數(shù)隱私違規(guī)行為和個(gè)人數(shù)據(jù)泄露等情況,均可追溯到在早期設(shè)計(jì)階段缺乏有效的捕獲方法和建模隱私要求,例如在業(yè)務(wù)過(guò)程建模期間未考慮隱私要求[14]。鑒于此,學(xué)者們提出改進(jìn)方法,這些方法可以歸納為自頂向下建模方法和自底向上建模方法兩類,前者的基本思想是利用映射規(guī)則從組織協(xié)同的全局契約中生成其私有過(guò)程[15-16],后者是利用接口直接組合參與組織的私有流程,從而構(gòu)建協(xié)同業(yè)務(wù)過(guò)程模型[17]。 然而在實(shí)際建模中,自頂向下建模方法無(wú)法獲悉事先定義的完整協(xié)作場(chǎng)景和流程細(xì)節(jié),具有一定局限性,降低了建模方法的普適性;同時(shí),通過(guò)事先給出的全局契約生成私有過(guò)程,會(huì)在一定程度上限制私有過(guò)程建模的靈活性。
因此,本文采用自底向上的建模方法,然而該類建模方法中的大多數(shù)方法所建模型為全局模型[5,10],即將多個(gè)參與組織的私有過(guò)程直接組合得到協(xié)同業(yè)務(wù)過(guò)程,直接暴露了私有過(guò)程的內(nèi)部流程信息,其隱私性較差。另外,有些建模方法提出一些抽取規(guī)則集[16-18],將私有過(guò)程抽象為公共過(guò)程再構(gòu)建協(xié)同業(yè)務(wù)過(guò)程,因?yàn)槌槿∫?guī)則有一定局限性,所以隱私保護(hù)不足。同時(shí),這些方法在抽取出公共過(guò)程后直接組合,未驗(yàn)證所得模型與原模型的正確性(本文用弱合理性[16]進(jìn)行定義)是否一致。
對(duì)此,本文提出一種基于視圖面向隱私保護(hù)的協(xié)同業(yè)務(wù)過(guò)程建模方法,該方法在確保前后建模正確性一致的基礎(chǔ)上,隱藏所有參與組織中內(nèi)部流程的細(xì)節(jié),能夠有效避免暴露組織內(nèi)部流程細(xì)節(jié)。本文的主要貢獻(xiàn)如下:
(1)提出將私有視圖(private view)的控制流映射為5種情形的過(guò)程樹(shù)。
(2)基于過(guò)程樹(shù)提出精簡(jiǎn)規(guī)則集,進(jìn)而提出將私有視圖遷移至公共視圖(public views)的方法。
(3)從理論上證明遷移后所得模型與原模型的正確性一致。
(4)通過(guò)實(shí)例證明本文方法能夠有效保護(hù)隱私。
本文主要關(guān)注自底向上建模方法,旨在保證所建協(xié)同業(yè)務(wù)過(guò)程模型正確的前提下提高隱私保護(hù)性。目前在這類建模方法中,大多數(shù)方法構(gòu)建的是全局模型,該方法雖然比較直觀,但是由于所建立的全局模型與局部模型(私有視圖)通常為緊耦合,導(dǎo)致協(xié)同業(yè)務(wù)過(guò)程的獨(dú)立性和隱私性較差。因此,本文建模方法在全局模型的基礎(chǔ)上,默認(rèn)由各參與組織私有視圖組合而成的全局模型可以正確執(zhí)行,并采用自底向上和多視角相結(jié)合的原則。方法總體思想如圖1所示。
本文方法分為建模階段和分析階段:
(1)建模階段定義私有視圖,將私有視圖的控制流轉(zhuǎn)換為過(guò)程樹(shù),基于過(guò)程樹(shù)提出對(duì)應(yīng)的精簡(jiǎn)規(guī)則,利用精簡(jiǎn)后的過(guò)程樹(shù)將私有視圖遷移為各自的公共視圖,采用庫(kù)所變遷熔合技術(shù)將各參與組合的私有視圖與其對(duì)應(yīng)的公共視圖同步通信組合,各個(gè)公共視圖之間則采用異步通信組合,最后形成完整的協(xié)同業(yè)務(wù)過(guò)程模型。
(2)分析階段對(duì)得到的協(xié)同業(yè)務(wù)過(guò)程模型進(jìn)行分析。利用ACP[19](algebra of communicating processes)進(jìn)程代數(shù)對(duì)遷移過(guò)程進(jìn)行理論分析,確保遷移后所構(gòu)建的模型與原模型的正確性一致,并通過(guò)實(shí)例驗(yàn)證該方法是否能夠保護(hù)隱私。
由于Petri網(wǎng)具有嚴(yán)格的形式化語(yǔ)義及成熟的分析技術(shù),本文采用Petri網(wǎng)對(duì)參與協(xié)作的組織內(nèi)部流程進(jìn)行建模和分析,并將其并發(fā)組合為協(xié)同業(yè)務(wù)過(guò)程。下面給出相關(guān)形式定義:
定義1Petri網(wǎng)。Petri網(wǎng)是一個(gè)五元組PN=(P,T;F,i,o),其中:P為有限庫(kù)所集合;T為有限變遷集合;F?(P×T)∪(T×P)表示流關(guān)系;i,o∈P,分別表示開(kāi)始庫(kù)所和結(jié)束庫(kù)所,滿足·i=?,o·=?。
私有視圖是對(duì)參與組織內(nèi)部業(yè)務(wù)邏輯及與外部交互過(guò)程的描述,其本質(zhì)是一個(gè)參與組織的可執(zhí)行流程。私有視圖除外部交互活動(dòng)以外的內(nèi)部活動(dòng)執(zhí)行順序?qū)ν獠豢梢?jiàn)。
定義2私有視圖。私有視圖描述一個(gè)參與組織內(nèi)部的活動(dòng)執(zhí)行次序以及外部其他組織的交互過(guò)程[16,20],將其形式定義為一個(gè)八元組InV=(PI,PC,T;F,i,o,Ms,Me),其中:PI為內(nèi)部庫(kù)所的有限集合;PC=Ps∪Pr為通信庫(kù)所的有限集合,Ps為發(fā)送類型的消息庫(kù)所集合,Pr為接收類型的消息庫(kù)所集合,滿足Ps∩Pr=?;T=TI∪TC為變遷的有限集合,TI為瞬時(shí)變遷的有限集合,TC為通信變遷的有限集合;F為流關(guān)系,F(xiàn)?(PI×T)∪(T×PI)∪(PC×T)∪(T×PC);i,o∈PI,分別為開(kāi)始庫(kù)所和結(jié)束庫(kù)所,滿足·i=?,o·=?;Ms是初始狀態(tài),滿足?p∈PI,p≠i;Ms(p)=0且Ms(i)=1;Me是終止?fàn)顟B(tài),滿足?p∈PI,p≠o;Me(p)=0且Me(o)=1。
定義2中的每個(gè)變遷表示參與組織內(nèi)部的一個(gè)活動(dòng),流關(guān)系表示這些活動(dòng)的執(zhí)行次序。如圖2所示,空心圓圈表示內(nèi)部庫(kù)所,實(shí)心圓圈表示通信庫(kù)所,其中:p6為發(fā)送類型的通信庫(kù)所,p6∈Ps;p7,p8為接收類型的通信庫(kù)所,p7,p8∈Pr;白色矩形表示瞬時(shí)變遷,黑色矩形表示通信變遷。私有視圖的托肯分布情況M表示組織的運(yùn)行狀態(tài),運(yùn)行狀態(tài)隨變遷的使能而改變。
定義3點(diǎn)火規(guī)則。變遷t∈T,若t在狀態(tài)M下是使能的,則記為M[t>;若私有視圖模型在狀態(tài)M下通過(guò)執(zhí)行變遷t到達(dá)狀態(tài)M′,則記為M[t>M′。所有從狀態(tài)M可達(dá)的狀態(tài)集記為R(M)={M′|?σ?T,M[σ>M′},其中σ為變遷序列。特別地,記R(Ms)為從初始狀態(tài)Ms可達(dá)的所有狀態(tài)集合。
控制流表示私有視圖內(nèi)部對(duì)外不可見(jiàn)的執(zhí)行關(guān)系,通過(guò)移除私有視圖與外部交互的通信庫(kù)所PC及其相關(guān)的流關(guān)系可以得到控制流。
定義4控制流??刂屏餍问交x為一個(gè)六元組Flow=(PI,T;F,i,o,Ms),其中:PI=InV.PI;T=InV.T;F=InV.F-(PC×T)∪(T×PC);i,o∈PI,分別為開(kāi)始庫(kù)所和結(jié)束庫(kù)所,滿足·i=?,o·=?;Ms=InV.Ms。
協(xié)同業(yè)務(wù)過(guò)程是描述多個(gè)參與組織之間交互、協(xié)作完成某一業(yè)務(wù)目標(biāo)的模型,采用庫(kù)所熔合技術(shù)[10]將各組織的私有視圖進(jìn)行組合可以得到協(xié)同業(yè)務(wù)過(guò)程模型,與傳統(tǒng)方法的全局模型相似,因此本文默認(rèn)由私有視圖組合的協(xié)同業(yè)務(wù)過(guò)程模型是正確的,然后采用弱合理性[21]定義協(xié)同業(yè)務(wù)過(guò)程的正確性。
定義5協(xié)同業(yè)務(wù)過(guò)程。設(shè)V1,…,Vn為一組私有視圖,并發(fā)組合得到N=V1⊕V2⊕…⊕Vn,將其定義為七元組N=(P,T;F,I,O,Ms,Me),其中:P=(V1.PI∪V2.PI∪…∪Vn.PI)∪(V1.PC∪V2.PC∪…∪Vn.PC);T=V1.T∪V2.T∪…∪Vn.T;F=V1.F∪V2.F∪…∪Vn.F;I={V1.i,V2.i,…,Vn.i};O={V1.o,V2.o,…,Vn.o};Ms={V1.Ms,V2.Ms,…,Vn.Ms};Me={V1.Me,V2.Me,…,Vn.Me}。
定義6弱合理性。給定一個(gè)協(xié)同業(yè)務(wù)過(guò)程N(yùn)=(P,T;F,I,O,Ms,Me),若N是弱合理的,則對(duì)于從Ms可達(dá)的任意狀態(tài)M,均存在序列σ,使得M[σ>Me。
從定義6可見(jiàn),弱合理性要求該協(xié)同業(yè)務(wù)過(guò)程從初始狀態(tài)可達(dá)的任意狀態(tài)都能到達(dá)終止?fàn)顟B(tài)。
由于業(yè)務(wù)流程執(zhí)行語(yǔ)言(Business Process Execution Language, BPEL)表現(xiàn)為結(jié)構(gòu)化,即順序、并發(fā)、選擇和循環(huán)結(jié)構(gòu),當(dāng)前多數(shù)研究采用BPEL描述私有流程。雖然實(shí)際建模中的私有過(guò)程通常為非結(jié)構(gòu)化流程,但是已有研究可將非結(jié)構(gòu)化流程轉(zhuǎn)換為結(jié)構(gòu)化流程[22-23],因此本文僅討論結(jié)構(gòu)化流程。目前已有多種方法將結(jié)構(gòu)化控制流轉(zhuǎn)換為樹(shù)結(jié)構(gòu)[24-25],樹(shù)結(jié)構(gòu)描述私有流程,其結(jié)構(gòu)層次更清晰,而且根據(jù)樹(shù)結(jié)構(gòu)提出的精簡(jiǎn)規(guī)則更靈活。
因此,對(duì)應(yīng)4種結(jié)構(gòu),將順序、并發(fā)、選擇和循環(huán)結(jié)構(gòu)映射為過(guò)程樹(shù)的相關(guān)節(jié)點(diǎn),即SEQ,AND,XOR,LOOP。
定義7過(guò)程樹(shù)。過(guò)程樹(shù)可形式定義為一個(gè)三元組PT=(N,fpar,fchi),其中:N為過(guò)程樹(shù)的節(jié)點(diǎn)集合,?n∈N,n=(mark,type),mark為節(jié)點(diǎn)標(biāo)識(shí),type={TRS,SEQ,AND,XOR,LOOP}為節(jié)點(diǎn)類型,TRS=TRSI∪TRSC,TRSI為瞬時(shí)變遷節(jié)點(diǎn),TRSC為通信變遷節(jié)點(diǎn);fpar:N→N表示當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn);fchi:N→2N表示當(dāng)前節(jié)點(diǎn)的孩子節(jié)點(diǎn)。
根據(jù)4種結(jié)構(gòu)節(jié)點(diǎn)不同的組合關(guān)系,有5種情形樹(shù)。
定義8基本情形樹(shù)。如圖3所示,將基本情形樹(shù)形式定義為PT=(N1,fpar,fchi),其中:N1={root,t1,t2,…,tn,tn+1,…,tm},root.type≠TRS,t1.type≠TRS,t2.type=…=tn.type=TRSI,{tk.type≠TRSI|k∈[n+1,m]};fpar(t1)=fpar(tn+1)=…=fpar(tm)=root,fpar(t2)=…=fpar(tn)=t1。
定義9順序情形樹(shù)。如圖4所示,將順序情形樹(shù)形式定義為PT=(N2,fpar,fchi),其中:N2={root,t1,…,ti-1,ti,ti+1,…,tm},root.type=SEQ,{tk.type≠TRSI|k∈[1,i-1]∪[i+1,m]},ti.type=TRSI;fpar(t1)=…=fpar(ti-1)=fpar(ti)=fpar(ti+1)=…=fpar(tm)=root。
定義10并發(fā)情形樹(shù)。如圖5所示,將并發(fā)情形樹(shù)形式定義為PT=(N3,fpar,fchi),其中:N3={root,t1,…,tn,tn+1,…,tm},root.type=AND,t1.type=…=tn.type=TRSI,{tk.type≠TRSI}|k∈[n+1,m]};fpar(t1)=…=fpar(tn)=fpar(tn+1)=…=fpar(tm)=root。
定義11選擇情形樹(shù)。如圖6所示,將選擇情形樹(shù)形式定義為PT=(N4,fpar,fchi),其中:N4={root,t1,…,tn,tn+1,…,tm},root.type=XOR,t1.type=…=tn.type=TRSI,{tk.type≠TRSI|k∈[n+1,m]};fpar(t1)=…=fpar(tn)=fpar(tn+1)=…=fpar(tm)=root。
定義12循環(huán)情形樹(shù)。如圖7所示,將循環(huán)情形樹(shù)形式定義為PT=(N5,fpar,fchi),其中:N5={root,t,t1,…,ti-1,ti,ti+1,…,tm},root.type≠TRS,ti.type=LOOP,{tk.type≠TRSI|k∈[1,i-1]∪[i+1,m]},t.type=TRSI;fpar(t1)=…=fpar(ti-1)=fpar(ti)=fpar(ti+1)=…=fpar(tm)=root,fpar(t)=ti。
本章基于5種情形樹(shù)提出其各自的精簡(jiǎn)規(guī)則并給出理論證明。
協(xié)同業(yè)務(wù)過(guò)程中隱私保護(hù)的主要方式是隱藏不需要與外部交互的內(nèi)部流程細(xì)節(jié),因此在精簡(jiǎn)規(guī)則中只針對(duì)瞬時(shí)變遷進(jìn)行精簡(jiǎn),保留與外部交互的通信變遷。同時(shí)由于默認(rèn)私有視圖正確,精簡(jiǎn)規(guī)則只需保證前后軌跡等價(jià),即可保證前后執(zhí)行情況一致。因此本文利用進(jìn)程代數(shù)ACP從理論上證明精簡(jiǎn)規(guī)則滿足分支互模擬理論[26]。
規(guī)則1設(shè)一個(gè)過(guò)程樹(shù)PT=(N,fpar,fchi),PT是一個(gè)基本情形樹(shù),精簡(jiǎn)后得到PT′=(N′,fpar,fchi),如圖8所示,其中:N′={root,t,tn+1,…,tm},t.type=TRSI,{tk.type≠TRSI|k∈[n+1,m]};fpar(t)=fpar(tn+1)=fpar(tm)=root。
規(guī)則2設(shè)一個(gè)過(guò)程樹(shù)PT=(N,fpar,fchi),PT是一個(gè)順序情形樹(shù),精簡(jiǎn)后得到PT′=(N′,fpar,fchi),如圖9所示,其中:N′={root,t1,…,ti-1,ti+1,…,tm},root.type=SEQ,{tk.type≠TRSI|k∈[1,i-1]∪[i+1,m]};fpar(t1)=…=fpar(ti-1)=fpar(ti+1)=…=fpar(tm)=root。
規(guī)則3設(shè)一個(gè)過(guò)程樹(shù)PT=(N,fpar,fchi),PT是一個(gè)并發(fā)情形樹(shù),精簡(jiǎn)后得到PT′=(N′,fpar,fchi),如圖10所示,其中:N′={root,tn+1,…,tm},root.type=AND,{tk.type≠TRSI|k∈[n+1,m]};fpar(tn+1)=…=fpar(tm)=root。
規(guī)則4設(shè)一個(gè)過(guò)程樹(shù)PT=(N,fpar,fchi),PT是一個(gè)選擇情形樹(shù),精簡(jiǎn)后得到PT′=(N′,fpar,fchi),如圖11所示,其中:N′={root,t,tn+1,…,tm},root.type=XOR,t.type=TRSI,{tk.type≠TRSI|k∈[n+1,m]};fpar(t)=fpar(tn+1)=…=fpar(tm)=root。
規(guī)則5設(shè)一個(gè)過(guò)程樹(shù)PT=(N,fpar,fchi),PT是一個(gè)循環(huán)情形樹(shù),精簡(jiǎn)后得到PT′=(N′,fpar,fchi),如圖12所示,其中:N′={root,t1,…,ti-1,ti+1,…,tm},root.type≠TRSI,{tk.type≠TRSI|k∈[1,i-1]∪[i+1,m]};fpar(t1)=…=fpar(ti-1)=fpar(ti+1)=…=fpar(tm)=root。
因?yàn)榭刂屏鞑桓淖兘M織任務(wù)的執(zhí)行次序和邏輯,所以精簡(jiǎn)后的過(guò)程樹(shù)可以映射為視圖,稱為公共視圖。
定義13公共視圖。公共視圖是私有視圖經(jīng)過(guò)程樹(shù)精簡(jiǎn)后遷移得到的組織視圖模型,其定義PuV=(PI,PC,T;F,i,o,Ms,Me),與私有視圖相同。
證明若滿足分支互模擬,則必滿足軌跡等價(jià),因此采用分支互模擬理論證明。詳細(xì)表述參見(jiàn)文獻(xiàn)[26],限于篇幅,不再贅述。
定理2若一個(gè)私有視圖V經(jīng)規(guī)則1精簡(jiǎn)后遷移得到公共視圖V′,則V與V′軌跡等價(jià)。
證明要證明視圖V與V′軌跡等價(jià),只需證明其滿足分支互模擬,因此采用進(jìn)程代數(shù)進(jìn)行證明。因?yàn)閞oot及tn+1,…,tm的類型未知,規(guī)則1只針對(duì)以t1為根節(jié)點(diǎn)的子樹(shù)V1,所以分3種情況討論。
根據(jù)上述3種情況可知,無(wú)論t1為何種節(jié)點(diǎn)類型,若其所有葉子節(jié)點(diǎn)均為瞬時(shí)變遷,則經(jīng)規(guī)則1精簡(jiǎn)后遷移得到的公共視圖V′與私有視圖V滿足軌跡等價(jià)。證畢。
定理3若一個(gè)私有視圖V經(jīng)規(guī)則2精簡(jiǎn)后遷移得到公共視圖V′,則V與V′軌跡等價(jià)。
定理4若一個(gè)私有視圖V經(jīng)規(guī)則3精簡(jiǎn)后遷移得到公共視圖V′,則V與V′軌跡等價(jià)。
定理5若一個(gè)私有視圖V經(jīng)規(guī)則4精簡(jiǎn)后遷移得到公共視圖V′,則V與V′軌跡等價(jià)。
定理6若一個(gè)私有視圖V經(jīng)規(guī)則4精簡(jiǎn)后遷移得到公共視圖V′,則V與V′軌跡等價(jià)。
證明Nm可以看作對(duì)N進(jìn)行n次定理7的操作,根據(jù)定理7的正確性,Nm也滿足正確性。證畢。
過(guò)程樹(shù)是由視圖映射得到的結(jié)構(gòu),因此同樣可以根據(jù)精簡(jiǎn)后的過(guò)程樹(shù)對(duì)私有視圖進(jìn)行遷移得到公共視圖。
定義15刪除操作。刪除操作delete()指刪除視圖內(nèi)某一節(jié)點(diǎn)及其所連接的流關(guān)系。給定一個(gè)視圖V,n為視圖V內(nèi)的一個(gè)節(jié)點(diǎn),delete(n):
(1)若n為一個(gè)變遷,則:①V.T=V.T-n;②V.F=V.F-({(p,n)|p∈·n}∪{(n,p)|p∈n·})。
(2)若n為一個(gè)庫(kù)所,則:①V.PI=V.PI-n;②V.F=V.F-({(t,n)|t∈·n}∪{(n,t)|t∈n·})。
定義16合并操作。合并操作merge()指將視圖內(nèi)的兩個(gè)或多個(gè)節(jié)點(diǎn)合并為一個(gè)節(jié)點(diǎn)。給定一個(gè)視圖V,n1,n2是視圖V內(nèi)的兩個(gè)節(jié)點(diǎn),merge(n1,n2):
(1)若n1,n2為兩個(gè)變遷,則:①V.T=V.T-(n1,n2)+t;②V.F=V.F-({(p,n1)|p∈·n1}∪{(n1,p)|p∈n1·})∪({(p,n2)|p∈·n2}∪{(n2,p)|p∈n2·})+({(p,t)|p∈·n1∪·n2}∪{(t,p)|p∈n1·∪n2·})。
(2)若n1,n2為兩個(gè)庫(kù)所,則:①V.PI=V.PI-(n1,n2)+p;②V.F=V.F-({(t,n1)|t∈·n1}∪{(n1,t)|t∈n1·})∪({(t,n2)|t∈·n2}∪{(n2,t)|t∈n2·})+({(t,p)|t∈·n1∪·n2}∪{(p,t)|t∈n1·∪n2·})。
規(guī)則6若一個(gè)私有視圖V的過(guò)程樹(shù)PT存在基本情形樹(shù),則根據(jù)規(guī)則1可對(duì)私有視圖V進(jìn)行合并操作,即:
for every ti,tj∈fchi(t1)
if ti.type=tj.type=TRSI
tm=merge(ti,tj)
end for
merge(t1,tm)
規(guī)則7若一個(gè)私有視圖V的過(guò)程樹(shù)PT存在順序情形樹(shù),則根據(jù)規(guī)則2可對(duì)私有視圖V進(jìn)行刪除和合并操作,即:
for every ti∈fchi(root)
if ti.type=TRSI
delete(ti)
merge(·ti,ti·)
end for
規(guī)則8若一個(gè)私有視圖V的過(guò)程樹(shù)PT存在并發(fā)情形樹(shù),則根據(jù)規(guī)則3可對(duì)私有視圖V進(jìn)行刪除操作,即:
for every ti∈fchi(root)
if ti.type=TRSI
delete(ti)
delete(ti·)
delete(·ti)
end for
規(guī)則9若一個(gè)私有視圖V的過(guò)程樹(shù)PT存在選擇情形樹(shù),則根據(jù)規(guī)則4可對(duì)私有視圖V進(jìn)行合并操作,即:
for every ti,tj∈fchi(t1)
if ti.type=tj.type=TRSI
merge(ti,tj)
end for
規(guī)則10若一個(gè)私有視圖V的過(guò)程樹(shù)PT存在循環(huán)情形樹(shù),則根據(jù)規(guī)則5可對(duì)私有視圖V進(jìn)行刪除操作,即:
for every ti∈fchi(root)
if ti.type=LOOP∧fchi(ti).type=TRSI
delete(ti)
end for
本章利用實(shí)際協(xié)同業(yè)務(wù)過(guò)程案例驗(yàn)證本文所提方法的有效性,并對(duì)模型建模效率、隱私性保護(hù)力度進(jìn)行分析,同時(shí)通過(guò)與現(xiàn)有典型的建模方法對(duì)比,闡明本文方法改進(jìn)之處。
為了驗(yàn)證本文所提方法的有效性,本節(jié)以一個(gè)簡(jiǎn)化的商品購(gòu)買流程為例進(jìn)行建模分析,并與屬于同類方法的代表性文獻(xiàn)[9-10,16-18]進(jìn)行對(duì)比分析。該流程中包括客戶Customer、代理商Agency和供應(yīng)商Supplier 3個(gè)參與組織??蛻暨x擇商品(choose_goods)完成后向代理商發(fā)送訂單(send_order),代理商收到訂單信息后選擇供應(yīng)商(chooseSupplier)并發(fā)送查詢庫(kù)存信息(send_queryStock);供應(yīng)商接收查詢庫(kù)存信息后檢查庫(kù)所,庫(kù)存不足則繼續(xù)生產(chǎn),庫(kù)存充足則發(fā)送庫(kù)存充足信息(send_enoughInfo)。代理商接收到供應(yīng)商發(fā)送的庫(kù)存充足信息(rec_enoughInfo)后向客服發(fā)送付款請(qǐng)求(send_requestPayment),客戶選擇終止交易并發(fā)送終止消息(send_cancel)或付款并發(fā)送付款成功消息(send_pay)。代理商若接收的是終止消息,則向供應(yīng)商發(fā)送終止消息(send_cancel_s)并結(jié)束流程;若接收的是付款成功消息,則向供應(yīng)商發(fā)送發(fā)貨請(qǐng)求(send_shipment)。供應(yīng)商接收的若為終止消息,則流程結(jié)束;若為發(fā)貨請(qǐng)求,則檢查商品(checkGoods)后打包(package)并發(fā)送商品(send_Goods_a),然后更新庫(kù)存結(jié)束流程。代理商接收商品后(rec_Goods_a)將收到的商品發(fā)送給客戶(send_Goods_c),客戶收到商品(rec_Goods_c)后發(fā)送收貨通知(send_reception)給代理商。整個(gè)購(gòu)買流程的業(yè)務(wù)過(guò)程模型如圖13所示,其中:黑色變遷表示與外部交互的活動(dòng),即通信變遷;白色變遷表示內(nèi)部活動(dòng),即瞬時(shí)變遷;虛線表示組織間的消息通信。
針對(duì)圖13的業(yè)務(wù)過(guò)程模型,首先采用本文所提方法將私有視圖遷移得到各自的公共視圖,然后將私有視圖與公共視圖同步通信,再對(duì)各公共視圖模型進(jìn)行組合建模,得到的協(xié)同業(yè)務(wù)過(guò)程模型如圖14所示,稱其為模型1,記為Model 1。其中實(shí)心庫(kù)所表示組織通信消息,即通信庫(kù)所。
文獻(xiàn)[10]是協(xié)同業(yè)務(wù)過(guò)程領(lǐng)域內(nèi)的一篇經(jīng)典文獻(xiàn),許多研究均以此為基礎(chǔ)開(kāi)展后續(xù)工作,因此選擇該文獻(xiàn)作為對(duì)比之一。應(yīng)用文獻(xiàn)[10]方法構(gòu)建的協(xié)同業(yè)務(wù)過(guò)程如圖15所示,稱其為模型2,記為Model 2。
文獻(xiàn)[17-18]考慮抽取公共過(guò)程,對(duì)業(yè)務(wù)過(guò)程簡(jiǎn)化以構(gòu)建協(xié)同業(yè)務(wù)過(guò)程,因此本文應(yīng)用文獻(xiàn)[17-18]方法后再對(duì)其進(jìn)行建模,所建立的協(xié)同業(yè)務(wù)過(guò)程模型如圖16所示,稱其為模型3,記為Model 3。
文獻(xiàn)[9]是近年來(lái)協(xié)同業(yè)務(wù)過(guò)程領(lǐng)域此類方法最新的研究成果,其方法也考慮了對(duì)公共過(guò)程的抽取,因此本文將文獻(xiàn)[9]的建模方法作為對(duì)比方法。
應(yīng)用該文獻(xiàn)中基本塊的抽取規(guī)則對(duì)各個(gè)業(yè)務(wù)過(guò)程模型進(jìn)行抽取得到各自的公共過(guò)程,再構(gòu)建協(xié)同業(yè)務(wù)過(guò)程,所建立的模型如圖17所示,稱其為模型4,記為Model 4。
針對(duì)應(yīng)用本文方法和文獻(xiàn)[9-10,17-18]方法所構(gòu)建的模型1~模型4,本文從其隱私性保護(hù)程度和構(gòu)建模型時(shí)的建模效率進(jìn)行分析。
6.3.1 隱私性保護(hù)分析
針對(duì)隱私性保護(hù)定量分析,本文提出流程可見(jiàn)度概念,用于定量評(píng)估組織內(nèi)部信息暴露的程度。流程可見(jiàn)度
(1)
式中:α為遷移后協(xié)同業(yè)務(wù)過(guò)程中各組織的變遷數(shù)量;β為原協(xié)同業(yè)務(wù)過(guò)程的變遷數(shù)量。η越小,隱藏的內(nèi)部變遷越多,隱私性保護(hù)力度越高。利用式(1),針對(duì)上述4個(gè)模型,得到可見(jiàn)度計(jì)算結(jié)果,如圖18所示。
由圖18可見(jiàn),文獻(xiàn)[17-18]方法在建模時(shí)考慮從私有過(guò)程中抽取公共過(guò)程,使其流程可見(jiàn)度(Model 3)與本文方法(Model 1)相同,即隱私性保護(hù)力度相同;而文獻(xiàn)[10]方法(Model 2)并未考慮從私有過(guò)程中抽取公共過(guò)程,內(nèi)部流程信息全部可見(jiàn),暴露了組織隱私信息;文獻(xiàn)[9]方法(Model 4)雖然考慮從私有過(guò)程中抽取公共過(guò)程建模,但其抽取規(guī)則具有局限性,不符合其基本塊結(jié)構(gòu)就不能抽取,因此其流程可見(jiàn)度相對(duì)本文方法偏高。
6.3.2 建模效率分析
圖中模型3的可達(dá)狀態(tài)、有效遷移和系統(tǒng)直徑3項(xiàng)數(shù)據(jù)均遠(yuǎn)大于模型1、模型2和模型4,而模型1、模型2和模型4在這3項(xiàng)數(shù)據(jù)上完全相同,因此可知文獻(xiàn)[9-10]方法與本文方法的建模效率相同,然而文獻(xiàn)[10]是私有過(guò)程直接組合成為協(xié)同業(yè)務(wù)過(guò)程模型,違背了隱私保護(hù)原則;文獻(xiàn)[9]考慮隱私性保護(hù)和抽取規(guī)則的上下文無(wú)關(guān),但其抽取規(guī)則根據(jù)基本塊設(shè)定,具有一定局限性,降低了適用范圍,隱私保護(hù)力度不足。文獻(xiàn)[17-18]方法未考慮應(yīng)用抽取規(guī)則前后模型的正確性是否一致,且未從理論上證明該方法是抽取前后正確性一致的,導(dǎo)致每次應(yīng)用規(guī)則抽取后均需驗(yàn)證其正確性,因此建模效率遠(yuǎn)低于本文方法。
綜合上述分析可知,相比文獻(xiàn)[9-10,17-18]3種建模方法,本文方法能夠在確保模型遷移前后正確性一致和不影響建模效率的前提下,更加有效地提高隱私性保護(hù)力度。
針對(duì)本文研究方向,學(xué)者們已經(jīng)提出多種建模方法。已有跨組織工作流建模方案大多在多個(gè)參與組織內(nèi)部流程模型的基礎(chǔ)上直接組合,建立具有協(xié)同功效的全局模型[10,27-28]。VAN DER AALST[29]提出工作流網(wǎng)(WorkFlow net,WF-net),WF-net是一種由結(jié)構(gòu)約束的Petri網(wǎng),要求有且僅有一個(gè)確定的輸入庫(kù)所和輸出庫(kù)所;然后基于WF-net提出IOWF(interorganizational workflow)用于跨組織的工作流建模[10];在文獻(xiàn)[27]中,VAN DER AALST用消息序列表示組織間的通信結(jié)構(gòu);LI等[30]用有色Petri網(wǎng)對(duì)業(yè)務(wù)過(guò)程進(jìn)行建模;ZENG等[5,31]針對(duì)跨組織應(yīng)急響應(yīng)的特點(diǎn),對(duì)WF-net擴(kuò)展資源和消息等要素進(jìn)行參與組織的業(yè)務(wù)流程建模,繼而采用庫(kù)所熔合技術(shù)將資源庫(kù)所和消息庫(kù)所熔合,從而對(duì)跨組織協(xié)同業(yè)務(wù)過(guò)程建模。為了確保協(xié)同業(yè)務(wù)實(shí)施的可靠性,LIU等[32]引入兼容性和弱兼容性的概念,并針對(duì)IWF-nets的網(wǎng)結(jié)構(gòu)提出用于判定兼容性或弱兼容性的充要條件。針對(duì)公共管理呈現(xiàn)的交互特征,CORRADINI[33]首先用BPMN對(duì)其進(jìn)行描述,然后將其BPMN模型轉(zhuǎn)換為基于Petri網(wǎng)的模型,采用Petri網(wǎng)的展開(kāi)技術(shù)(unfolding-based technique)對(duì)相關(guān)性質(zhì)(如死鎖等)進(jìn)行驗(yàn)證。雖然上述建模方法能夠較好地體現(xiàn)組織間的協(xié)作等特征,但是這種全局模型會(huì)直接暴露組織內(nèi)部的流程信息,造成隱私泄露。
自頂向下建模方法也是被較多采用的方法,其基本思想是利用映射規(guī)則從全局契約生成每個(gè)參與組織的私有過(guò)程。VAN DER AALST等[15]較早在國(guó)際上提出此類方法,其采用契約(contract)規(guī)定各組織參與協(xié)同過(guò)程的公共視圖,因?yàn)槊總€(gè)參與組織僅需實(shí)現(xiàn)一部分契約,即組織約束,所以該方法在考慮異步消息通信的情況下提出幾種轉(zhuǎn)換規(guī)則,用于增量地從契約中構(gòu)建參與組織對(duì)應(yīng)的私有視圖。VAN DER AALST等[16]針對(duì)協(xié)同業(yè)務(wù)過(guò)程提出一種P2P(public-to-private)建模方法,該方法首先創(chuàng)建一個(gè)公共的、可理解的跨組織工作流作為共享的全局工作流,然后根據(jù)所涉及的組織將全局工作流進(jìn)行劃分,最后根據(jù)劃分情況構(gòu)建參與組織的私有工作流。SALAüN等[34]首先采用統(tǒng)一建模語(yǔ)言(Unified Modeling Language,UML)中的通信圖描述協(xié)同業(yè)務(wù)過(guò)程編排,并將通信圖轉(zhuǎn)換為L(zhǎng)OTOS進(jìn)程作為全局契約,然后根據(jù)參與組織將其分解為每個(gè)組織對(duì)應(yīng)的規(guī)約,借助進(jìn)程代數(shù)分析工具CADP(construction and analysis of distributed processes)檢測(cè)全局契約與每個(gè)組織所生成規(guī)約的并發(fā)組合行為是否一致,即可實(shí)現(xiàn)性(realizability)問(wèn)題,而且重點(diǎn)討論了異步消息和消息緩沖區(qū)長(zhǎng)度對(duì)可實(shí)現(xiàn)性的影響。CAPEL等[35]同樣針對(duì)可實(shí)現(xiàn)性問(wèn)題進(jìn)行討論,首先用BPMN的一個(gè)子集描述協(xié)同業(yè)務(wù)過(guò)程,并給出該子集的形式語(yǔ)義定義,然后給出一個(gè)轉(zhuǎn)換規(guī)則集用于生成每個(gè)組織對(duì)應(yīng)的規(guī)約,用時(shí)間進(jìn)程代數(shù)表示,最后采用模型檢測(cè)技術(shù)自動(dòng)驗(yàn)證協(xié)同業(yè)務(wù)過(guò)程的行為與用時(shí)間進(jìn)程代數(shù)并發(fā)表示的組合行為是否一致。K?PKE等[36]提出一種自頂向下的協(xié)同業(yè)務(wù)過(guò)程開(kāi)發(fā)方法,該方法首先設(shè)計(jì)全局過(guò)程,然后采用全局劃分方法產(chǎn)生每個(gè)參與組織對(duì)應(yīng)的組織約束,并確保劃分的正確性,最后每個(gè)參與組織根據(jù)組織約束開(kāi)發(fā)各自的私有過(guò)程,從而實(shí)現(xiàn)隱私保護(hù)。為了以無(wú)侵入方式組合組織流程(即不修改組織流程),AUTILI等[37]首先用編排定義全局約束,然后根據(jù)編排生成協(xié)調(diào)代理,并通過(guò)將組織流程與協(xié)調(diào)代理合成迫使組織流程行為與編排一致。綜上所述,在實(shí)際建模中,自頂向下建模方法無(wú)法事先獲悉預(yù)定義的完整協(xié)作場(chǎng)景和流程細(xì)節(jié),具有一定局限性,因此降低了建模方法的普適性。
如前文所述,本文討論的方法屬于自底向上建模的范疇,這是目前協(xié)同業(yè)務(wù)過(guò)程領(lǐng)域的研究熱點(diǎn)。目前,從私有業(yè)務(wù)過(guò)程抽象公共過(guò)程以構(gòu)建協(xié)同業(yè)務(wù)過(guò)程還未形成系統(tǒng)性的研究成果[9]。CHEBBI等[18]較早提出一種用于隱藏業(yè)務(wù)過(guò)程內(nèi)部流程信息的方法,該方法引入視圖概念,提出一組流程約簡(jiǎn)集,允許參與者用于簡(jiǎn)化業(yè)務(wù)過(guò)程模型以構(gòu)建協(xié)同業(yè)務(wù)過(guò)程模型,但其抽取規(guī)則并不完備;ZENG等[38]提出一種自底向上的跨組織工作流挖掘方法,根據(jù)過(guò)程模型的4種協(xié)調(diào)模式對(duì)工作流進(jìn)行建模;王晶等[17]默認(rèn)參與協(xié)同的組織內(nèi)部視圖為擴(kuò)展自由選擇網(wǎng),提出一組元結(jié)構(gòu),即順序元結(jié)構(gòu)、選擇元結(jié)構(gòu)、并發(fā)元結(jié)構(gòu)和循環(huán)元結(jié)構(gòu),然后對(duì)4種結(jié)構(gòu)提出各自的規(guī)則,得到公共視圖,繼而組合公共視圖以構(gòu)建松耦合的跨組織協(xié)同網(wǎng)結(jié)構(gòu),然而方法中的抽取規(guī)則集只考慮了跨組織的職能,并未從理論上證明其前后模型的正確性是否一致;周長(zhǎng)紅等[39]首先基于約簡(jiǎn)規(guī)則集隱藏不與其他組織進(jìn)行消息交互的流程信息,形成面向組織集的公共流程模型,然后將公共流程模型按照發(fā)送消息標(biāo)識(shí)和接收消息標(biāo)識(shí)進(jìn)行集成,構(gòu)建支持隱私保護(hù)的消息交互流程模型;ESHUIS等[40]提出過(guò)程視圖概念,過(guò)程視圖由投影規(guī)則從私有過(guò)程中生成,其隱藏了私有業(yè)務(wù)過(guò)程內(nèi)部的流程信息,只將交互信息暴露給協(xié)作伙伴,可視為私有過(guò)程的外部映像。雖然文獻(xiàn)[40]給出了多種投影關(guān)系,如灰盒投影、白盒投影等,并計(jì)算了投影前后私有過(guò)程與過(guò)程視圖的匹配程度,但是并未從理論上證明投影后得到的過(guò)程視圖與私有過(guò)程一致。YONGCHAREON等[41]提出一組以Artifact為中心的協(xié)同業(yè)務(wù)過(guò)程元模型,并引入私有視圖和公共視圖的概念,首次提出從私有視圖中獲取最小、一致公共視圖的算法,并驗(yàn)證了該方法正確性,然而該方法只適用于以Artifact為中心的協(xié)同業(yè)務(wù)過(guò)程,并不適用于以控制流為中心的協(xié)同業(yè)務(wù)過(guò)程;代飛等[42]基于Petri網(wǎng)提出一種多視角的跨組織業(yè)務(wù)過(guò)程建模方法,該方法從內(nèi)部視角定義私有過(guò)程,通過(guò)定義抽取規(guī)則集生成公共過(guò)程,進(jìn)而組合公共過(guò)程生成協(xié)同業(yè)務(wù)過(guò)程;LI等[30]雖然討論了抽取規(guī)則的上下文無(wú)關(guān)特性,但是不嚴(yán)格且不能針對(duì)循環(huán)結(jié)構(gòu)進(jìn)行抽象;QIN等[43]將成本的概念引入廣義隨機(jī)培養(yǎng)網(wǎng)(稱為擴(kuò)展廣義隨機(jī)培養(yǎng)網(wǎng)),并將基本塊概念引入業(yè)務(wù)過(guò)程建模,解決了業(yè)務(wù)過(guò)程等效時(shí)間性能問(wèn)題;莫啟等[9]在文獻(xiàn)[42]的基礎(chǔ)上進(jìn)行改進(jìn),首先定義了業(yè)務(wù)過(guò)程模型以表示組織的私有過(guò)程,然后將其抽象為順序塊、選擇塊、并發(fā)塊和迭代塊4種基本塊,針對(duì)4種基本塊提出各自的抽取規(guī)則集,該方法證明這些規(guī)則能夠保持抽取前后接口的一致性,確保抽取是上下文無(wú)關(guān)的,但由于其基本塊的劃分固定,抽取過(guò)程具有一定局限性。LIU等[44]提出一種隱私保護(hù)的跨組織業(yè)務(wù)流程挖掘框架,包括3步:①每個(gè)組織從事件日志中發(fā)現(xiàn)其私有和公共業(yè)務(wù)流程模型;②受信任的第三方中間軟件將公共流程模型作為輸入,生成每個(gè)組織的合作公共過(guò)程模型片段;③每個(gè)組織將其私人業(yè)務(wù)流程模型與相關(guān)的公共碎片結(jié)合起來(lái),獲得特定于組織的跨組織合作業(yè)務(wù)流程模型。雖然該框架將過(guò)程挖掘技術(shù)提升到跨組織背景下來(lái)處理隱私問(wèn)題,但是其隱私僅限于面向流程的信息,并未解決其他以數(shù)據(jù)為中心的隱私問(wèn)題,而且想要找到一個(gè)讓所有參與組織都信任的第三方是一個(gè)難點(diǎn)。因此,自底向上建模方法的優(yōu)點(diǎn)是不需要事先知道完整的協(xié)作場(chǎng)景和協(xié)作流程細(xì)節(jié),只需明確其協(xié)作接口即可。
綜上所述,現(xiàn)有建模方法或是基于全局建模思想,在各參與組織的私有業(yè)務(wù)過(guò)程上直接組合構(gòu)建成一個(gè)全局模型,各組織直接參與交互,對(duì)組織內(nèi)部隱私信息保護(hù)不足,導(dǎo)致最終暴露協(xié)同業(yè)務(wù)過(guò)程模型的隱私;或是考慮到保護(hù)隱私,提出一些抽取規(guī)則集,將私有過(guò)程抽取為公共過(guò)程再構(gòu)建協(xié)同業(yè)務(wù)過(guò)程模型,然而并未在理論上驗(yàn)證應(yīng)用其方法建立的模型與原模型正確性是否一致,導(dǎo)致建模效率不高;又或是證明了抽取規(guī)則能確保上下文無(wú)關(guān),但因其基本塊劃分固定,使該方法的抽取規(guī)則存在局限性。
針對(duì)利用公共視圖構(gòu)建協(xié)同業(yè)務(wù)過(guò)程模型,本文首先將私有視圖映射為包含4種基本節(jié)點(diǎn)的樹(shù)結(jié)構(gòu),分別為基本情形樹(shù)、順序情形樹(shù)、選擇情形樹(shù)、并發(fā)情形樹(shù)和循環(huán)情形樹(shù)。利用樹(shù)結(jié)構(gòu)層次清晰的特點(diǎn),針對(duì)5種情形樹(shù)提出更加靈活的精簡(jiǎn)規(guī)則,并證明這些規(guī)則集能夠滿足軌跡等價(jià)原則;然后采用該規(guī)則將私有視圖遷移得到公共視圖,以構(gòu)建協(xié)同業(yè)務(wù)過(guò)程模型。相對(duì)已有工作,本文能夠在確保遷移前后模型正確性一致和不影響建模效率的前提下,提高隱私保護(hù)力度。
未來(lái)主要針對(duì)以下兩個(gè)方面進(jìn)行研究:
(1)限于篇幅,本文僅用一個(gè)簡(jiǎn)化的商品購(gòu)買流程模型來(lái)驗(yàn)證本文方法的可行性,下一步將擴(kuò)充實(shí)例來(lái)表明本文方法的有效性和適用性。
(2)本文開(kāi)展的假設(shè)前提是由各組織私有視圖直接組合構(gòu)建的全局模型可正確執(zhí)行,因?yàn)楸疚慕7椒軌虼_保遷移前后模型正確性一致,所以最后構(gòu)建的模型也是正確執(zhí)行的。然而現(xiàn)實(shí)中需要建模的實(shí)際案例不會(huì)完全滿足這種假設(shè),下一步將考慮如何使本文方法更具適用性。