崔中偉,王 璞,滿宜謙
(中國鐵道科學(xué)研究院 電子計算技術(shù)研究所,北京 100081)
鐵路物資管理信息系統(tǒng)中審批工作流功能的設(shè)計與實現(xiàn)
崔中偉,王 璞,滿宜謙
(中國鐵道科學(xué)研究院 電子計算技術(shù)研究所,北京 100081)
分析鐵路物資管理信息系統(tǒng)對審批工作流的業(yè)務(wù)需求,詳述審批工作流的功能設(shè)計和關(guān)鍵技術(shù),實現(xiàn)了審批流程的透明化和高效化。
審批工作流;Flex;鐵路物資
鐵路物資管理信息系統(tǒng)(簡稱:鐵路物資系統(tǒng))是為適應(yīng)鐵路總公司新的物資管理需求,對既有物資管理信息系統(tǒng)進(jìn)行升級改造進(jìn)行的定制開發(fā)。為滿足不同管理層級、模式等對生產(chǎn)經(jīng)營物資和建設(shè)物資的管理要求,在鐵路物資系統(tǒng)在審批環(huán)節(jié)中引入了工作流,以提高管理的透明度、效率和質(zhì)量。
工作流就是業(yè)務(wù)過程的部分或整體在計算機應(yīng)用環(huán)境下的自動化,是對工作流程及其各操作步驟之間業(yè)務(wù)規(guī)則的抽象、概括描述。為了實現(xiàn)某個業(yè)務(wù)目標(biāo),利用計算機在多個參與者之間按某種預(yù)定規(guī)則自動傳遞文檔、信息或者任務(wù),從而實現(xiàn)某個預(yù)期的業(yè)務(wù)目標(biāo),或者促使此目標(biāo)的實現(xiàn)。簡單地說,工作流就是一系列相互銜接、自動進(jìn)行的業(yè)務(wù)活動或任務(wù)。一個工作流包括一組任務(wù)(或活動)及它們的相互順序關(guān)系,還包括流程及任務(wù)(或活動)的啟動和終止條件,以及對每個任務(wù)(或活動)的描述。
工作流管理模塊通過定義、創(chuàng)建、運行和管理工作流,將傳統(tǒng)信息管理軟件的流程控制、管理及其他公共部分抽象出來,集合成為一種流程開發(fā)平臺。用戶只需按照特定步驟將控制流程描述出來,就可以對該流程進(jìn)行自動執(zhí)行和有效管理,避免了對不同應(yīng)用的重復(fù)開發(fā),并在實際操作中大幅加快工作效率。
工作流引擎是工作流管理模塊的核心,工作流引擎的作用主要包括兩個方面:(1)從數(shù)據(jù)庫中讀取工作流的基本信息和控制信息,并判斷當(dāng)前工作處在整個工作流程的哪一個步驟;(2)按照工作流的設(shè)置和條件約束,將該步驟的工作與上一步和下一步的工作連接起來,使審批任務(wù)能夠順利從上一步轉(zhuǎn)移到下一步。以工作流引擎為核心,基于工作流的應(yīng)用可以為面向使用者、管理者、設(shè)計者分別提供針對性的應(yīng)用。達(dá)到改進(jìn)和優(yōu)化業(yè)務(wù)流程,提高業(yè)務(wù)工作效率;實現(xiàn)更好的業(yè)務(wù)過程控制,提高業(yè)務(wù)協(xié)同能力等。
在鐵路物資系統(tǒng)中,工作流用于實現(xiàn)審批環(huán)節(jié)的流程。審批的工作流程如圖 1所示。因此,鐵路物資系統(tǒng)中工作流管理模塊需要實現(xiàn)以下功能:
(1)能夠根據(jù)工作流的基本規(guī)則,以圖形的方式輔助用戶創(chuàng)建工作流;
(2)以圖形方式對工作進(jìn)行設(shè)置、修改、刪除等;
(3)創(chuàng)建好的工作流存儲在數(shù)據(jù)庫中,在進(jìn)行審批流程時,能夠根據(jù)設(shè)計好的工作流生成工作流實例;
(4)工作流引擎可以按照預(yù)設(shè)的流程實現(xiàn)審批的正向和回退流程如圖1所示。

圖 1 工作流引擎流程圖
2.1 工作流管理模塊的結(jié)構(gòu)設(shè)計
工作流管理模塊由工作流配置工具、工作流引擎和相應(yīng)的數(shù)據(jù)庫表構(gòu)成。工作流配置工具提供了一個管理工作流的圖形操作界面,并將生成的工作流存入數(shù)據(jù)庫中。工作流引擎負(fù)責(zé)驅(qū)動生成的工作流實例按照設(shè)定的流程運轉(zhuǎn)。
2.2 工作流配置工具設(shè)計
工作流配置工具采用Flex。Flex是一種基于Flash的開源富客戶端應(yīng)用解決方案。開發(fā)人員通過在FlexBuilder中使用MXML語言或ActionScript腳本進(jìn)行開發(fā),生成一個可以在Flash虛擬機上運行的swf文件,只要客戶端安裝了Flash Player就可以直接進(jìn)行訪問。圖 2是鐵路物資2.0系統(tǒng)工作流配置工具界面。
2.2.1 工作流圖形的繪制
可視化工作流管理模塊允許用戶根據(jù)實際情況通過拖放節(jié)點圖標(biāo)和連線的方式繪制工作流圖形。為保證繪制的工作流圖形是正確的,需要保證圖形無獨立節(jié)點、圖形不能出現(xiàn)環(huán)形等約束條件。點擊“驗證流程正確性”按鈕可以對工作流進(jìn)行正確性檢查,不符合規(guī)則的節(jié)點將被刪除。

