張少宇
摘要:辦公自動化(Office Automation, A)在20世紀70年代迅速發展起來并傳入我國,90年代進入飛速發展的階段。文章分析了工作流技術在辦公自動化系統中的應用。并提出以對象方式定義辦公自動化系統中工作流的方法并在系統中實現,使用戶對各種工作流的管理更便捷。
關鍵詞:辦公自動化;工作流;集成
中圖分類號:TP317.4文獻標識碼:A文章編號:1006-8937(2009)10-0031-02
在當今信息時代,無論政府機關,還是工商企業都需要加強部門、人員之間的交流、協調和協作,都需要更好地獲取信息,共享信息資源,更快地反映情況,掌握每一項工作進度,為領導決策提供大力支持,為業務人員提供服務。因此,許多企業、政府部門都十分重視建設自身的辦公自動化系統。但是,許多企業單位在實際使用以系統的過程中卻遇到了不少的問題。尤其是當企業組織機構、業務流程改變時,原有的系統基本上就不能滿足改組后的辦公需求。這些問題的存在大大限制了辦公自動化系統的應用范圍和發展前景。
1辦公自動化系統中的工作流模型分析
1.1過程模型
辦公自動化系統中過程模型反映實際業務流程信息。業務流程從邏輯上可以包括一個和幾個子流程。過程模型把組織機構、應用數據、表單與實際應用步驟聯系起來。
1.2組織模型
組織模型是用來定義企業中的組織形式的模型。它應該提供靈活的結構以適應不同企業或企業中不同的組織。
1.3資源模型
資源模型是企業進行生產經營不可缺少的物的因素,在工作流的執行過程中,必須得到企業資源的支持,相應的組織實體才能夠按照要求完成活動。
1.4訪問控制模型

