[摘 要] 本文根據現代化辦公的要求,通過對OA系統中工作流的分析,提出一個基于工作流的OA系統模型,在.NET環境下,利用工作流技術和Web服務技術實現了OA系統的開發。
[關鍵詞] OA; 工作流; B/S模式; .NET
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2009 . 20 . 027
[中圖分類號]F270.7[文獻標識碼]A[文章編號]1673-0194(2009)20-0071-03
1 引 言
隨著淮安經濟的發展和城市建設步伐的不斷加快及城市規模的日益擴大,自來水公司的管理工作日趨復雜,但隨著信息技術的發展,使得提供公共服務的自來水公司的全面信息化變為了現實。在這種情況下,自來水公司迫切需要將自來水公司所有業務及服務進行整合,建立一個涵蓋綜合事務(包括公司網站、設備管理、公司日常辦公OA等)、調度(壓力流量采集監控、水廠生產控制系統、泵站管理監測)、管網GIS、營業收費(包括遠程抄表、司銀聯網等)、用戶報裝、熱線服務(包括短信平臺)等統一的綜合辦公平臺,建立統一的底層數據中心,管理多源、多尺度、多專題數據,從根本上解決各套系統獨自運作、信息不通、數據無法共享或共享不徹底的問題,使自來水公司運用現代信息與通訊技術,將管理與服務通過信息化平臺集成,實現真正管理及服務的科學化,并為行政審批提供依據,提供“一站式”辦公。
2 系統的需求分析
事務性功能模塊應具備模塊組建管理、用戶與授權管理、單點用戶認證管理、協作組建管理等功能。在信息授權的基礎上,各類信息以一種直觀易用的、可定制的、基于瀏覽器的人機交互界面呈現。
淮安市自來水公司綜合辦公平臺事務性功能即日常公文行政管理應用等,能夠在完成日常公文處理的基礎上,結合公司日常行政工作,實現公司各部門員工可以充分共享數據,按照個人授予的權限通過網絡完成自己的日常辦公以及對相應行政數據的查詢、統計和分析,并進行協同辦公文檔處理,為各部門領導和員工及時處理工作和及時了解公司各項動態提供即時全面的網絡服務。
事務性功能模塊內嵌入用戶管理、目錄管理、身份認證、數據庫、應用服務器等模塊,也可根據需要,將這些功能加載于多種外部系統,如目錄服務、大型數據庫、第三方應用服務器等,建立穩定可靠的信息平臺,保證系統的可擴展性。
淮安市自來水公司綜合辦公平臺中,通過事務性功能模塊組織、展現各種結構化、非結構化的信息內容和相關的Web應用頁面,為最終用戶提供了統一的信息訪問渠道。
3 系統的功能設計
淮安市自來水公司綜合辦公平臺實現的功能應包括事務性功能模塊、業務性功能模塊、平臺數據整合維護功能模塊等,整體結構如圖1所示。
4 系統的實現
系統采用B/S模式,由瀏覽器和服務器組成,數據和程序放在服務器端,服務器可以有多層結構,服務器負責與數據庫的交換工作,并將結果發送給各終端。前端的瀏覽器不用維護,用戶只需瀏覽器即可使用該系統。其優點是采用標準Internet技術,技術人員只要開發和維護服務器端應用程序,無須考慮客戶端程序,大大降低了軟件維護開銷,而且非常適合信息的查詢和組織,界面簡單且易于與Internet上的其他系統集成。
本系統選擇.NET作為工作流開發工具。在.NET工作流中,進程通過WorkflowRuntime創建和維護WorkflowInstance。除此而外,WorkflowRuntime可以創建自定義的服務和本地服務(為工作流處理對象設計服務),可以控制存中加載和卸載工作流(配合SQLWorkflow Persistence Service就可以實現工作流的持久化)等等。
4.1 .NET工作流組件模型
.NET工作流組件模型見圖2。服務由Addservice()加載入WorkflowRuntime中,而與WorkflowInstance實例無關。WorkflowInstance在創建后,自動流動觸發Activity。在Activity中觸發Service中的事件,轉而由WorkflowRuntime將事件轉化為接口上的事件調用(EventHandle)。 一個必須添加到工作流運行時引擎才能啟用本地服務通信的服務。若要正確地化和注冊這些服務,必需將本地服務添加到ExternalDataExchangeService中。此WorkflowRuntime, WorkflowInstance, ExternalDataExchangeService和本地服務的關系是:WorkflowRuntime承載WorkflowInstance,ExternalDataExchangeService被添加到WorkflowRuntime,本地服務被添加到ExternalDataExchangeService中以實現對于譬如 WorkflowPersistenceService的初始化。
本地服務必須實現使用 ExternalDataExchangeAttribute 進行修飾的接口。本地服務需要定義方法和事件(需要實現ExternalDataEventArgs)供CallExternalMethodActivity和HandleExternalEventActivity使用。前者用于工作流實例從外部接收信息,后者用于處理由本地服務引發的事件的工作流通信活動。WorkflowRuntime會將本地服務上的方法調用轉化為WorkflowInstance上的Event觸發。
4.2 工作流創建
把一個業務邏輯抽象成一個工作流。首先我們要在業務流程圖中識別出工作流的環節。如圖2所示,顯然,我們共有多個環節,同時包含一個分支及一個合并。
建立好環節以后,必須在每個環節中添加一些動作以便于工作流運轉。每個動作有唯一的無條件結果,條件結果由管理用戶有選擇地來實現。
接下來要并行地執行自來水公司業務分析、財務管理和網絡辦公,這里是放置分支的最理想地點。
status=\"Underway\" owner=\"Risk Analyst\" step=\"2\"/> status=\"Underway\" owner=\"Financial Officer\" step=\"3\"/> status=\"Underway\" owner=\"Web Office Automation\" step=\"3\"/> 在部門主管最終確認以前,并發的工作流環節必須得到合并。我們可以通過應用一個合并(join)來實現它,合并通過一個條件告訴工作流引擎,是否可以合并且進行到下一環節。在本例中,我們假設這個條件為:前面兩個環節都已具有“Finished”的結束狀態。即當業務分析或財務審核任何一個未完成前,不能進行到下一步: \"Finished\".equals(jn.getStep(2).getStatus()) \"Finished\".equals(jn.getStep(3).getStatus( ) ) ?> status=\"Underway\" owner=\"Manager\" step=\"4\"/> 用戶既可以手寫XML描述符文件,也可以通過Workflow提供的設計器來實現。 5 結 論 建成的淮安市自來水公司綜合辦公平臺,以自來水公司工作業務流程為依據,結合相關技術發展信息平臺系統,在數據管理的基礎上,能快速便利地對自來水公司業務中所涉及的各類數據進行多種條件的查詢統計,實現系統之間數據的充分共享,從而方便自來水公司業務管理,加快決策速度,提高決策的準確率,提高辦公效率,減少管理和運行成本。 主要參考文獻 [1] 張勇,黃濤. 基于工作流的網上協同辦公系統的設計與實現[J]. 計算機應用研究,2004(9):197-199. [2] 尹帆,康瑞華,薛勝軍. 基于工作流的辦公自動化系統的研究與實現[J].武漢理工大學學報:交通科學與工程版,2004(1):116-119. [3] 丁紹陽,丁曉超,王颯.工作流管理在OA系統中的應用[J]. 遼寧工程技術大學學報,2004(5):126-128. [4] 李毅東,姜新文. 一個基于Internet的柔性工作流驅動的辦公自動化解決方案[J]. 計算機與現代化,2004(6):76-78,91. [5] 張秋余,袁占亭,等. 基于OA系統的工作流技術的實現[J]. 甘肅工業大學學報,2003(4):92-95. [6] 余樂,呂強.一個OA系統中的工作流模型[J]. 計算機工程與應用,2003(13):141-144,153. [7] 楊延雙,尹志軍,等. 基于J2EE的辦公自動化系統的研究與實現[J]. 北京工業大學學報,2004(3):115-119. [8] 胡成梅,陳世平,趙樹楓. 基于Web的工作流管理技術實現[J]. 計算機系統應用,2004(11):32-35. [9]劉玉梅,葉方.辦公自動化系統中工作流配置軟件的設計與實現[J]. 應用科技,2004(7):45-46. [10]范小春,周強新,范劍鋒. 工作流自動化及在房地產管理OA系統中應用[J]. 武漢理工大學學報:信息與管理工程版,2004(3):36-39.