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