圖 2 流程設(shè)計器界面
2.2.2 工作流人員分配
在審批流程中,每一個節(jié)點都對應(yīng)一個具體的職能部門。因此,在生成審批流程時,要為節(jié)點分配對應(yīng)的審批職能部門。雙擊圖形節(jié)點,彈出的屬性窗口中,可以設(shè)置節(jié)點的基本屬性、參與者和擴(kuò)展屬性,如圖 3所示。

圖 3 節(jié)點屬性配置
2.3 工作流引擎
在進(jìn)行流程審批時,工作流引擎根據(jù)待審批的單據(jù)類型,為待審批的單據(jù)生成對應(yīng)的工作流實例,并將工作流實例存入數(shù)據(jù)庫中。工作流引擎把工作流實例中設(shè)定的當(dāng)前審批人,分配給待審批單據(jù),當(dāng)審批人登錄系統(tǒng)時,在審批頁面中就會看到待審批的單據(jù)。工作流引擎會把所有的審批動作存入數(shù)據(jù)庫流程日志表中。
審批工作流能夠?qū)崿F(xiàn)審批通過和審批回退。當(dāng)審批人完成審批操作時,工作流引擎會更新活動實例表中當(dāng)前節(jié)點ID的數(shù)據(jù),使工作流的節(jié)點指向下步驟的審批流程。審批人審批不通過,要求工作流回退時,引擎從活動定義表中找出該實例的上一節(jié)點ID,更新到活動實例表中,并將節(jié)點狀態(tài)改為回退,實現(xiàn)了工作流的回退操作。
2.4 日志記錄
在工作流的所有流轉(zhuǎn)過程,日志模塊都會記錄相應(yīng)的信息。工作流出現(xiàn)異常情況情況時,可以根據(jù)日志恢復(fù)到異常前的狀態(tài)。
2.5 數(shù)據(jù)庫表設(shè)計
工作流涉及到的主要數(shù)據(jù)表如圖 4所示。

圖 4 引擎驅(qū)動數(shù)據(jù)庫
其中,流程定義表、活動定義表、活動關(guān)系表、活動參與者用于保存工作流管理模塊生成的工作流數(shù)據(jù)。流程實例表、活動實例表用于保存工作流實例數(shù)據(jù)。
流程定義表:存儲工作流節(jié)點和連接線在流程圖設(shè)計器中的坐標(biāo)位置數(shù)據(jù);
活動定義表:存儲流程圖中節(jié)點屬性數(shù)據(jù);
活動關(guān)系表:存儲流程圖中連接線屬性數(shù)據(jù);
活動參與者:存儲流程圖中節(jié)點設(shè)定的審批人的數(shù)據(jù);
流程實例表:存儲待審批單據(jù)生成的工作流實例數(shù)據(jù);
活動實例表:存儲當(dāng)前流程實例的當(dāng)前節(jié)點的數(shù)據(jù);
單據(jù)類型表:存儲單據(jù)類型和工作流對應(yīng)關(guān)系;
流程日志表:存儲工作流所有流轉(zhuǎn)過程產(chǎn)生的狀態(tài)數(shù)據(jù)。
本方案已在鐵路物資系統(tǒng)中得到應(yīng)用,能夠很好地適應(yīng)鐵路物資系統(tǒng)對審批流程的需求,目前,雖然主要應(yīng)用在審批環(huán)節(jié),但是本文提出的工作流設(shè)計方案還可以適應(yīng)更多需要進(jìn)行流程控制的環(huán)節(jié)。隨著鐵路物資系統(tǒng)在各鐵路局的推廣使用,工作流技術(shù)的應(yīng)用還將進(jìn)一步發(fā)展和完善。
[1] 羅海濱,范玉順.工作流技術(shù)總數(shù)[J].軟件學(xué)報,2000(7): 899-907.
[2]嚴(yán) 芬,殷新春.一個工作流定義工具的設(shè)計及實現(xiàn)[J].計算機工程與應(yīng)用,2004(15):110-113.
[3]鄒曉宇,王 戟,周俊鵬.基于工作流的軟件程開發(fā)平臺的研究[J].計算機應(yīng)用研究,2006 (1):43-46 .
[4]李海波,戰(zhàn)德臣,徐曉飛.基于工作流引擎的構(gòu)件組裝體系結(jié)構(gòu)[J].軟件學(xué)報,2006(6):1401-1410.
[5] Tariq Ahmed. Flex 4 實戰(zhàn)[M].北京:清華大學(xué)出版社,2012:10-12 .
責(zé)任編輯徐侃春
Examination and approval workflow function for Railway Materials Management Information System
CUI Zhongwei, WANG Pu, MAN Yiqian
( Institute of Computing Technologies, China Academy of Railway Sciences, Beijing 100081, China )
This article analyzed business needs of examination and approval workflow for the Railway Materials Management Information System, described the functional design and key technologies, implemented transparent and efficiency of examination and approval process.
examination and approval workflow; Flex; railway materials
F530.6∶TP39
A
1005-8451(2016)12-0020-03
2016-05-17
崔中偉,工程師;王 璞,工程師。