陳倬
摘 要:近些年來,隨著計算機技術(shù)的飛速發(fā)展,使得企業(yè)辦公自動化系統(tǒng)越來越多的和計算機相結(jié)合,從而使得企業(yè)辦公更科學、更現(xiàn)代化,與此同時也直接推動企業(yè)經(jīng)濟效益的增長。其中,工作流技術(shù)作為一種新型的計算機技術(shù)對企業(yè)辦公自動化系統(tǒng)具有十分重要的作用,使企業(yè)辦公自動化呈現(xiàn)出簡潔、高效的特點。所謂工作流技術(shù)是指一種工作流程的計算模型,詳細的說它是將工作流程中工作的邏輯和規(guī)則通過模型表現(xiàn)出來,使辦公自動化系統(tǒng)更科學。之所以說工作流技術(shù)十分重要,是因為它可以解決企業(yè)辦公自動化系統(tǒng)中的許多問題。文章就過程定義、引擎、監(jiān)控、工作流系統(tǒng)四方面做了詳細探討,僅供參考。
關(guān)鍵詞:工作流技術(shù);辦公自動化;引擎;工作流系統(tǒng)
前言
工作流技術(shù)對于辦公自動化系統(tǒng)而言意義非凡,它可以利用計算機讓多個參與者按照固定規(guī)則傳遞信息,進而完成工作。過程定義、引擎、監(jiān)控是構(gòu)成工作流的三個重要部分,三者缺一不可。但是,值得注意的是,無論是過程定義、引擎還是監(jiān)控在開發(fā)時都應注意到開發(fā)要點,把握關(guān)鍵點,防止出現(xiàn)細節(jié)錯誤,使工作流技術(shù)更科學。
1 過程定義
過程定義是工作流的重要組成部分之一?,F(xiàn)今過程定義具有兩種定義方式,其一是技術(shù)人員定義流程,其二是用戶自己定義流程。前者適用于較為復雜的過程定義,技術(shù)人員一般都采用JaWE工具專業(yè)定義。后者則適用于較為直觀簡單的過程定義,便于用戶完成。其中,用戶自己定義流程時要把握以下兩個要點:首先要分次實現(xiàn)直流和分支流程;其次在流程保存的時候,初始相關(guān)數(shù)據(jù),如用戶、組、應用程序的關(guān)聯(lián)等。
2 引擎
在開發(fā)引擎時,一般都在shark的基礎上進行開發(fā)。就目前而言,shark是比較完善的開源引擎。用戶在shark的基礎上開發(fā)引擎時要注意流程的選擇,要具體情況具體分析,選擇流程要具有針對性。其次,要注意把握應用程序和流程活動二者之間的關(guān)系,將二者有機結(jié)合,以便達到理想效果。值得一提的是,要實現(xiàn)應用程序和流程活動二者的關(guān)聯(lián),可以采用多種方式實現(xiàn),要根據(jù)具體情況進行分析。
3 監(jiān)控
監(jiān)控同樣是工作流內(nèi)部結(jié)構(gòu)的重要組成部分之一,因此監(jiān)控開發(fā)同樣是一個值得關(guān)注的問題。在監(jiān)控開發(fā)時,要注意把握以下三點技巧。首先,要采用流程圖或者信息表的形式將活動的數(shù)據(jù)信息和活動流程顯示出來,一方面使信息顯示更加清晰明了,另一方面也是的整個系統(tǒng)更加科學。其次,要把握好結(jié)束流程這一環(huán)節(jié),做好整個系統(tǒng)的最后保障。此外,要做好清理流程數(shù)據(jù)。
4 工作流系統(tǒng)設計
在對工作流技術(shù)進行開發(fā)應用時,除了要注意對過程定義、引擎、監(jiān)控三部分的把握,同時也要做好工作流系統(tǒng)設計工作,從而工作流技術(shù)得到有效保證。
在對工作流系統(tǒng)設計時,要注意從多方面考慮,綜合把握各種因素。針對代碼較為復雜和后期的各種要求,技術(shù)人員在設計時要注意程序的完整性、擴展性以及用戶的方便性,從而使系統(tǒng)在運行時更能符合辦公自動化的需要。
完整性:所謂完整性就是指程序結(jié)構(gòu)完整。程序結(jié)構(gòu)一般都會面向接口開發(fā),在開發(fā)過程中不會發(fā)生任何改變。然而要實現(xiàn)程序結(jié)構(gòu)的完整性,設計人員必須要使用設計模式定義各種接口,從而實現(xiàn)系統(tǒng)的各種功能。
擴展性:工作流技術(shù)的擴展性是十分重要的,將引擎的擴展性不斷完善將對后期的引擎替換有直接積極作用。目前的工作流技術(shù)就是基于Shark開發(fā)出來的,在Shark的基礎上不斷完善發(fā)展得來的。因此,考慮到未來引擎的發(fā)展,程序必須要把握好擴展性。
調(diào)用方便性:在開發(fā)過程中,調(diào)用方便性這一特點是不容忽視的。程序設計員要注意將程序內(nèi)部各種關(guān)聯(lián)隱藏起來,盡量突出程序的便捷易懂、簡單實用。
包結(jié)構(gòu):
com.nor-weststar.workflow.chart工作流流程定義畫圖類的包com.nor-weststar.workflow.client 工作流客戶端
com.nor-weststar.workflow.requisition 申請?zhí)幚戆?/p>
com.nor-weststar.workflow.shark 工作流類的包,定義工作流接口。
在com.nor-weststar.workflow.chart的包中包括類:ChartUtil、WflChart 和XpdlUtil 這三個類。其中ChartUtil 類是實現(xiàn)流程圖的操作類,它的作用是定義了工作流過程定義流程圖,輸出XPDL文件。
在com.nor-weststar.workflow.client的包中包括類:ClientFunction、GroupTable、UserGrouptable、UserTable、WflActivity、WflEffort、Wfl
ClientFunction、WflPackage、WflProcess、WflUtil、WorkFlowClient這幾個類。其中ClientFunction類是客戶方法接口,它的作用是定義執(zhí)行動作以及得到對當前活動的描述。WflUtil類是完成內(nèi)部流程的管理類。包括工作流數(shù)據(jù)源,活動標志,活動創(chuàng)建,審批引擎活動等數(shù)據(jù)和方法的定義。WorkFlowClient客戶端流程管理類提供給用戶的流程管理類,調(diào)用引擎流程管理類和內(nèi)部流程管理類,完成流程的管理。
在com.nor-weststar.workflow.requisition的包中包括類:PlatReq、PlatReqtype、PlatReqUser、ReqClientUtil、ReqUtil這幾個類。PlatReq、PlatReqtype、PlatReqUser這幾個類是描述各申請類內(nèi)容的Javabean 類。ReqClientUtil類是申請操作類,完成審批網(wǎng)上申請。ReqUtil類是實現(xiàn)申請表單的處理類。
在com.nor-weststar.workflow.shark的包中包括類:SharkException、SharkMana-ger、SharkWorkFlow三個類。SharkException是擴寫的Shark異常類。SharkManager類是實現(xiàn)Shark的基礎管理類,實現(xiàn)對包、用戶、組、參與者與用戶映射的管理。SharkWorkFlow類是對開始活動、執(zhí)行活動等動作、過程、活動一級的操作。
參考文獻
[1]王海軍,等.基于Shark的工作流流程的實現(xiàn)方式研究[J].機械工程與自動化.
[2]吳朝暉,鄧水光.工作流系統(tǒng)設計與關(guān)鍵實現(xiàn)[M].浙江大學出版社.