工作流資料模式-可見性模式8種
共有8種可見性模式,它們建立起不同工作流元件級別的變數作用範圍。
圖C-12 工作流資料可見性模式
- 活動變數:在單個活動上定義變數,變數的作用範圍為該活動。
- 塊活動變數:在塊活動上定義變數,變數的作用範圍為塊活動所包含的所有子活動。
- 活動範圍變數:為一定範圍內的活動定義變數,變數的作用範圍為範圍內的所有活動。
- 多例項變數:在多例項活動上定義變數,變數的作用範圍為所有屬於該活動的工作項。
- 流程例項變數:為流程例項定義變數,變數的作用範圍為該流程例項裡所有的活動。
- 資料夾變數:定義變數集合,當啟動流程例項時,流程例項與該變數集合繫結,變數的作用範圍為所有共享該變數集合的流程例項。
- 流程定義變數:為流程定義定義變數,變數的作用範圍為所有屬於該流程定義的流程例項。
- 環境變數:變數是應用級別的業務資料、跨業務系統的資料。
活動變數(WDP_1: Task Data)
描述
活動能夠定義變數,在一個流程例項裡,該變數只能被其活動例項所使用。
圖C-13 活動級別的資料可見性
活動變數與業務資料許可權控制
在應用工作流系統時,我們經常碰到這樣的問題:一個流程例項中的不同活動對業務資料擁 有不同的許可權,如圖C-14所示。
圖C-14 與流程相關的業務資料許可權
在執行請假申請活動時,申請者編輯請假人、天數和原因3個欄位;而到審批活動時,審批 者增加了一個可編輯的審批意見欄位,但其餘3個欄位變為只讀欄位。我們將這類問題統稱為與 流程相關的業務資料許可權控制。
此時,我們在業務系統裡引入業務許可權角色的概念,通過該角色隔離開工作流系統與業務數 據許可權,即業務資料許可權的管理屬於業務系統範圍(由業務系統實現)。在定義好業務系統的權 限角色後,我們通過活動級別的變數將流程中的具體活動與業務許可權角色繫結,這樣就實現了流 程活動與業務資料許可權的掛接,同時又保持了工作流系統的單一職責。
圖C-15 流程相關的業務資料許可權控制
塊活動變數(WDP_2: Block Data)
描述
塊活動能夠定義變數,在一個流程例項裡,其所包含的子活動例項能夠使用這些變數。
圖C-16 塊活動級別的資料可見性
應用
在塊活動為子流程的情況下,塊活動級別變數最重要的職責就是初始化子流程例項:在父流 程例項裡為子流程例項的第一個活動指定參與者,傳遞子流程例項所必需的業務資料。
活動範圍變數(WDP_3: Scope Data)
描述
一定的活動範圍能夠定義變數,在一個流程例項裡,該範圍所包含的活動例項能夠使用該 變數。
圖C-17 活動範圍級別的資料可見性
活動範圍和子流程在概念上比較相似,都是包含一系列的子活動,它們之間的差別在於:子 流程具有比較獨立的上下文(例如子流程由另外一個部門執行)和執行環境,能夠複用,而活動 範圍則是對流程中活動的一種分組,脫離開當前流程的上下文,這些活動無法執行。
多例項變數(WDP_4: Multiple Instance Data)
描述
多例項活動能夠定義變數,在一個流程例項裡,該活動的每一個工作項都能夠初始化該變數, 並獨立使用。
什麼情況下會應用到多例項活動?當一個活動需要多人共同參與並且實際執行過程中互不 影響時,我們會使用多例項活動對該業務場景進行建模。重要的有兩點:一是每個工作項一定具 有相同的業務上下文;二是執行過程各自獨立。對多例項活動而言,最重要的就是在各個工作項 執行完畢後進行資料的彙總。根據不同的業務場景,彙總策略不同。例如在企業決策裡,當多人 同時決策時,採取少數服從多數;而在進行員工某項關鍵技能考核時,採用一票否決制。
圖C-18 多例項活動級別的資料可見性
流程例項變數(WDP_5: Case Data)
描述
流程定義能夠定義變數,在一個流程例項裡,該流程例項中的所有活動例項都能夠使用這些 變數。
圖C-19 流程例項級別的資料可見性
應用
流程例項變數是應用最廣泛的工作流變數,一方面是因為很多工作流系統只支援流程例項級 別的工作流變數,另一方面是整個流程例項所共享的上下文依賴於流程例項變數的建立,存在兩 個最重要的流程例項變數:一個是業務領域模型的唯一識別符號ID,另外一個是該領域模型對應業 務表單的URL。
資料夾變數(WDP_6: Folder Data)
描述
流程定義能夠定義一組變數,我們把這些變數的集合稱為資料夾,當啟動一個流程例項時, 流程例項能夠與這些變數繫結,一旦繫結,該流程例項裡的所有活動例項就能夠使用該資料夾裡 的變數。
圖C-20 資料夾級別的資料可見性
應用
不同的流程例項之間能夠選擇性的共享資料。如建立與流程相關的知識庫應用。如圖C-21 所示。
圖C-21 使用資料夾變數建立活動與知識庫的關聯
流程定義變數(WDP_7: Workflow Data)
描述
流程定義能夠定義變數,所有屬於該流程定義的流程例項都能使用這些變數,這些變數在其 所有流程例項的活動間是共享的。
圖C-22 流程定義級別的資料可見性
環境變數(WDP_8: Environment Data)
描述
流程例項裡的活動能夠在執行期使用外部環境的變數,這裡的外部環境包括了外部資料倉庫 (資料庫)、外部應用和外部服務等。
圖C-23 環境級別的資料可見性
應用
該模式強調工作流系統的整合能力,工作流系統在執行時需要具備從外部獲取和交換資料的 能力。
本文來源:http://www.cnblogs.com/x3d/,轉載請註明。