張楠 陳莉君 西安郵電大學計算機學院
隨著企業(yè)的現(xiàn)代化發(fā)展,辦公信息化改革進入了飛速發(fā)展的階段[1][2],舊的文檔管理系統(tǒng)面臨系統(tǒng)需求變化頻繁和文檔流程不確定性的兩大問題,為解決這兩大問題,工作流的概念應(yīng)運而生。
首先,建立在工作流技術(shù)上的文檔管理系統(tǒng)實現(xiàn)了過程和邏輯的分離,不修改具體功能僅僅通過修改過程模型來實現(xiàn)系統(tǒng)功能的改變和添加,提高了軟件的適用性和重用率;其次,對于業(yè)務(wù)流程不確定的問題上,通過工作流動態(tài)流程控制功能可以管理和控制文檔流程,解決流程的不確定性問題。這樣就從理論上解決了上文提出的兩個問題。本文從一個實際應(yīng)用項目的研究出發(fā),以A公司業(yè)務(wù)為背景探索建立web環(huán)境下應(yīng)用工作流技術(shù)的文檔管理系統(tǒng)的思想和方法,提出基于web的工作流技術(shù)解決方案,并在此基礎(chǔ)上建立一個符合實際的文檔工作流系統(tǒng)。
本文所討論的工作流技術(shù)都是基于文檔管理為出發(fā)點。
1.1.1 工作流的定義
文檔管理系統(tǒng)中的工作流(WokrlFow)[3]是為實現(xiàn)既定業(yè)務(wù)流程中某一特定目標而必須完成的一些任務(wù)序列集合及這些任務(wù)的執(zhí)行過程。它實現(xiàn)了業(yè)務(wù)流程的全部或部分自動化,在此過程中,所有文檔和信息或任務(wù)按提前定好的流程規(guī)則按順序的從一個責任人傳向另一個責任人[4][6]。
1.1.2 工作流的功能
工作流系統(tǒng)中,所有活動都是基于整個業(yè)務(wù)流程展開的。流程定義的建模、修改和交換包含了工作流系統(tǒng)中的所有活動。以這些活動為標志,將工作流系統(tǒng)的活動分為流程定義、運行期控制、交互三個功能。
首先基于Web的文檔工作流管理系統(tǒng)可以實現(xiàn)統(tǒng)一的錄入、查詢、處理和統(tǒng)計,提供強大的交互能力,其次技術(shù)實現(xiàn)上web三層體系(瀏覽器/WBE服務(wù)器/數(shù)據(jù)庫服務(wù)器)結(jié)構(gòu)為業(yè)務(wù)處理提供強大的保障,最后,基于web的文檔工作流管理系統(tǒng)可以實現(xiàn)流程的自動化控制[7],以控制業(yè)務(wù)流程為核心,設(shè)置用戶權(quán)限為基礎(chǔ)的文檔管理系統(tǒng)。
通過對A公司的文檔信息集成業(yè)務(wù)實際考察,詳細了解業(yè)務(wù)背景對其業(yè)務(wù)場景進行建模,主要對文檔和人員的屬性分析,對文檔的流程分析詳細了解后通過建立過程模型、組織模型以及文檔的流程狀態(tài)控制三方面對文檔管理系統(tǒng)進行設(shè)計。
過程模型主要定義文檔管理系統(tǒng)中各種文檔按照業(yè)務(wù)要求流轉(zhuǎn)的邏輯順序,其中包括組成文檔工作流的所有活動、活動與活動之間的關(guān)系以及活動正常運行需要的條件等,文檔的過程模型具體包含過程、活動、控制連接弧和數(shù)據(jù)連接弧四個方面,該系統(tǒng)的文檔歸檔過程模型如圖1。
圖1 文件歸檔的過程模型
組織模型是定義系統(tǒng)應(yīng)用環(huán)境中的各個人員和角色的組織結(jié)構(gòu),組織模型的建立包括四個要素:人員、角色、權(quán)限、職務(wù)。組織模型與文檔過程模型的聯(lián)系首先,文檔建模時,根據(jù)文檔涉及到的辦公人員的職務(wù)確定他在文檔流轉(zhuǎn)過程中所扮演的角色。然后,在文檔實例化的過程中,將角色和具體的操作人員相對應(yīng)。最后,在文檔流動過程控制階段,辦公人員根據(jù)自己的權(quán)限對文檔進行不同的操作。具體系統(tǒng)的組織模型包括:文檔歸檔的主要成員及職責對應(yīng)關(guān)系圖、角色與權(quán)限關(guān)系圖和職位與角色對應(yīng)圖。
為了實現(xiàn)A公司由研發(fā)到生產(chǎn)的文檔高效傳遞[8]-[12],狀態(tài)控制表是一個關(guān)系數(shù)據(jù)表,記錄了文檔流轉(zhuǎn)過程中每一步文檔流轉(zhuǎn)的相關(guān)控制數(shù)據(jù)。根據(jù)這個數(shù)據(jù)表,文檔流轉(zhuǎn)的每一個步驟都用下面的數(shù)組來描述:(document,client,privilege,operation,state)
document一文檔編號
client一受理人編號
privilege一處理人的權(quán)限
operation一當前流程任務(wù)
state一當前文檔的處理狀態(tài),是控制活動是否執(zhí)行的標志。
operation和privilege的內(nèi)容不是一成不變,根據(jù)實際業(yè)務(wù)需要通過修改過程模型來修改選項的內(nèi)容,文檔在流轉(zhuǎn)中的每一步驟都可以用這個數(shù)組來表示,一個文檔的流程控制最終就由這個狀態(tài)控制表和工作流解釋機制來完成。
本系統(tǒng)結(jié)合共享模式和傳遞模式兩種:應(yīng)用Web技術(shù),處理客戶端的請求,將公用的信息保存在服務(wù)器端,相應(yīng)人員根據(jù)自己的角色和相應(yīng)的權(quán)限周期性的從服務(wù)器端查詢信息,工作流服務(wù)器也周期性的從服務(wù)器端提取處理結(jié)果,根據(jù)結(jié)果控制流程流向。采用Web的三層結(jié)構(gòu)體系,通過工作流系統(tǒng)中業(yè)務(wù)流程初始化、業(yè)務(wù)流程調(diào)度、業(yè)務(wù)流程流轉(zhuǎn)實現(xiàn)文檔的高效管理設(shè)計出如圖2的工作流系統(tǒng)。
圖2 基于web的系統(tǒng)體系結(jié)構(gòu)圖
該圖中工作流構(gòu)造器主要實現(xiàn)文檔模型的建模,工作流解釋器則通過建立工作流引擎去解釋文檔模型。
工作流引擎即根據(jù)提前定義好的業(yè)務(wù)流轉(zhuǎn)方向控制工作流的整個運行過程。從用戶的角度來看就是調(diào)用相關(guān)的程序處理當前的任務(wù),處理完后系統(tǒng)根據(jù)結(jié)果和提前定義好的流轉(zhuǎn)規(guī)則及路徑,決定下一步的流轉(zhuǎn)方向,系統(tǒng)運行期控制的設(shè)計主要有瀏覽器端的操作和服務(wù)器端的設(shè)計。
3.2.1 瀏覽器端設(shè)計
如圖6,用戶根據(jù)自己的用戶名和密碼登錄系統(tǒng)后,查看系統(tǒng)分配給該用戶要完成的所有工作流實例分配給他的任務(wù),用戶操作的工作項列表定期的向數(shù)據(jù)庫發(fā)出請求信息,用戶根據(jù)當前任務(wù)的性質(zhì)屬性到相應(yīng)的操作項列表中完成文檔的處理。例如,某文檔的當前任務(wù)是審核文檔,則當前責任人進入審核界面對文檔進行處理。
3.2.2 服務(wù)器端設(shè)計
整個工作流程從開始到結(jié)束的控制都是通過服務(wù)器,工作流服務(wù)器為整個系統(tǒng)的運行控制提供保障,服務(wù)器端流程控制的原理設(shè)計如圖3。
圖3 服務(wù)器端流程控制原理設(shè)計
為了驗證本文提出的工作流管理系統(tǒng)的正確性,系統(tǒng)實現(xiàn)流程圖如下。
圖4 系統(tǒng)實現(xiàn)流程圖
整體文檔歸檔流程實現(xiàn)情況介紹如下:
有歸檔請求時,定制經(jīng)理會收到任務(wù)收集各領(lǐng)域交付件圖紙,定制經(jīng)理任務(wù)處理后觸發(fā)下層各領(lǐng)域包括包材、資料、物流等提供圖紙的任務(wù),各領(lǐng)域圖紙?zhí)峤蝗蝿?wù)完成后定制經(jīng)理再次收到請求觸發(fā)組織評審流程,審核通過后觸發(fā)生產(chǎn)工藝審批歸檔,不通過則返回上一層修改。
用戶根據(jù)自己的角色登錄系統(tǒng)后,系統(tǒng)給出分配給該用戶的工作項列表,該列表列出當前用戶應(yīng)該處理的任務(wù),用戶根據(jù)此表進入相應(yīng)的操作模塊中,詳細查看和處理文檔。
用戶在技術(shù)上應(yīng)用AictveX組件實現(xiàn)在IE瀏覽器上對文檔的編輯,系統(tǒng)利用組件調(diào)用相關(guān)的外部程序,比如調(diào)用Word編輯,用戶在本地將文檔處理完后系統(tǒng)根據(jù)指令將文檔上傳到服務(wù)器。
系統(tǒng)自動根據(jù)用戶的角色和權(quán)限判斷用戶有哪些處理權(quán)限,當用戶在任務(wù)列表中做出修改后,系統(tǒng)將修改流程的請求送往服務(wù)器,在工作流服務(wù)器端對請求進行處理。
操作系統(tǒng):Windows 7
數(shù)據(jù)庫:SQLServer2010
開發(fā)環(huán)境:JDK6.0
開發(fā)工具:Myeclipse10
內(nèi)存:4GB
5.2.1 功能測試
功能測試主要從測試目標和文檔管理系統(tǒng)提供和實現(xiàn)的功能與需求相符程度來衡量。
測試內(nèi)容
經(jīng)測試用戶登錄模塊、文檔傳遞和審批模塊、修改模塊、簽發(fā)模塊與預(yù)期結(jié)果一致。
5.2.2 兼容性測試
經(jīng)測試客戶端、數(shù)據(jù)庫服務(wù)器、瀏覽器軟硬件兼容。
5.2.3 性能測試
本系統(tǒng)中的性能測試主要是測試用戶輸入或者提交相關(guān)數(shù)據(jù)后,這些數(shù)據(jù)經(jīng)過系統(tǒng)后臺與數(shù)據(jù)庫之間進行操作處理返回到瀏覽器上用戶能夠看到的反應(yīng)時間以及這些返回的數(shù)據(jù)是否正確以及其他相關(guān)的需求等。其主要測試目的是測試系統(tǒng)的性能是否滿足用戶的基本需求。本系統(tǒng)主要是在A企業(yè)內(nèi)使用,從測試結(jié)果看能夠滿足生產(chǎn)文檔管理系統(tǒng)的基本需求,性能上達到要求。
總體測試結(jié)論來看:實現(xiàn)了A企業(yè)文檔管理的需求,實現(xiàn)了用戶的權(quán)限的管理和文檔歸檔過程中整個過程運行狀態(tài)的監(jiān)管,引入工作流技術(shù)后達到了在需求發(fā)生變化和業(yè)務(wù)流程變更的情況下文檔管理系統(tǒng)不需要改變的目的。
本論文將數(shù)據(jù)庫理論、工作流管理理論、BPR思想和基于web的技術(shù)方法相結(jié)合應(yīng)用到文檔管理的實踐中,完成了一套Web環(huán)境下的基于工作流技術(shù)的文檔管理系統(tǒng),本論文提出并實現(xiàn)了應(yīng)用工作流技術(shù)解決文檔管理系統(tǒng)開發(fā)中用戶需求變動頻繁和文檔流程不確定性的方法,在具體的技術(shù)實現(xiàn)上,本系統(tǒng)的軟件功能還有待完善,還須加強對可視化建模的支持,在提高系統(tǒng)的重用率和擴展性上還有很多工作要做,以充分發(fā)揮工作流技術(shù)的特點。
[1]Van Oosterhout.Transition from paper to electronic documents.Sharp Technical Joural,2000:12-23
[2]Lou Wei,Xia Lin,Song Ye.Gao Zongli.DMS and its relevant technology Electric Power Automation Equipment.Electric Power Automation Equipmen,2000:8-46
[3]WfMC.The workflow Reference model,1995.1-437
[4] 史美林,楊光信,向勇,伍尚光.WFMS:工作流管理系統(tǒng).計算機學報,1999,V22,NO3:325一334.
[5] 郭嘩.基于web的分布式工作流管理系統(tǒng).微電子學與計算機,1999.04:33一37.
[6] Nurcan,Selmin,Analysis and design of co-operative work process; a framework.information and Software Technology,1998,Vol,40,Issue:3,:143-156.
[7]張明亮.基于工ntarnet的文檔工作流自動處理.航空科學技術(shù),2000.3:29一31
[8] 范愛晶,徐建時.構(gòu)建基于Intranet的電子辦公信息系統(tǒng).電腦與信息技術(shù),2000.06:20一22
[9] 奚兵.辦公自動化系統(tǒng)的總體設(shè)計.民航經(jīng)濟與技術(shù),2000.0:644一46.
[10] 褚光華,吳家春.文檔管理系統(tǒng)的設(shè)計與開發(fā).現(xiàn)代計算機,2000.07:27一29.
[11] U薛延學,薛曉敏,王汗青辦公信息管理系統(tǒng)的開發(fā)陜西工學院學報1998年3月:55一59.
[12] 林琪,王宇,盧星.辦公行文自動化管理系統(tǒng)的開發(fā).微機發(fā)展,2000.05:48一50.