在將一個實際的業務流程映射成為工作流模型時,很重要的一點,就是要保證活動間的邏輯關系不變!芭c”和“或”是兩類最基本的邏輯關系,它是表達各種復雜關系的基礎,工作流模型必須具備表達“與”和“或”關系的能力。
我們在前面定義的演進規則,對于任意一個處于非執行狀態的節點n,只要有一條輸入連接弧發生了轉移,那么該節點即可被執行,這實際上就表達了“或”的關系。即∪{n’∈Pre(n),l=(n’,n) ∈L,Trans(l)=1且l發生轉移}。
對于“與”的關系增加同步節點S來表示,它對活動起協調、同步的作用。我們規定,同步節點S的動態行為完全遵循演進規則,所不同的是,當S處于執行狀態時,即State(S)=1時,將判斷它的所有輸入連接弧是否發生轉移;若是,則S的狀態就由1變為0,即S執行完畢;否則S仍處于等待狀態,并繼續判斷,直至滿足上面的條件后才執行完畢、發生轉移,State(S)=10。這意味著同步節點將使它的所有前驅節點都執行完畢后才繼續推進流程,這實際上就表達了“與”的關系∩{n’∈Pre(n),l=(n’,n) ∈L,Trans(l)=1且l發生轉移。
3.3 連接弧
連接弧作為有向圖中的另一種組成元素表達了有向圖中不同節點元素之間的邏輯關系。它從前驅節點指向后繼節點,體現了節點狀態的轉移和有向圖的演進。連接弧發生轉移根據條件Trans(l)進行,如果Trans(1)≡1則為永真型條件,否則為不定型條件。對于不定型條件根據實際情況取值。在工作流模型設計時我們將連接弧分為三類:普通控制連接弧、條件連接弧和條件設定連接弧。