文/趙九聞 劉東榮 楊 雷
CPN可以表示成九元組形式,即CPN=(∑,P,T,A,N,C,G,E,I) 中,∑:為顏色(Color)的非空有限集合,稱作顏色集(Color set);P:為描述系統(tǒng)庫所(Place)的有限集合;
T:為變遷(Transition)的有限集合;
A:為?。ˋrc)的有限集合,滿足;P∩
T=P∩A=A∩T=覫
N:A→(P×T∪T×P)為節(jié)點(Node)有限集函數(shù);
C:(P∪T)→∑ss,是著色函數(shù)(color function),其中∑ss是∑的有限子集;
G:T→表達(dá)式,是T的警衛(wèi)函數(shù)(guard function),且滿足:坌t∈T:[Type(G(a))=Bool∧Type(Var(G(t)))哿∑],Bool={true,false};
E:A→表達(dá)式,是弧表達(dá)式函數(shù)(arc expression functions),且滿足坌a∈At:[Type(E(a))=C(p(a))MS∧Type(Var(E(a)))哿∑];
I:為P→表達(dá)式的初始標(biāo)識,且滿足坌p ∈P:[Type(I(p))=C(p)MS ∧Var(I(p))=覫].
說明:SMS表示集合S上的多重集;Type(v)表示變量 v 的類型;Var(expr)表示表達(dá)式expr的變量集合;P(a)表示與弧a相聯(lián)系的庫所。
CPN與普通網(wǎng)有兩個最基本和重要的區(qū)別
(1)CPN的著色類型的標(biāo)定表示系統(tǒng)中不同類型的資源,同時每個庫所都與特定的顏色集綁定,表示該庫所中只能存放相應(yīng)顏色的token,在弧上和變遷上存在著條件表式和函數(shù),說明弧的權(quán)值和顏色屬性以及變遷觸發(fā)的約束條件。標(biāo)記的顏色可以是任意復(fù)雜的數(shù)據(jù),從而大大簡化了系統(tǒng)的復(fù)雜度。
(2)CPN具有層次結(jié)構(gòu),這可以從整體到局部,由粗到精把系統(tǒng)分頁,逐步細(xì)化,突出重點。通過層次的使用,使得CPN成為處理大型應(yīng)用的功能強(qiáng)大的建模工具。同時,它又是少有的能同時用于驗證系統(tǒng)功能邏輯的正確性和評估系統(tǒng)性能的建模語言。但由于token的引入使得模型的可讀性降低。
工作流模型(Workflow Model),也稱為過程定義(Process Definition)是用工作流描述語言來描述和定義業(yè)務(wù)流程,它可以是形式化的過程定義語言,過程執(zhí)行腳本及過程中各個活動對象結(jié)構(gòu)關(guān)系,也可以是簡單地規(guī)定用戶間信息傳輸?shù)囊唤M路由命令。工作流模型是工作流執(zhí)行服務(wù)的管理和執(zhí)行對象。
工作流模型邏輯結(jié)構(gòu)表現(xiàn)為一系列任務(wù)及其相互關(guān)系,對于每個任務(wù)可能引用組織模型中的角色或資源來完成任務(wù)的執(zhí)行,也可能調(diào)用外部應(yīng)用來實現(xiàn)對于任務(wù)數(shù)據(jù)的訪問。我們從四個相互獨立的角度來描述工作流的邏輯結(jié)構(gòu)。每個角度均能獨立地反映工作流。這四個角度如圖一所示。
如果我們將工作流模型比作一個四面體如圖一,那么它具有四個側(cè)面,無論從它哪一個面的垂直方向上看,都能夠看到一個完整的三角形,都能反映出工作流模型的一個個角度。下面我們將從每個角度對工作流模型加以定義。
過程角度(The Process Perspective):工作流模型從過程角度考察表現(xiàn)為任務(wù)和狀態(tài)的集合及其相互關(guān)系。工作流模型每次執(zhí)行都表現(xiàn)為一個任務(wù)實例的序列,也表現(xiàn)為一個工作流狀態(tài)的序列。這個序列是任務(wù)的執(zhí)行路由,也是任務(wù)間的順序關(guān)系。在工作流模型中,存在四種可能的任務(wù)執(zhí)行路由結(jié)構(gòu):并行路由,順序路由,循環(huán)路由,選擇路由。任務(wù)的四種執(zhí)行路由能夠表達(dá)復(fù)雜的業(yè)務(wù)流程,因此,從過程角度考察,我們可以發(fā)現(xiàn)工作流模型就是企業(yè)的業(yè)務(wù)流程的抽象定義。
數(shù)據(jù)角度(The Data Perspective):工作流模型從數(shù)據(jù)角度看是在工作流模型中生成和消耗的所有相關(guān)數(shù)據(jù)的集合。這些數(shù)據(jù)W fMS能夠訪問的數(shù)據(jù)又稱為“案例數(shù)據(jù)”,包括工作流實例中每個任務(wù)的就緒條件數(shù)據(jù),執(zhí)行條件數(shù)據(jù),執(zhí)行處理數(shù)據(jù),其中執(zhí)行處理數(shù)據(jù)一般分為可被WfMS理解和不可理解兩種類型,前者一般可以通過表單的形式察看,但是對于那些數(shù)據(jù)結(jié)構(gòu)復(fù)雜而無法被WfMS理解的數(shù)據(jù)結(jié)構(gòu),W fMS不予顯示。應(yīng)用數(shù)據(jù)是工作流引擎不加訪問的數(shù)據(jù),它可由外部應(yīng)用訪問。
工作流模型是以業(yè)務(wù)流程為中心來進(jìn)行設(shè)計的,因此,所有的工作流數(shù)據(jù)均在工作流執(zhí)行中生成和消耗。如果將所有這些消耗和生成的數(shù)據(jù)提取出來,我們將發(fā)現(xiàn)這些數(shù)據(jù)將構(gòu)成一個以數(shù)據(jù)為中心的信息管理系統(tǒng)??梢奧fMS業(yè)務(wù)流程管理的數(shù)據(jù)基礎(chǔ)。
資源引用角度(The Used Resources Perspective):從資源引用定義角度看工作流模型是指僅考察在每個任務(wù)的參與者的引用定義,而屏蔽掉其他的考察對象。參與者指的是能夠執(zhí)行任務(wù)的組織單元,人力資源,角色,機(jī)器資源等。對于每個需要參與者執(zhí)行才能夠完成的任務(wù),工作流模型中都要給出引用定義,僅從資源引用角度考察,工作流模型就是一個不同的資源在業(yè)務(wù)流程中的分布和部署,包括人力資源和企業(yè)的物質(zhì)資源在業(yè)務(wù)流程中的分布和部署。這是企業(yè)的人力資源系統(tǒng)的職責(zé)之一,但是人力資源僅能夠靜態(tài)地反映這種分布和部署,而不能動態(tài)地為資源分配適當(dāng)?shù)娜蝿?wù),而這又是W fMS的優(yōu)勢。
應(yīng)用調(diào)用角度(The Invoked Applications Perspective):如果屏蔽掉其它考察對象,僅從工作流實例執(zhí)行中對外部應(yīng)用調(diào)用角度來考察,工作流模型是一個對于外部應(yīng)用的調(diào)用序列,可以發(fā)現(xiàn)企業(yè)的所有的相互獨立的應(yīng)用在工作流模型的調(diào)用之下粘合成為一個功能更為強(qiáng)大的系統(tǒng),WfMS為企業(yè)的業(yè)務(wù)應(yīng)用系統(tǒng)的整合和集成提供了基礎(chǔ)平臺。
基于CPN的工作流模型(Workflow model based on CPN),也稱為基于CPN的過程定義(Workflow definition based on CPN),是利用CPN的網(wǎng)結(jié)構(gòu)來為業(yè)務(wù)建模,是一個以CPN為中心的工作流網(wǎng),它的結(jié)構(gòu)符合的邏輯和語義特征。它是基于CPN的工作流執(zhí)行服務(wù)管理和執(zhí)行的對象,基于CPN的工作流模型能夠簡練地描述業(yè)務(wù)流程,并具有可驗證性。