一、工作流模型概念到Petri網(wǎng)的映射
Aalst在Petri網(wǎng)的基礎(chǔ)上定義了WF-net,即工作流網(wǎng)。在工作流網(wǎng)中庫所對應(yīng)過程中的條件,變遷對應(yīng)過程中的可執(zhí)行活動,庫所中的托肯代表一個過程實例。
定義2.1(工作流網(wǎng)WF-net):一個Petri網(wǎng)WF=(P,T;F)是一個工作流網(wǎng)當且僅當滿足如下兩個條件:
(1)WF-net中存在兩個特殊庫所:庫所i是輸入庫所,即·i=○,庫所o是輸出庫所,即o·=○;
(2)如果在庫所o和i之間增加一個變遷t*(即t*·={o}且·t*={i}),則得到的Petri網(wǎng)WF’是強連通的。
從上面兩個約束條件可以看出一個工件流網(wǎng)必須有一個起始庫所和一個終止庫所,進入起始庫所的托肯代表著一個過程實例的開始,而到達終止庫所的托肯則意味著一個過程的結(jié)束。所有的活動與條件都位于起始點到終點的有向路上,不存在處于孤立狀態(tài)的活動和條件。
二、工作流網(wǎng)的正確性分析方法
為了實現(xiàn)預(yù)期的業(yè)務(wù)目標,再定義了基于Petri網(wǎng)的工作流模型后,還要在被工作流管理系統(tǒng)執(zhí)行之前對其進行分析。在對工作流網(wǎng)分析時,首先是如何判定一個工作流網(wǎng)在結(jié)構(gòu)上是正確的。
工作流網(wǎng)的可靠性描述的是工作流網(wǎng)的動態(tài)性質(zhì),保證對于任何工作流實例,在沒有異常的情況下,處理過程都能夠正確終止。下面我們介紹一種借助Petri網(wǎng)的可達樹,來對工作流網(wǎng)的可靠性進行分析的方法。
可達樹分析算法:
對于一個Petri網(wǎng)PN=(P,T;F,M0),它的可達樹是由標識M(標識值可以為ω,ω∈N且趨于無窮)作為節(jié)點構(gòu)成的樹,結(jié)點之間用T元素標注。
(1)根節(jié)點r由M0標注。
(2)一個標注為M的節(jié)點x是一個葉子節(jié)點當且僅當不存在t∈T:t在M是可實施的或者在從r到x的路上存在一個節(jié)點y≠x且節(jié)點y也是由M標注的。
(3)如果一個標注M的節(jié)點x不是一個葉子節(jié)點,那么對于所有t∈T使得在M下可實施的t實施而產(chǎn)生一個新的節(jié)點y且在從x到y(tǒng)新產(chǎn)生的弧上標注t。y節(jié)點標注的標識M’計算方式如下:
對于M’存在兩種情況:
在從o到y(tǒng)的路上,如果存在標注為M’’的節(jié)點z≠y且
那么
其他情況,M’=M1’’
如果存在M(p)=ω,就意味著位置p中的標記(token)數(shù)在接下來的變遷中將會一直增大,直至趨于無窮,因此是錯誤的,轉(zhuǎn)到(5),否則轉(zhuǎn)到(2)直至生成一個完整的樹。
(4)設(shè)L為所有葉子節(jié)點的集合。進行如下判斷:
如果說明該系統(tǒng)可以正常終止
如果說明該系統(tǒng)會出現(xiàn)死鎖,死鎖發(fā)生在位置P:M(p)≠0
如果說明該系統(tǒng)存在多余的位置,無法正常終止。
(5)算法結(jié)束。這種方法雖然能很好地對工作流網(wǎng)的可靠性進行分析,然而依然存在問題。我們知道一個含有m個元素的Petri網(wǎng)模型的狀態(tài)空間有2m個,試圖通過分析可達標樹來研究其性質(zhì)時間和空間的復(fù)雜度非常大,因此我們將在下節(jié)討論解決的方法。
三、層次化建模及性質(zhì)分析
細化理論的基本思想就是由已知或容易分析的簡單網(wǎng)(這一簡單Petri網(wǎng)的活性、有界性和可達性等比較容易驗證)開始,逐步地用更加詳細的子網(wǎng)代替初始簡單網(wǎng)中的變遷或庫所,而新加進去的子網(wǎng)并不改變原先網(wǎng)的某些性質(zhì)。這種“自頂向下”、“逐步求精”的過程可重復(fù)進行到建模人員想要的細化程度。
在本文中用一個子網(wǎng)代替層次Petri網(wǎng)中非基本受遷/庫所的過程稱之為細化,根據(jù)細化元素的不同可分為變遷細化和庫所細化;用一個非基本變遷/庫所代替層次Petri網(wǎng)中一個子網(wǎng)的過程稱之為抽象。
以變遷細化為例,用□表示基本變遷,表示非基本變遷,○表示基本庫所,◎表示非基本庫所,如圖所示。
用基于層次Petri網(wǎng)建立復(fù)雜系統(tǒng)的工作流模型時,采用從上到下逐層細化的方法首先在最高層次上建立模型,然后再在下一層次上對系統(tǒng)的各個復(fù)合任務(wù)進行單獨模擬,建立一個相對獨立的子工作流系統(tǒng),完成層次化的工作流模型,做到把握整體結(jié)構(gòu)基礎(chǔ)的同時又不丟失一個子系統(tǒng)的細節(jié)信息。對于常用的基本業(yè)務(wù)單元,可以建立Petri網(wǎng)模型庫,直接引用這些模型庫完成層次工作流網(wǎng)。
層次概念也可以用來判定一個工作流網(wǎng)的可靠性。給定一個復(fù)雜的層次化的工作流模型,通過單獨分析每一個子工作流網(wǎng)來驗證其可靠性是可能的,這可通過下面的定理和推論來進行。
定理3.1:工作流網(wǎng)WF1=(P1,T1;F1),WF2=(P2,T2;F2),WF3=(P3,T3;F3)=若WF1和WF2都是可靠的,且(WF1,i1)是安全的,則WF3也必然滿足可靠性。
類似的,對庫所細化我們也可以得到同樣的結(jié)論:
定理3.2:工作流網(wǎng)WF1=(P1,T1;F1),WF2=(P2,T2;F2),WF3=(P3,T3;F3)=若WF1和WF2都是可靠的,且(WF1,i1)是安全的,則WF3也必然滿足可靠性。
四、 結(jié)論
本文通過對我國電子商務(wù)的實際需求分析發(fā)現(xiàn),跨部門流程的形成、跨部門流程的描述和跨部門流程的重組是跨部門流程管理的主要內(nèi)容。通過對工作流模型和建模技術(shù)深入研究和學習,介紹了一種基于Petri網(wǎng)的工作流模型——工作流網(wǎng),提出了一種支持電子商務(wù)的層次化建模方法。針對一些大型、復(fù)雜的系統(tǒng),利用細化理論,包括變遷細化和庫所細化,對其進行層次化建模和可靠性分析。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。