萬旭川++杜佳++李凱豐++李海波
摘 要
基于目前傳統紙質表單審批流程中存在的“時間精力浪費較大、審批過程難以掌控、審批執行不夠嚴格、流程變更難以宣貫”等問題,設計并實現了一種基于表單的通用流程管理系統。重點介紹了該系統的系統結構、功能模塊設計和關鍵問題研究等。
【關鍵詞】表單 用戶控件 通用流程管理
1 引言
隨著信息技術的發展和應用,企業運行管理的各個方面均得到了信息化手段的廣泛支持,得益于此,流程管理工作也相應得以深化。信息化是實現業務流程電子化、自動化的重要途徑,借助信息化應用,可以把經過梳理、優化后的流程固化下來,提高流程運行的質量、效率和可分析性,從而不斷提高流程管理的有效性。本文所設計的通用流程管理系統以表單為載體,以流程處理為核心,兼顧靈活性和易用性,實現了業務流程的電子化審批模式,促進了流程管理的規范化和標準化。
2 系統方案
2.1 需求分析
流程管理系統的業務處理流程如圖1所示。
業務表單的設計是系統首先要解決的問題。企業在對業務活動進行梳理和優化后,會總結出一定數量的表單,每張表單都會設置特定格式的填寫內容,在使用過程中這些表單會發生數量的調整和結構的修改。因此通用流程管理系統需要提供方便靈活的流程表單開發方法,使用戶可以根據具體的業務流程進行業務表單的深度定制。
流程定義是流程管理系統的另一個核心問題,為了使整個平臺能夠靈活的適應業務需求的變化,流程的設計應能通過系統配置來實現。流程定義時需要參考員工、職務及應用程序數據,每一步的流轉過程都要與表單中的具體填寫項目對應起來,包括這些項目的數據格式及權限控制,保證每項內容與填寫人之間有明確的對應關系,避免填寫或修改未被授權的內容,發生填寫責任不明確的情況。業務表單的流轉要遵循一定的路由規則,在流程定義階段需要為每一步的流轉定義路由規則。
流程定義完成之后,有訪問權限的員工填寫第一步流程,轉出后就啟動了流轉過程。流轉處理中需要根據流程的定義生成工作列表。通過權限控制流程中的每個節點只能由特定的人在界面中操作自己被授權的內容,確保工作流程的準確性。流程的處理過程如下:
(1)對第一步流程具有權限的人員填寫一個新的業務表單,填寫完自己負責的部分內容后轉出,表單進入流轉過程。
(2)該表單會自動出現在對下一步流程節點具有權限的人員的工作列表中,系統會對相應人員進行待辦提醒,該人員同樣操作自己負責的內容后轉出,表單繼續流轉,直至最后一個流程節點,該節點的人員對表單進行編號與歸檔,并生成稿簽單,進而結束流程。
(3)流程啟動后,在每一個流程節點都可以按要求進行回退和特送操作,保證流程的靈活性。
2.2 功能模塊設計
基于表單的通用流程管理系統主要包括以下幾個功能模塊:表單定義模塊、流程定義模塊、基礎數據管理模塊以及人員權限管理模塊。
2.2.1 表單定義
為了能更好的適應表單項目數量及結構的調整,為用戶提供業務表單的深度定制,表單定義模塊設計了一個簡單通用的流程表單開發方法,用戶不需要具備軟件開發基礎,經過簡單的培訓,并遵循一定的編程接口和命名約定,就能輕松的將業務表單轉換為用戶控件。如果該業務流程要打印紙質單據存檔,則還要根據表單和用戶控件定義稿簽單。
2.2.2 流程定義
流程定義模塊包括節點定義和路由定義。系統中的業務流程是由一個個業務節點按照一定的路由規則進行流轉而組成的。在節點定義中需要與表單定義中的表單項關聯起來,定義在當前節點中表單項的必填項只讀項,以及當前節點的類型,是否需要填寫審批意見及是否為會簽節點等。路由定義則要定義節點的流轉順序并為每個節點指定可以操作的人員、部門或角色等。節點的流轉規則可以是唯一路由、條件路由和公式路由等。
2.2.3 基礎數據管理
基礎數據管理模塊主要提供對數據字典及編號規則等基礎數據的維護和管理。為了最大限度降低表單定義的復雜性并提高表單的自適應性,表單中如下拉列表項等有可能或經常變化的項目都以系統配置的方式在基礎數據里面進行管理,避免了由于這些數據的更改而要重新編寫代碼的情況。
2.2.4 人員權限管理
人員權限管理模塊定義系統中人員的基本信息、組織機構信息、人員職務信息以及系統角色信息。流程中為每個節點分配的操作人員可以是某個員工、整個部門的員工、部門中具備某職務的員工或者是具有某個系統角色的員工。一個員工只能隸屬于一個組織機構,但可以承擔多項職務并具備多個系統角色,其權限為這些職務和角色權限的并集。
3 系統實現過程中的關鍵問題研究
3.1 表單用戶控件開發
在本流程管理系統中,業務表單要轉化為用戶控件,如何保證沒有軟件開發基礎的使用人員成功的將業務表單轉化為系統中的用戶控件是一個比較棘手的問題。為了解決這一問題,系統本著最大限度簡化最終用戶使用的原則,將表單的公共部分及業務處理邏輯剝離出來,用戶只需在界面上拖拽Label、TextBox等控件,調整控件的位置將表單在界面中畫出來并按照約定為可編輯控件進行命名即可,其它的工作都通過界面配置的方式來實現。例如,表單中的選擇項可以通過在界面中拖拽一個下拉列表(DropdownList)控件來實現,而下拉列表的值則通過在界面的數據字典中配置實現,系統運行時會按照之前的命名約定,讀取數據字典的配置為表單中相應的下拉列表進行數據綁定并賦值。如果下拉列表的值發生了變化,用戶只需在界面中改變配置項,而不用編寫代碼修改已經開發完成的用戶控件,這樣既簡化了用戶控件的開發,又能適應表單內容的調整。
3.2 流程定義工具開發
流程定義部分要兼顧流程的準確性和靈活性,以適應各種流轉要求,下面結合流程定義的窗體界面(如圖2所示)來具體說明流程設計部分的處理思路。
首先要定義流程中的各個節點,指定在當前節點中表單項目的必填項和只讀項,以及當前節點的類型,是否需要填寫審批意見、是否為會簽節點、是否可以上傳附件或生成稿簽單等。然后需要為每個節點綁定操作人員,可以按部門、角色或公式來綁定操作人員,其中角色可以由管理員自由定義,公式則是系統中內置的,考慮到了系統使用中的大部分情況,作為對其它兩種方式的有效補充。最后要定義節點的流轉規則和順序,即為每個節點定義分支,一個節點可以有一個或多個分支,按照條件路由規則,根據請假天數的多少決定下一步流轉到哪個節點。
由整個流程定義的過程可以看出,系統流程的設計是非常靈活的,用戶可以隨時根據業務流程的變化對系統流程進行重新設計和調整,而不需要編寫任何代碼,大大提高了流程系統的適用性和通用性。
4 結束語
本文為企業業務流程的標準化和信息化提供了一種基于表單的通用流程管理的思路和方法,具體實施時完全可以采用不同的編程語言和開發環境來實現。按照上述的設計思路,作者用.Net平臺開發了一個流程信息化管理系統。企業可以基于本文的設計思想,根據自身管理系統的具體現狀和特點,選擇合適的軟件開發工具,實施自己的業務流程管理系統。
參考文獻
[1]劉光偉等.基于業務流程的信息化建設與應用[J].信息技術,2012,10:159-160+164.
[2]張洪山,殷人昆,張素琴等.基于Web的工作流引擎設計[J].計算機工程,2004,(4).
[3]佟雅娟等.FileNet平臺下企業通用ERP流程模塊的設計與實現[J].計算機與現代化,2013.(5).
作者單位
西安航天動力技術研究所 陜西省西安市 710025endprint