工作流概念的提出解決了復雜系統不斷演化和開放性的需求,其最大的優點是實現了應用邏輯與過程邏輯的分離,可以在不修改具體功能實現的情況下,通過修改過程模型來改變業務流程。為了規范工作流管理系統的業務,工作流管理聯盟(Workflow Management COAlition-WfMC)給出工作流系統的參考模型、接口和執行過程。工作流系統中的核心部件是工作流引擎,通過引擎的調度來推動流程的順利流轉,引擎的品質直接影響到管理系統的效能。工作流管理技術作為工作流管理系統的重要思想方法,越來越受到以計算機協同工作為主體的各種信息系統的青睞,已經被廣泛應用到多個行業的系統研制過程中,極大地降低了開發成本和風險,提高了系統的穩定性和擴展性,使得工作流管理系統更加面向市場、面向客戶,更能提高企業的業務處理水平。
一、流程模式及工作流建模工具Petri網
流程模式用來表示工作流生成中的業務知識,包括業務目標、應用場景和解決方案3個部分。Petri網是圖形化的過程描述工具,Petri網分析方法可用于靜態分析也可用于動態分析,對具有并行性、分布性、并發性、異步性、不確定性的信息系統有很好的處理效率。Petri網主要由庫所和變遷組成,通常用圓圈表示庫所,用矩形表示變遷,用黑點表示標記且庫所可以容納標記。Petri網中的庫所和變遷采用有向弧連接,共有兩種類型的弧:從庫所到變遷;從變遷到庫所。從庫所到庫所,或從變遷到變遷的弧都是不允許的。變遷、庫所和標記是Petri網中的三要元素,Petri網中的變遷表達事件處理、操作和轉換過程。Petri網中的庫所表達的是過程狀態或者是階段狀態。整個工作流處理過程肯定要有一個處理對象,這個被工作流處理的對象就是用標記來表示的,它是工作流系統啟動時的必不可少的條件之一。
二、基于流程模式的工作流參考模型
工作流參考模型是通過確定通用工作流應用體系結構的接口得到的,這些接口可以使產品在不同的結構層次上協同工作。所有工作流系統都包含一系列的公共組件,組件間采用一套定義好的方式進行協作;不同的產品在這些公共的組件中會表現出不同的性能。為了實現不同工作流產品間的協同工作,需要在這些組件間制定一套標準的接口和數據交換格式。通過實現這些標準接口,可以達到產品間的協同工作,從而確定市場上產品能在各個層次上功能一致。
1.工作流參考模型的五類接口
接口1:工作流執行服務與工作流建模工具間的接口,為實現對工作流過程定義的訪問(如建立、修改、刪除等)提供了一致的方法。接口2:工作流服務和用戶應用之間的接口,這是最主要的接口規范,它約定所有客戶方應用和工作流服務之間的功能訪問方式。接口3:工作流引擎和應用服務間的直接借口,其目標是集成工作流和其它應用服務而無需考慮原有工作流管理系統。接口4:工作流管理系統之間的互操作接口,用于描述不同工作流產品的互操作性。接口5:工作流服務和工作流管理工具之間的接口,用于系統管理、應用訪問工作流執行服務。
2.參考模型五類接口的功能
(1)工作流執行服務
工作流執行服務是指由一個或者多個工作流引擎組成,以創建,管理和執行工作流實例,應用程序可能通過工作流應用程序接口(WAPI))與這個服務進行交互。工作流執行服務的主要功能是:解釋流程定義,生成過程實例,并管理其實施過程;依據工作流相關數據實現流程活動導航,包括順序或并行操作、期限設置等;與外部資源交互,完成各項活動;維護工作流控制數據和工作流相關數據,并向用戶傳送必要的相關數據。
(2)工作流引擎
工作流引擎是指為工作流實例提供運行時執行環境的軟件服務或“引擎”。主要提供以下功能:對過程定義進行解釋;控制過程實例的生成、激活、掛起、終止等;控制過程活動間的轉換,包括串行或并行的操作、工作流相關數據的解釋等;支持用戶操作的界面;維護工作流控制數據和工作流相關數據,在應用或用戶間傳遞工作流相關數據;提供用于激活外部應用并提供工作流相關數據的界面;提供控制、管理和監督的功能。
(3)過程定義工具
過程定義工具是管理流程定義的工具,它可以通過圖形方式把復雜的流程定義顯示出來并加以操作。流程定義工具同工作流執行服務交互,為用戶提供一種對實際業務過程進行分析、建模的手段,并生成業務過程的可被計算機處理的形式化描述(過程定義)。這也是工作流系統建立階段的主要任務。不同的工作流產品,其建模工具輸出格式是不同的。接口1不僅使工作流的定義階段和運行階段分離,使用戶可以分別選擇建模工具和執行產品,并且提供了對工作流過程進行協同定義的潛在能力。
(4)管理和監控工具
管理和監控工具主要負責對組織機構、角色等數據的維護管理和工作流實例的運行進行監控。管理員可以通過工作流管理工具獲得目前各個活動的運行情況報告,并可干預實例的推進。
(5)客戶端應用
客戶端應用是通過請求的方式同工作流執行服務交互的應用,也就是說是客戶端應用調用工作流執行服務,客戶端應用同工作流執行服務交互。它提供給用戶一種手段,以處理實例運行過程中需要人工參與的任務。
(6)調用的應用
調用的應用指工作流執行服務在過程實例運行過程中調用的、用以對應用數據進行處理的應用程序和Web服務。
三、應用實例
測試一個輸入字符串,如果符合預先給定的編碼規則則返回True,否則返回False。下面我們利用workflow應用程序進行驗證,并且給出驗證是否通過的反饋。利用VS平臺創建一個基于流程的工作流如圖1。我們利用此工作流來解決已有的一個字符串是否是一個符合預先給定的編碼規則的問題。我們預先在ifElseActivity1節點處添加判斷條件,當workflow執行到分支時將強制其執行一些動作(如條件判斷為True時,將執行左邊分支;反之,執行右邊分支)。此步驟通過激活ifElseBranchActivity1分支的condition屬性,并在condition屬性中添加事件名來完成。當workflow流到判斷節點這個事件將被激發。內部事件被激發后,ConditionalEventArgs類型的變量e,將給出workflow流轉的依據。而e的取值將由事件里的滿足特定條件的正則表達式來確定。剛剛增加的這個條件將引發工作流選擇左邊路徑還是右邊路徑。但兩條路徑都沒有指明工作流將進行的動作,因此需要在兩條分支中添加活動。此時通過在左邊分支的codeActivity1圖標的ExecuteCode屬性中添加事件來表明輸入字符串已被判斷為合法的,同時在codeActivity2圖標的ExecuteCode屬性中添加事件來表明輸入字符串已被判斷為不合法的。綜上可知,工作流流到ifElseActivity1節點處,將完成輸入的字符串是否合法的判斷,同時根據條件進行判斷它將引發工作流選擇左邊路徑還是右邊路徑。同時我們可以在左邊分支和右邊分支中添加活動來指示輸入的字符串是否合法的判斷,即給出兩條路徑中工作流流入時將進行的動作。最后workflow應用程序流向終點完成判斷過程。
圖1 workflow設計界面圖
四、結束語
工作流技術是一種實現業務過程的分析、建模、優化、管理與集成以及最終實現業務過程自動化的方法,它可以與其它應用系統有效結合,構建各種業務管理系統。本文探討了工作流參考模型、流程模式和工作流建模工具Petri網。實例表明,工作流技術是提高業務過程效率的關鍵技術,基于流程模式的工作流技術的業務系統具有開放性、可擴展性等特點。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:基于流程模式的ERP工作流研究
本文網址:http://www.guhuozai8.cn/html/consultation/10820510745.html