在辦公自動化系統中,訪問控制模型用來定義系統用戶在系統功能的操作能力和工作流程的參與程度的級別和范圍。綜合實用性和靈活性的考慮,文章提出的辦公自動化系統采用基于角色的訪問控制模型(如圖1)。
①對象:系統的基本操作單元,是系統用戶操作的直接收受者,包括系統功能項操作和工作流過程任務參與。②用戶:系統訪問控制劃分的最小單元,每一個用戶就是對系統中對象進行操作的直接實施者。③組:涵蓋了組織模型中的部門和工作組的概念,是用戶在工作能力和職權方面的劃分和組織。④角色:以工作職責為前提,能夠完成系統某類功能或具有參與工作流過程中某類任務的人員的總稱。
2系統的總體設計
①對工作流進行提取。首先,明確系統的需求,針對系統任務所提出的單位的核心結構、業務分類和業務具體執行程序、業務的相關數據來源與流向。其次,基于系統所分析的結果,按照其相關工作性質系統的劃分工作流。一般情況下工作流會設計到一個或幾個部門。
②系統原型的構建。流程定義是工作流的一個正式化描述。包括過程的開始、結束的條件、活動網絡和關于單獨行為的一些信息的描述,例如角色、權限等等。 實際設計上,需要選擇典型的工作流,與原型技術的面向對象的設計符合的原則,根據實際情況可以被劃分成設計小組的很多位設計師,因此每個小組,會分別設計工作流的原型。
③集成系統。針對已經設計出來的工作流原型,在讓用戶試用后提出相關意見,并在此基礎上不斷完善工作流的原型設計。同時,要考慮到一些特殊崗位及特殊人員的要求,直到所有的工作流都滿足要求為止。把每一類活動都完善之后,就需要設計工作流處理模型,將活動集成在一起。每一個用戶進入總界面作出操作選擇之后,即啟動工作流驅動機制,經驅動機制選擇其所對應的模塊任務,最后進行流向修改。
系統集成也就是工作流集成,當系統的基本功能己經實現時,改進用戶界面。 由于基本的工作流程是相對地獨立的,因此在一個聯合工作流程不需要改變基本的傳動機構,當焦點是提供用戶以用戶界面一個聯合辦公界面。
3基于工作流引擎的OA系統的設計與實現
3.1工作流引擎的模塊設計
工作流引擎是業務流程事例的一個系統,并且提供服務軟件的操作環境,是工作流管理系統核心,每個模塊具體設計是如下:從級別劃分,系統分層可以分為邏輯層和持續層。邏輯層,包括所有數據對象和完成引擎的目標的一定數量的輔助函數應付所有邏輯功能。持續層主要對目標數據進行持續工作,包括個體對象創造、訪問、更新和刪除保護的工作,阻斷了邏輯層對下級的控制。邏輯層和持續層的層數存在從數據局限的,當數據改變,會盡可能小的影響邏輯層的變化。從邏輯功能的上來劃分,包括定義、例子、日志、新聞和其他輔助對象的過程。
3.2引擎數據庫的設計
對于工作流的實體對象一般均為持續對象,其數據均存儲在數據庫中。根據數據的保存時間可以將數據庫中的表劃分幾種情況。
定義表:存貯過程的定義所有信息,是為連續過程的依據。例子表:數據流臨時儲藏的操作,臨時運行后將被刪除。日志表:系統運行過程的歷史數據,是作為統計的依據。組織表:不但存依賴時間而存在,工作流事例將引導它。
實體對象對應其數據共存。但在其流程全過程之中,并不是所有的對象與數據都同時存在。在不同數據在不同時期具體分類如下:
①定義表:與過程相關的數據、斷點、應用實例、工作項及其相關數據。②例子表:復制、處理事例與過程相關的數據、斷點實例、斷點數據、工作相關的數據,信息工作。③日志表:處理事例與過程相關的數據,斷點實例,斷點數據,工作項及其相關數據。
3.3引擎的對象設計及引擎服務
工作流引擎對象的設計:在過程、點、工作和其他支持的對象的主要目的工作流引擎,他們決定了所有活動和邏輯引擎的認識。某種程度上設計的類型通過保護節點類型之間的區別使面向對象的方法連續。對象管理負責將對象的需要按不同的類型建立不同的事例。
在對象的工作流生存周期中,當過程被生成,過程從靜態狀態被轉變為動態流程狀態。流程將存在兩個邏輯單元:過程和節點的生成,以及過程形成的數據變量。當流程變為可轉變的過程時,系統會生成過程實例,但節點并非一定能成為實例狀態,其具體情況則要由過程轉變的路徑來決定。其中可流轉的具體實例對象也將存在活動的內存狀態和穩定的數據庫狀態兩種狀態。就節點來說,當目前的節點結束后,根據定義路由過程將自動進行到下一個節點,而這時的節點需要將該節點從固定的狀態轉成為可流轉的狀態,從而向對象管理器發出請求創建新的節點,對象管理器將根據所請求類型自動生成相應的空對象實例,并對對象實例按照程序定義標識進行原始數據的初始化,然后獲取過程傳輸來的具體數據,將所有已知相關數據通過持續對象寫入數據庫,同時將啟動邏輯關系處理系統,生成工作項或進行路由。在完成目前的任務后,如果該節點將完成,自己將自動刪除或者由于內存不足而直接退出內存狀態。節點的記憶體只有當進程在必要時才會再次向對象管理器請求再載入。對象管理器通過持續的數據層從數據庫創建對象并裝配數據,從而使其成為一種內存對象。如果該節點已經完成,在被刪除之前會將信息進行日志信息記錄。過程、過程數據的節點和節點的相關數據、工作項目最后都將記入日志。
參考文獻:
[1] 吳朝暉.鄧水光.工作流系統設計與關鍵實現[M].杭州:浙江大學出版社,2006.
[2] 范玉順.工作流管理技術基礎—實現企業業務重組、過程管理與過程自動化的核心技術[M].北京:清華大學出版社,2001.
[3] Krzyszt of Cwalina,Brad Abrams..NET設計規范[M].北京:人民郵電出版社,2006.