冉梅梅,王曉華,2,楊 敏,侯麗娟
1(貴州大學 計算機科學與技術學院,貴陽 550025)
2(遵義醫(yī)學院附屬醫(yī)院 信息科,遵義 563003)
3(遵義醫(yī)學院 醫(yī)學信息工程學院,遵義 563003)
4(沙子坡中學 教務處,銅仁 555202)
工作流建模一直是工作流研究領域熱點方向之一.對工作流的研究,有以活動為中心研究工作流的資源管理與配置、動態(tài)變更與實例遷移以及工作流的路徑求取算法等;也有因為以活動為中心缺乏組織人員和角色的重視而提出以角色為中心基于其它建模工具對工作流進行建模.迄今為止,基于Petri Nets、Agent、UML等建模工具產生了許多工作流模型.其中,西安交通大學的李宗斌、高新勤等人在文獻[1,2]提出了工作流的的動態(tài)變更和實例遷移模型以及工作流區(qū)域識別算法與排序規(guī)則,并指出動態(tài)變更主要是對工作流模型結構的添加/刪除、結構轉換和結構的組合,他們在文獻[3]中通過多色集合理論建立相關的圍道矩陣對工作流建模并給出了工作流路徑求取算法,并在文獻[4,5]中運用提出的離析運算為工作流過程推理和配置資源,實現(xiàn)工作流過程與工作流資源的集成,其中還對多色圖的邊進行了擴展,將邊分為連接、與分、或分、與合、或合.北京航空航天大學軟件工程研究院的徐亮、張莉等人在文獻[6]通過擴展UML針對實時系統(tǒng)建立了實時工作流元模型,主要考慮了工作流中的時間約束和異常處理,對活動屬性擴展了啟動、執(zhí)行時間與并發(fā)時間約束,最后還定義了實時工作流描述語言.同濟大學的楊書新等人在文獻[7]中提出了業(yè)務流程動態(tài)變更模型與業(yè)務過程實例動態(tài)遷移算法,其目的是解決工作流管理系統(tǒng)中流程柔性演進變化問題.南京大學的葛季棟等在文獻[8]中用Petri Nets對工作流進行了分解并提出了面向交互的Petri Nets模型來對跨組織的工作流協(xié)同進行描述.復旦大學的趙靜、趙衛(wèi)東等人在文獻[9,10]中基于角色的視角對工作流進行了研究,它們將提出了工作流日志挖掘與流程分解結合的角色識別算法,最終生成與業(yè)務流程相關的角色樹,他們在文獻[11]中還利用agent技術基于角色對工作流進行建模形成了一種面向角色的工作流多agent管理系統(tǒng)模型與原型.以上這些研究構建的工作流模型體現(xiàn)出了活動間的邏輯關系,缺乏活動間交互時涉及的資源等性質.
以活動為中心對工作流交互過程進行建模,不僅需要考慮活動及其邏輯關系,還需要考慮活動交互間消息的發(fā)送與接收以及相關資源的交互.多色集合理論是在傳統(tǒng)集合的基礎上與模糊數(shù)學、數(shù)理邏輯等知識相結合形成的.由于多色集合理論中對象的集合與元素都能被涂上不同的顏色來表示對象的性質,用該理論研究工作流的交互過程較易描述工作流中活動的靜態(tài)屬性與動態(tài)行為,并且通過本文提出的連接運算能夠描述活動間交互涉及的消息與資源,由矩陣與相關的規(guī)則構成工作流過程交互多色圖模型,使活動與交互的消息和資源進行良好的整合.
課題組前期在研究系統(tǒng)交互的過程中對多色集合理論進行了擴展,為便于描述系統(tǒng)的動態(tài)行為,因此提出了圍道分割的思想,將對象的整體性質F(A)分割成靜態(tài)屬性FS(A)與動態(tài)行為FD(A),F(A)=FS(A)∪FD(A).并提出了單元素多色集合,其中的對象集合A僅包含了一個元素,那么對象的個人顏色就與對象的整體著色相同,并在此基礎上提出了實體聚合運算與功能聚合運算.為了用圍道矩陣描述活動的交互關系,在矩陣中使用0、1、-1、2、-2分別表示活動間的順序、并分、或分、并合、或合關系.
本文基于多色集合理論對工作流過程中活動的交互進行研究,有助于工作流整體建模.首先提出單元素二元組多色集合與多元素二元組多色集合;其次為了能夠完整地描述一個對象的靜態(tài)性質與動態(tài)行為,對普通的圍道布爾矩陣進行了擴展,使圍道的邊不再局限于單個的元素而是由多元組構成,并對多色圖中的節(jié)點進行了區(qū)域的劃分;最后,對工作流交互過程的步驟進行分析,用HIS與RIS間的交互為例驗證.
多色集合理論是在傳統(tǒng)集合的基礎上與模糊數(shù)學、數(shù)理邏輯以及矩陣相關知識結合而成的,它的特點是使用相同的數(shù)學模型來仿真不同的對象[12],由多色集合與多色圖兩部分構成.
多色集合是在傳統(tǒng)集合基礎上對集合的整體及其元素進行著色,用以表示對象的性質、屬性、參數(shù)等特性以及對象與元素、元素與元素之間的關系.如果集合中存在著多個元素,f(ai)表示元素ai∈A的個人顏色,F(A)表示對象A的整體著色,F(A)={F1(A),F2(A),…,Fj(A),…,Fp(A)},統(tǒng)一的顏色布爾矢量空間F包含了集合的整體著色F(A)和元素ai的個人著色f(ai),即F?F(A);F?F(ai),i=1,2,···,n.集合A與集合A的統(tǒng)一著色F(A)構成的布爾矩陣如公式(1)所示[14].
多色集合的表達式為公式(2)[15].
若集合中只有一個元素,那么f(a)=F(A),其多色集合的表達式為公式(3).
被稱為單元素多色集合.并且還提出了單元素多色集合的析取與合取運算.使得在描述單個元素時模型更加的簡化[16].
多色圖是在普通圖G=(V,E)上對其邊與節(jié)點進行著色,并且多色圖的邊與節(jié)點都是由多色集合構成,豐富了多色圖的表達能力.PG=(F(G),PSA,PSC),其中F(G)是圖的整體著色,PSA是節(jié)點的多色集合,PSC是邊的多色集合.如果節(jié)點和邊均有顏色,那么F(G)=F(A)∪F(C);如果節(jié)點無顏色,那么F(G)=F(C);反之F(G)=F(A).在某些特殊情況下,節(jié)點與邊均無顏色,那么多色圖就退變?yōu)槠胀▓D,因此,普通圖也是特殊的多色圖.
為更好地描述交互對象,提出二元組多色集合,對象間只要存在著交互行為,必有一方是調用方,一方是響應方.將對象、個人顏色、整體著色都分割成二元組的形式,A=
當集合A中包含多個元素時,此時元素的整體著色就會與個人著色有區(qū)別,會產生冗余的性質,因此可以將典型的多色集合分割,形成多元素二元組多色集合(Mult-elements Binary Polychromatic Sets,MBPS),見公式(4).
如果A中只有一個元素,那么F(A)=F(a),多元素二元組多色集合可以簡縮,稱其為單元素二元組多色集合(Single Binary Polychromatic Sets,SBPS),其表達式為公式(5).
可以根據(jù)實際情況對成分進行增加或刪除.
用典型的圍道矩陣描述對象的性質時,圍道的邊都是對象的單個特征,當一個對象存在著多個靜態(tài)屬性與動態(tài)行為時,就會加大矩陣規(guī)模.因此在圍道矩陣中引入元組,用元組將對象的靜態(tài)屬性與動態(tài)行為進行組合,一方面可以減小矩陣的規(guī)模,另外通過擴展的矩陣能夠清楚地了解到對象的整體性質.
在K元組圍道矩陣中,矩陣的邊是單個元素或多元組與多元組構成,矩陣的值也不再是單個的布爾值,也是由K元組組成,并且K元組中的值是由0,1組成,便于矩陣之間進行運算.其形式為公式(6).
(1)析取計算
K元組矩陣的析取運算由原來布爾圍道矩陣中單個元素的析取轉換為元組與元組之間的析取運算.如果圍道表示功能元組,那么元素的析取就能表示總體功能,具體運算如公式(7).
元素a1與a2具有
(2)合取運算
ai∧aj表示ai,aj具有的共同性質,當元組中兩個值同為1時,結果才為1,否則為0.在工作流活動的交互過程中,將每個活動擁有資源、方法用圍道布爾矩陣表示后,對它們進行合取運算,可得出兩個或多個活動間擁有的相同資源、方法等.在信息安全方面,通過該運算可表示兩個角色擁有的共同權限,數(shù)據(jù)等.
(3)順序連接運算
如果兩個圍道布爾矩陣,[A×F(A)]是i×j的單元素或多元組矩陣,[A×F(B)]也是i×j的單元素或多元組矩陣,F(A),F(B)是單元素或K元組,將F(B的圍道和值分別與[A×F(A)]中的圍道與值連接后構成二元組或2K元組,如公式(8)所示.具體矩陣運算如公式(9)所示.
(4)自由連接運算
在實際運算的過程中,存在著兩個矩陣的行數(shù)與列數(shù)不相等,此時,順序連接運算不適用于該種情況.
兩個矩陣[A×F(A)]與[B×F(B)]的行對應的運算對象不相同并且行數(shù)也不同時,可以將其中一個矩陣的行對象移入另一個矩陣中,并且列上標是兩個矩陣的對應列組合而成,其值也是兩個矩陣中對應列的值組合而成.
對某個對象進行多色集合表達時,首先對該對象與其相應的屬性形成普通的圍道布爾矩陣,然后通過連接運算形成多元組圍道布爾矩陣,在最終結果的圍道元組中,能夠清楚地知道對象完成某個功能需要哪些資源、數(shù)據(jù)、方法等.
在用多色圖表示工作流中活動的交互時,文獻[17]提出對多色圖的邊進行分類,以明確活動交互間的關系,但是活動交互所需的數(shù)據(jù)、應用程序等資源、時間約束條件、消息等在圖中不能夠體現(xiàn)出來,因此,對多色圖中的節(jié)點進行區(qū)域劃分,將節(jié)點分為三部分分別表示資源R、消息M、活動A,如圖1所示.
圖1 節(jié)點區(qū)域劃分圖
圖1中,M是活動A的前驅活動向活動A發(fā)送的消息,即活動A收到的消息為M,R是活動A向其后繼活動傳輸?shù)男畔①Y源.可以根據(jù)實際情況對多色圖中的節(jié)點進行區(qū)域劃分.
在一個系統(tǒng)中包含許多的類,類是現(xiàn)實世界中實體的形式化描述,它將該實體的數(shù)據(jù)和函數(shù)封裝在一起.因此,類可以表現(xiàn)為靜態(tài)屬性和動態(tài)行為,其靜態(tài)屬性可以用一般的布爾矩陣“類—屬性”圍道矩陣描述,其動態(tài)行為用以上提出的K元組圍道矩陣對其進行描述.類中的方法M(Method)包含參數(shù)P(Paramater),局部變量LV(Local-Varation),返回的結果R(Result).
系統(tǒng)間的交互實際就是類實例化后產生的對象間方法的調用與響應,那么,方法M就應該分割成<調用方,響應方>,即M=
(1)分析系統(tǒng)的某一模塊中包含的類Class,形成一個類集C;
(2)將類中的靜態(tài)屬性抽象成FS(C),動態(tài)性質抽象成為FD(C),那么,FD(C)=(
(3)對步驟(2)中的調用方和響應方的方法M分別進行描述,形成“方法—參數(shù)”、“方法—局部變量”、“方法—結果”的布爾矩陣,即[M×P]、[M×LV]、[M×R];
(4)方法之間的調用與響應形成方法交互布爾矩陣,即[MI×MP];
(5)利用本文提出的連接運算對步驟(3)與步驟(4)中的矩陣進行連接運算.最終形成[MI×
因此,系統(tǒng)間交互多色集合SIBPS (System of Interaction between Polychromatic Sets)可以描述為公式(10).
根據(jù)最后得出的4元組矩陣能明確地知道兩個系統(tǒng)間交互涉及的方法以及調用方法后產生的結果.
以活動為研究對象,工作流過程間的交互表現(xiàn)為活動之間消息的發(fā)送與接收以及相關資源的交互.為了構建出工作流過程交互的多色圖模型,首先應該分析工作流中的活動、消息、資源,然后形成相關的普通圍道矩陣;其次,對這些矩陣進行連接運算得出對象的完整描述矩陣;最后,利用相關規(guī)則形成多色圖模型.工作流過程交互分析的流程圖如圖2所示.
(1)在矩陣[A×A]中,如果活動ai與活動aj之間對應的值不為空,則ai是aj前驅活動,aj是ai后繼活動.
(2)如果矩陣中活動ai的列的值全為空,則活動ai是起始活動;如果活動aj的行的值全為空,則aj是終止活動.
圖2 工作流交互分析流程圖
工作流過程間的交互從整體上來說表現(xiàn)為角色之間的交互,其可細化為活動之間的直接交互.在工作流過程交互中,以活動為研究對象,用集合A表示,活動間交互所需的數(shù)據(jù)、應用程序、約束條件等活動的性質用F(A)描述,用O表示包含活動的對象角色,F(O)描述角色的性質,其中,角色之間是通過消息的傳遞進行交互的,因此,消息集M、部分活動集G是角色的性質.角色與活動形成布爾矩陣[O×A],角色與其對應的性質用[O×F(O)]描述,工作流中活動間的交互表現(xiàn)為矩陣[A×A],活動集A與活動性質形成矩陣[A×F(A)].因此,工作流過程活動的交互用交互多色集合IPS (Interaction Polychromatic Sets)描述為公式(11).
可將交互多色圖劃分為三部分,如果存在著分支結構,其中,左分支中的活動構成活動集Gi,右分支中的活動構成活動集Gk,剩余除起始邏輯活動與結尾邏輯活動外的活動構成Gj.
對工作過程的交互建模不是一蹴而就的,需要先分析交互中涉及的活動、消息、資源,然后構成相關的矩陣.
工作流過程交互步驟:
(1)識別此過程中涉及的對象角色集O、活動集A、消息集M并形成[O×F(O)];
(2)形成活動交互矩陣[A×A]以及活動交互消息矩陣[A×A×M]、活動交互資源矩陣[A×A×R];
(3)運用連接運算形成過程交互矩陣[A×A×F(A)],最后可形成交互多色圖,并根據(jù)交互多色圖形成部分活動集G以及活動集矩陣[G×G].
文獻[5,17]中提出了對多色圖的邊進行分類,活動間存在著五種關系:順序、并分、或分、并合、或合.
表1 活動間關系標識
建立多色圖模型前,需要完成3.2.1中工作流過程交互分析的前兩步,然后再對相應的矩陣進行操作.
交互多色圖的構成步驟:
(1)利用3.1中的規(guī)則找到起始活動ai;
(2)在活動圍道矩陣中找到起始活動ai的后繼活動aj,如果ai與對應aj的值為0,則用順序關系進行描述;如果有多個后繼活動并且對應的值為1,則用并分關系進行描述;如果有多個后繼活動并且值為-1,則用或分進行描述;如果對應的值為2,則用并合描述;如果對應的值為-2,則用或合描述;
(3)根據(jù)矩陣[A×A×M]、[A×A×R]分別找到相應活動的接收的消息與活動發(fā)出的信息流;
(4)如果用3.1中規(guī)則判斷活動ak是否是終止活動,若不是終止活動,繼續(xù)步驟(2)、(3);反之,結束.
醫(yī)院HIS與RIS的門診過程中,病人首先到掛號處排隊掛號,然后到門診分診臺分診,門診醫(yī)生利用門診醫(yī)生工作站根據(jù)需要開出放射檢查醫(yī)囑,收費處根據(jù)檢查醫(yī)囑進行劃價收費,檢查科醫(yī)生根據(jù)檢查申請信息進行檢查預約安排,最后病人根據(jù)時間安排到放射科做檢查,放射科醫(yī)生根據(jù)放射科醫(yī)生工作站對檢查影像進行讀片,并書寫檢查診斷報告,同時檢查完后,影像圖片會自動上傳至PACS,門診醫(yī)生可以通過醫(yī)生工作站查看病人影像檢查報告并進一步作出治療方案.
此過程中,對象角色包含病人Patient,HIS,LIS,即O=(Patient,HIS,LIS).
活動集A=(b1,a11,a12,a13,a14,a21,a22,a23,a24,b2),其中,b1,b2是無意義的活動,只是表示活動的開始與結束.
消息集M=(M1,M2,M3,M4,M5,M6,M7,M8).
資源集R=(R1,R2,R3,R4,R5,R6,R7,R8,R9,R10).
三個集合中元素含義見表2至表4.用0、1、-1、2、-2分別標識活動間的順序、并分、或分、并合、或合,可以構建出活動關系矩陣[A×A],見圖3.若活動ai與aj無任何關系,則其對應的值為空;若為0,表示存在順序關系;若為1,表示并分關系;若為-1,表示或分關系;若為2,表示并合關系;若為-2,表示或合關系.
表2 活動集A各元素含義
表3 消息集M各元素含義
表4 資源集R各元素含義
如果活動aj收到ai的消息Mk,則矩陣中對應的值為1,否則,值為0,見圖4.
通過前面所提出的自由連接運算,將活動間事件關系矩陣與活動間信息流關系矩陣整合成一個矩陣,能夠清楚地知道活動間交互的消息與所需要的信息資源,如圖5所示.根據(jù)圖5以及3.1中的規(guī)則和表1可以形成工作流過程交互多色圖模型,如圖6所示.
由圖7可知,G1與G2對應的值為1,G3與G1對應的值為1,HIS與RIS之間工作流交互.圖8矩陣中,若活動ai與aj之間存在信息流,則值為1,反之,為0.
圖3 活動交互矩陣[A×A]
圖4 活動間消息關系矩陣[A×A×M]
圖5 活動過程交互矩陣[A×A×F(A)]
圖6 工作流過程交互多色圖
圖7 矩陣[G×G]
圖8 活動間信息流關系矩陣[A×A×R]
本文采用多色集合理論對不同系統(tǒng)間工作流過程的交互進行了研究,將元組與多色集合相結合,提出K元組圍道矩陣以及它的析取、合取與連接運算,有利于描述對象的整體性質,通過擴展的K元組圍道矩陣能夠同時描述對象的靜態(tài)屬性與動態(tài)行為.運用該運算對工作流交互中的消息以及資源進行整合,建立了工作流交互多色圖模型.該模型中不僅體現(xiàn)了活動及其邏輯關系,還描述了與活動相關的性質與行為.但是,有關工作流過程活動間交互產生的安全問題沒有進行考慮,下一步將對工作流交互中涉及的安全問題展開研究.
1高新勤,李宗斌,杜軒.工作流管理系統(tǒng)動態(tài)變更模型與實例遷移方法研究.計算機集成制造系統(tǒng),2008,14(8):1521-1528.
2Gao XQ,Wang XP,Li Y,et al.Workflow dynamic change and instance migration approach based on polychromatic sets theory.International Journal of Computer Integrated Manufacturing,2016,29(4):386-405.[doi:10.1080/095119 2X.2015.1034181]
3朱景,李宗斌,高新勤.基于多色集合的工作流建模及路徑求取算法.西安交通大學學報,2006,40(3):348-352.
4高新勤,李言,楊明順,等.基于多色集合離析運算的工作流資源管理與配置方法.計算機集成制造系統(tǒng),2011,17(9):1905-1912.
5Gao XQ,Xu LD,Wang XP,et al.Workflow process modelling and resource allocation based on polychromatic sets theory.Enterprise Information Systems,2013,7(2):198-226.[doi:10.1080/17517575.2012.745617]
6徐亮,張莉,樊志強.一種基于UML的實時工作流建模方法研究.計算機研究與發(fā)展,2010,47(7):1184-1191.
7楊書新,王堅,馬福民.工作流管理系統(tǒng)的流程柔性動態(tài)變更研究.計算機應用,2006,26(11):2736-2738.
8葛季棟,胡海洋,周宇,等.一種基于不變量的工作流協(xié)同模型分解方法.計算機學報,2012,35(10):2169-2181.
9趙靜,趙衛(wèi)東.基于工作流日志挖掘的流程角色識別.計算機集成制造系統(tǒng),2006,12(11):1916-1920.[doi:10.3969/j.issn.1006-5911.2006.11.032]
10趙衛(wèi)東,戴偉輝.基于角色的跨組織工作流研究.系統(tǒng)工程與電子技術,2003,25(8):954-958.
11趙衛(wèi)東,黃麗華.面向角色的多agent工作流模型研究.管理科學學報,2004,7(2):55-62.
12高新勤,李宗斌,趙姍姍.基于多色集合理論的概念設計建模和推理技術研究.中國機械工程,2006,17(3):255-259.
13Li ZB,Xu LD,Zhao SS.Polychromatic sets theory and its application in enterprise information systems.In:Tjoa AM,Xu L,Chaudhry SS,eds.Research and Practical Issues of Enterprise Information Systems.IFIP International Federation for Information Processing.Boston,MA:Springer,2006.721-728.
14維·維·巴伏洛夫,李宗斌,高峰.多色集合在加工系統(tǒng)建模與分析時的應用.西安交通大學學報,2001,35(9):926-929,986.
15李丹.基于多色集合的冷鏈物流倉儲流程優(yōu)化研究[碩士學位論文].西安:陜西科技大學,2014.
16楊敏,王曉華,冉梅梅.基于多色集合理論的兩系統(tǒng)間互操作方法.計算機系統(tǒng)應用,2017,26(9):128-134.[doi:10.15888/j.cnki.csa.005930]
17李春玲.基于多色圖理論的離散制造企業(yè)生產物流系統(tǒng)建模與優(yōu)化[碩士學位論文].沈陽:沈陽大學,2014.
18王頌,李云龍,陳富民.基于多色集合的飛機連接裝配工藝規(guī)劃與資源配置.計算機集成制造系統(tǒng),2013,19(2):411-420.