工作流管理
工作流管理
工作流管理是一個被業界廣泛應用並迅速發展的技術,它的主要特點是使處理過程自動化,使人以及各種應用工具相互之間協調工作,以完成某項工作。其目的是為了合適的人或軟體在恰當的時間執行正確的工作。
工作流所關注的問題是處理過程的自動化,它根據一系列定義的規則,把文檔、信息或任務在參與者之間傳遞,以達到某種目的。工作流管理聯盟(Workflow Management Coalition,簡稱WfMC)分別給出了工作流和工作流管理系統的定義:(1)工作流是一個業務過程部分或全部地用計算機自動執行;(2)工作流管理系統是一個完全定義、管理和執行工作流的系統,它通過計算機表示的工作流邏輯來驅動軟體有序地運行。
分離方法
工作流技術提供了把業務流程邏輯從具體IT工具的操作中分離出來的方法,並且還可以在以後把改變的流程邏輯規則添加進去。工作流管理可以在辦公環境(如保險、銀行、法律、行政管理等)以及工業和製造等領域得到廣泛應用。
OA應專心解決工作流管理問題
做好工作流管理,應從哪些方面入手呢?號稱工作流管理專家的華天動力OA系統所支持的流程類型,給我們提供了一個清晰的思路。
華天動力OA系統支持七大流程類型,即固定流程、自由流程、自由順序流程、分支流程、併發流程、半自由流程和無流程,這七種類型也基本滿足了企業中管理制度、組織結構和人員崗位的各種變化所帶來的各種複雜需求。
從各個流程特點來看,這七大流程也很好地用業務性地語言描述了企業中對於工作流管理的需求。如固定流程特點是由管理員設置好流程,申請人和審批人都不能隨意更改流程;分支流程則具有分支結構,由審批人從分支流程中選擇一個向下流轉;併發流程可以實現多線程流轉,多個分支同時并行流轉,然後匯總結束;半自由流程則是流程前半段固定,後半段自由,由審批人自行指定下一批審批人。
工作流技術的歷史可以追溯到70年代末的辦公自動化和任務批處理。第一次使用工作流術語可追溯到80年代初,但是那個時候還沒有真正的工作流管理系統出現。
在以前,網路互聯的應用不十分普及,並且功能相對較弱,各種軟體系統被設計成用於處理單個任務 隨著計算機網路技術的發展,計算機的處理模式從集中式處理向分佈協作式處理髮展 在這種新的處理模式中,人們可以更加精確地對高層的系統行為進行建模,開發的系統能夠更快地對應用需求的變化作出反應。因此 應用系統不僅僅要處理單個任務,還要能夠管理組織機構內部的工作流,這種應用需求推動了工作流管理的迅速發展。
為了更加深刻地認識工作流管理對未來的影響,有必要回顧一下過去40年應用軟體系統的演化歷程,從歷史的觀點來認識工作流。圖1顯示了工作流管理系統成為應用軟體系統的一個組成部分的歷史發展過程。
在60年代,應用系統是一個個獨立的程序,每個應用程序都有著自己特有的用戶界面和專門的數據存取系統,各個應用程序之間互不相干。在70年代,把數據管理部分分離出來,於是產生了資料庫管理系統(DBMS),應用系統大大地簡化了數據管理工作。到了80年代,同樣地又把用戶界面部分分離出來,於是產生了用戶界面管理系統(uIMs) 通過使用UIMS,應用程序不再過多地管理和用戶的交互功能,並且使應用程序有相似的用戶界面,方便了用戶使用。直到90年代,工作流管理系統作為一個通用的應用功能開始出現,用於支持業務處理,使應用開發人員可以把業務流程從應用中提取出來。
進入90年代,越來越多的組織機構開始認識到需要有支持設計和執行業務流程的高級工具。業務流程問題成為信息系統開發中的突出問題求信息系統包含工作流管理系統以支持各種業務流程,其理由主要有4個:
(1)新的管理哲學激發了組織機構對業務流程的興趣,如業務流程再造(BPR)和持續過程改進(CPI);
(2)組織機構內部的業務過程數量比以前大大增加,如今的組織機構比以前提供更多的產品和服務,並且產品和服務的生命周期也比以前大大縮短了,從而業務過程的數量也急劇增加;
(3)為了適應激烈的競爭,組織機構需要經常改變業務流程;
(4)業務歷程變得更加複雜。
從工作流管理的發展歷程可以看出,工作流管理的概念早在80年代初就已提出,但是由於當時計算機技術發展的限制,一直未能得到充分發展。直到最近幾年,隨著計算機技術和網路技術的迅猛發展.以及伴隨著市場競爭的加劇,企業對提高生產質量、縮短生產周期等的要求強烈,使得工作流管理成為企業界和研究領域的熱門話題。種種跡象表明工作流管理將會對下一代的信息系統產生重大影響。
工作流管理作為一個新興的研究領域,自然還存在很多問題有待於進一步研究解決,通過分析工作流系統,我們總結出兩個主要的不足:(1)工作流管理的定義不明確以及缺乏統一的概念模型;(2)工作流管理系統的系統結構和能力上的不足。
1、工作流管理的定義不明確以及缺乏統一的概念模型
工作流管理髮展的狀況非常類似於70年代初關係數據模型和E—R模型出現以前資料庫管理系統的發展狀況,大家各持己見,沒有一個統一的標準,所開發的產品大部分相互之間不兼容,使得很多用戶不願意使用商品化的工作流管理產品。
雖然WfMC在工作流概念和介面標準化方面作出了很多努力,但是這些標準僅僅是停留在技術層次上,而且重點放在語法上而不是語義上。在概念層次上至今仍沒有統一的意見“ 。例如,在WfMC參考模型介面1的規範中,就沒有關於狀態及基本構造塊(如AND/OR—split/join)的形式化描述。
總的來說,工作流的描述應當基於具有豐富語義表達功能的建模方法。這個方法應當具有清晰性、一致性、易表達性和可擴充性,應當能足以表達步驟、循環、分枝、條件、路徑選擇、任務分配、時間、調度和約束條件。其語義應當能夠定義控制流、數據流、資源流.並且能夠定義策略來處理這些流的中斷。
2、工作流管理系統的系統結構和能力上的不足
商品化的工作流產品提供的功能決定了當前工作流管理的技術水平,通過分析這些工作流系統可以發現其中還有很多不足,這些不足之處不僅是我們研究工作流管理技術的重點和難點,也是許多企業不敢把工作流產品用於關鍵業務流程的主要原因。這些不足主要是:
(1)工作流產品不適用於企業級的工作流管理。商品化工作流系統起源於辦公自動化系統,因此工作流系統一開始只是作為一個協同工具,是為小群體而設計的,要解決的主要問題是關於共享和協作。而當人們發現了工作流的應用潛力,想將其運用到大型環境中時,其本身的一些弊病就暴露出來了,如單資料庫、通信支持的不足 不支持異構和分佈的環境等,至於可測量性、可靠性等,則基本上未考慮。因此,工作流產品不適用於企業級的工作流管理。
(2)工作流系統缺乏健壯性和可用性,沒有備份機制和有效的恢復手段,容錯問題基本上沒有考慮,系統對於出錯的恢復彈性是極小的。一個大型的企業級工作流管理系統可能包括有幾千個用戶和幾十萬個并行運行的過程,並且分佈在一個大型網路的幾千個位置,其持續可用性就非常關鍵。
(3)工作流普遍使用的是c/s系統,其結構有一定的脆弱性,伺服器的錯誤將導致整個工作流系統的失敗。另外,集中式服務容易形成瓶頸,並因此很難對系統性能進行測量。
(4)不同的工作流產品之間缺乏互操作陛。
(5)大多數工作流產品的可視化建模方法都缺乏形式化語義。
工作流管理的發展就是要解決現有的問題.更好地滿足用戶需求,由於工作流管理系統主要由工作流建模和工作流實施環境組成,因此工作流管理系統的發展趨勢也可以從這兩個方面分別考察。
1、工作流建模的發展趨勢
工作流建模技術還遠沒有成熟,還處於百家爭鳴的時代。我們對當前流程建模領域出現過的主流建模方法進行了歸納分析,以期確定出我們要研究的合理方向。通過歸納分析,可以把它們分成5大類:腳本語言、基於網的方法、基於規則的方法、基於邏輯的方法和代數方法。
(1)腳本語言(Script Language)
腳本語言中有描述控制流和數據流的語句結構,它提供了一種簡明的描述方法,對於有經驗的設計者來說更易於使用。它的主要缺點是缺乏流程本身的形式化語義,語言的語義主要是供語言解釋器使用。
(2)基於網的方法
適合於流程的可視化建模,一般都使用狀態變遷網,流程中的活動用結點表示,控制流用邊表示。使用狀態變遷網的主要問題在於是否有形式化的語義,大多數工作流產品的可視化建模方法都缺乏形式化語義。在具有形式化語義的狀態變遷網中,使用得最多的就是Petr網和狀態圖(State Charts)。具有形式化語義的基於網的方法可以轉換成其它建模方法,如基於規則的、時序邏輯的和腳本語言的方法等。
(3)基於規則的方法
目前研究得最多的基於規則的方法是ECA(Event/Condltion/Acton,簡稱EcA)規則,ECA規則是早用於AO0DBS,而後又被用於工作流管理領域。ECA規則具有形式化基礎,也可以轉換成其它的建模方法。如Petri網、時序邏輯等,但是ECA規則的可視化工作量比較大。另外,如果規則集比較大時就難以管理。
(4)基於邏輯的方法
基於邏輯的方法適合於描述系統的動態性,其中時序邏輯是一種常用的方法,它具有很好的形式化基礎,驗證工作流模型的屬性比較方便。但是時序邏輯的主要缺點是很難實現可視化.不容易轉換成其它的描述方法,描述業務流程的系統行為太複雜。
(5)基於代數的方法
過程代數(Proees Algebra)主要還是局限在理論探討上,在工作流管理領域用得很少,只有一種基於過程代數的描述語言LOTOS被用於工作流管理領域。代數方法的主要缺點類似於基於邏輯的方法,並且在自動執行和形式化驗證方面表現得比基於邏輯的方法更差,建模方法缺乏直觀性,難以理解。
根據以上的比較可以看出,各種建模方法各有優缺點。但從總體上來看,腳本語言、基於網的方法和基於規則的方法更具有吸引力。
2、工作流實施環境的發展趨勢
工作流管理系統應該支持異構、自治和分佈環境中應用系統的集成和互操作,提供集成以前的應用系統的方法,以保護過去的投資,能夠是活地支持組織機構的改組,並支持當今有關動態企業(Dynamic Enterprise)的技術具有一定的容錯能力,在有錯誤產生時工作流管理系統能保證工作流執行的正確性和可靠性。
隨著網際網路的普及也出現了一些基於Web的工作流解決方案。通過觀察當前商品化的基於Web技術的工作流管理系統,顯示出大多數產品都僅僅是可以部分地使用Web,但是發展的趨勢是越來越多地使用面向Web,這種趨勢可以在一些研究項目中體現出來,如WebFlo、OzWeb、DartFlow等。但是由於Web及瀏覽器本身的限制,只能提供Client/Server計算模式,並且所使用的CGI介面只有有限的編程能力,在位置透明性、支持事務功能、安全性、性能等方面還有待於進一步改善。
另外,工作流研究是一種跨多學科的研究,涉及到CSCW、人機交互、資料庫、管理學、社會學等學科。任何缺乏多學科合作的研究都會阻礙工作流管理系統成為一個通用的系統,造成功能上的不足。