• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    工作流模型設計

    發布: 2008-4-21 11:15 | 作者: 葛志春 | 來源: 希賽網 | 查看: 98次 | 進入軟件測試論壇討論

    領測軟件測試網
    關鍵字:工作流模型
    摘要:工作流模型是組織機構經營過程的模型表示,但由于工作流建模理論研究的相對滯后,現行工作流管理系統中普通存在語義不夠豐富、柔性不好、表示不直觀等問題。為此作者在開發UniFlow工組流管理系統時,設計了一套基于有向圖理論的工作流模型,該模型有效的解決了這些問題。本文主要從工作流模型理論出發向讀者介紹了本模型的設計思想。文章首先詳細介紹了工作流模型的定義和組成關系,然后詳細介紹了基于有向圖理論的工作流模型的主要功能和設計思想。 

    關鍵詞:工作流 工作流模型  有向圖  過程

     

    1 引言

      工作流模型是對組織機構業務過程的抽象表示。工作流模型是整個工作流管理系統的基礎,它的確定性保證了系統內各組成部分之間交互的一致性,也決定了一個工作流管理系統從設計開發到運行實施的諸多環節。不同的工作流模型也就形成了不同的工作流管理系統。相對工作流產品的實現技術和發展而言,工作流建模理論的研究相對滯后,在建模方法上還沒有形成比較系統化的理論體系。目前已有的建模方法主要有:基于活動網絡的建模方法、基于Petri網的建模方法、基于語言行為理論的建模方法、基于活動與狀態圖的建模方法和基于擴展事務模型的建模方法等。但這些工作流模型普遍都存在以下問題:(1)模型語義不夠豐富,表示復雜問題的能力不足;(2)P偷娜嶁圓緩,不容覡瞀理灾u蔥泄討諧魷值牟蝗范ㄐ暈侍;?)表示方法不夠直觀等。

      在信息管理自動化的環境下,工作流模型必須采用簡單、直觀、又具有較強描述能力的面向組織用戶的模型。因此,作者設計UniFlow工作流管理系統時,在參照工作流管理聯盟(Workflow Manangement Coalition 簡稱:WfMC)工作流理論的基礎上,博采眾長,建立了基于有向圖理論的UniFlow工作流管理系統工作流模型,該模型有效的解決了工作流模型中普通存在的問題。下文主要向讀者詳細介紹這一模型的相關理論與設計思想。

    2 工作流模型概要

      企業、政府機關等組織機構是一個復雜的系統,用過程的觀點來看待這些組織機構,組織機構的組成元素就是過程,過程的組成元素就是活動;工作流模型就是對這些業務過程的抽象表示。

      過程是指為了完成組織機構的某個經營目標或任務,而按某種順序聯結在一起的一系列活動。過程的主要屬性有:觸發事件、過程結果、執行規律集。過程的執行規律集用來描述過程內部各活動、子過程之間的控制流程。執行規律集由順序、并發、與、或、循環等五種連接關系組成,通過這五種連接可以完整的描述活動與活動之間的邏輯關系。

      活動是指一種變換或操作,是組織機構過程的最基本單元。一個活動的屬性由功能輸入、輸出,資源輸入、輸出、控制輸入、輸出和活動的描述等組成。功能輸入、輸出是指活動中要運作、產生的組織機構對象,它們描述了組織機構過程的物流,所以通常與上級過程的執行規律集有緊密聯系。資源輸入、輸出是指活動執行所占用、釋放的資源,包括執行活動所必須的設備、物料、人員等,它們不僅可以在一定程度上描述不同活動之間的競爭關系,還可以用于實現對過程的分析和優化;控制輸入是指對活動進行控制和限制的信息單位或對象;控制輸出是活動結束狀態的信息單位集合;活動描述是與活動執行有關的具體信息,如活動的編號、名稱、優先級、成本核算單位、開始時間、完成期限、執行者、負責人、所需資源等。

      功能輸入、資源輸入、控制輸入統稱為活動的前條件,前條件對活動的發生有制約作用,只有所有的前條件都滿足了,活動實例才能進入“活動”狀態;功能輸出、資源輸出、控制輸出統稱為活動的后條件,后條件影響著后繼活動實例的發生。

      一個完整的工作流模型主要有工作流表示方法、工作流元模型、工作流模型接口和建模工具組成。

    3 工作流模型的有向圖表示

      組織機構的一個完整的業務流程是由一系列最基本的生產活動按照一定的邏輯順序和規則組成的,這些生產活動與他們之間的邏輯關系可以直觀的映射成為一個由節點和連接弧組成的有向圖。有向圖中的節點即表示一個可執行的活動單元,連接于兩個節點之間的有向弧即表示活動間的先后順序關系。

      3.1 有向圖理論基礎

      對基于有向圖理論的工作流模型,我們作如下定義:

      1)有向圖G ={N, L}為一個二元組,N= {n1、n2、n3….ns } 為節點集合,L= {l1,l2,l3….ls}為連接弧集合,其中li=(nj, nk)為從nj指向nk的連接弧,nj,nk∈N。
      2)對于任意ni,nj∈N.若有連接弧l = (ni ,nj) ∈L,則ni為nj的一個前驅節點,nj為ni的一個后繼節點,l稱為nj的一個輸入連接弧,或者ni的一條輸出連接弧。
      3)若N’包含于N,且N’={n’|(n’ ,n) ∈L} ,則N’為節點n的前驅節點集,記為Pre (n);
      4)若N’包含于N,且N’={n’|(n ,n’) ∈L} ,則N’為節點n的后繼節點集,記為Post (n);
      5)節點狀態:對于任意n∈N,有狀態函數State (n) = {0, 1},當節點n處于非執行狀態時,State (n) = 0;當節點n處于執行狀態時State ( n )=1。初始時刻,任意State(n) = 0。
      6)轉移函數:對于任意l∈L,有轉移函數Trans ( l )={0,1};如果Trans ( l ) = 1,則連接弧l容許發生轉移(是否發生轉移,則要取決于后面的演進規則):如果Trans ( 1 ) = 0,則連接弧不能發生轉移。
      7)演進規則:有向圖的演進規則是由節點狀態的改變與連接弧發生轉移這兩個動態因素相互作用而完成的,因此,規則包含如下兩個方面:
     。1)對于任意n∈N
        ● 當State(n) =0時,若存在l=(n’,n)發生轉移,則State(n)=1;
        ● 當State(n)=1時,若節點n執行完畢,則State (n)=0;
     。2)對于任意l=(n,n’) ∈L
        ● 當State(n) 從1變為0時,若Trans(1)=1,則連接弧l發生轉移;
        ● 若Trans(1)=0,則連接弧l不發生轉移,直至下一次State(n)從1變為0的時候再使用此規則。

      3.2 節點類別

      在基于有向圖的工作流模型中有向圖的節點代表了具有如下特征的多種實體:

      1)與業務中實際存在的事件或活動有著直接的對應關系;
      2)本身有著具體的或人為定義的含義;
      3)能與其他節點形成一定的邏輯關系;

      因此,區分不同類別的節點、對節點進行具體的類別定義不僅可以明確節點的含義,同時也增強了模型的語義。在這里我們賦予節點有如下幾種類型的定義: 活動、子過程、開始、結束、同步節點。

      3.2.1 活動

      活動是指在一個不間斷的時間間隔內為實現某一目標由人工或系統自動完成的一個原子任務,它是組成業務流程的基本單元。一個工作流管理系統的所有活動的集合覆蓋了組織中各類業務流程的全部細節;顒影醋詣踊潭瓤煞譃閮深悾喝斯ば突顒雍妥詣有突顒。人工型活動是通過工作表(任務表)的生成來通知相關人員,依靠人員手工或啟動應用的方式來完成。自動型活動則是在工作流的驅動下直接驅動應用或利用自動化設備來完成的活動;這種自動型活動充分體現了工作流管理系統所實現的組織內部不同應用間的過程集成。

      3.2.2 子過程

      作為組成業務流程的最基本單元,活動是指不能被進一步分解的原子單元。但在流程較復雜時活動結點數也必然增加,且關系復雜,因此,我們引入了子過程的概念。子過程是一類能夠分解的節點類型,它的內部可以包含所有元素類型,實質上是一個子業務流程。子過程的引入大大增強了模型的表達能力,使模型具有了層次的概念,并支持自頂向下的建模過程。同時,我們規定子過程可以出現在任何層次。

      3.2.3 開始節點與結束節點

      開始節點和結束節點是兩個標志性的節點,用來標識流程的開始和結束。一個工作流程具有唯一開始點和結束點。

      3.2.4 同步節點

      在將一個實際的業務流程映射成為工作流模型時,很重要的一點,就是要保證活動間的邏輯關系不變!芭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則為永真型條件,否則為不定型條件。對于不定型條件根據實際情況取值。在工作流模型設計時我們將連接弧分為三類:普通控制連接弧、條件連接弧和條件設定連接弧。

      3.3.1  普通控制連接弧

      普通控制連接弧,即永真型連接弧,它不需要任何條件的判斷,只要前驅節點執行完畢,即可激活后繼節點。

      3.3.2  條件連接弧

      條件連接弧,即不定型連接弧,它的轉移函數的取值是需要在具體的工作流實例執行過程當中由工作流引擎或人工加以判斷來確定的。如果條件成立即可執行后繼的節點。

      3.3.3  條件設定連接弧

      條件設定連接弧可以用來動態的設定活動的執行條件、完成條件和時間要求等條件。工作流模型通過動態的設定這些執行和判斷條件,可以大大提高工作流管理系統的柔性。

      3.4 工作流模型的設計 

      從以上理論,我們可以得出工作流模型中的元素可以分為節點、連接弧和狀態三大類;利用面向對象的繼承性,我們設計了如圖1所示的工作流模型。該工作流模型定義了三個基類:節點類、無條件連接弧和狀態類。由節點類可以派生出7個子類:人工型活動、自動型活動、同步節點、協調節點、開始、結束,子過程。由無條件連接弧可以派生出條件連接弧和條件設定連接弧兩個子類。子過程由除節點類外的各個類聚合而成(包括子過程本身)。


    圖1、工作流模型設計

    4、工作流模型定義

      工作流生成是工作流建模的核心,它根據用戶在建模工具界面的輸入產生可被工作流引擎解釋執行的工作流。在工作流生成模塊設計時,必須做兩個方面的工作:

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: 模型 設計 工作流

    21/212>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>