羅 天,趙丹陽,鄭靜雯
(1.重慶大學(xué),重慶 400044;2.山東大學(xué),濟(jì)南 250100)
用電信息采集系統(tǒng)現(xiàn)有業(yè)務(wù)繁多,且隨著用戶的需求不斷變化,需要科學(xué)的手段對系統(tǒng)各項(xiàng)業(yè)務(wù)進(jìn)行管理,提高系統(tǒng)的工作效率和服務(wù)質(zhì)量[1—2]。
用電信息采集系統(tǒng)面向供電公司的工作人員,其業(yè)務(wù)不僅包括了標(biāo)準(zhǔn)化的數(shù)據(jù)采集業(yè)務(wù)、費(fèi)控業(yè)務(wù)、線損分析業(yè)務(wù)、終端新裝業(yè)務(wù)、終端更換業(yè)務(wù)、終端拆除業(yè)務(wù)、有序用電業(yè)務(wù)等,還包括計(jì)量設(shè)備巡檢業(yè)務(wù)、線損監(jiān)測分析業(yè)務(wù)、反竊電業(yè)務(wù)、智能互動(dòng)服務(wù)業(yè)務(wù)等拓展業(yè)務(wù)。目前系統(tǒng)存在的重要問題之一是其業(yè)務(wù)流程被固化在程序里,當(dāng)業(yè)務(wù)邏輯發(fā)生變化時(shí),需要通過修改程序來適應(yīng)其變化,造成了較大的開發(fā)量和維護(hù)量。基于工作流引擎的設(shè)計(jì)可以解決上述問題,達(dá)到系統(tǒng)的優(yōu)化,通過適當(dāng)調(diào)整或重新定義工作流程來適應(yīng)實(shí)際業(yè)務(wù)邏輯的變化,大大降低開發(fā)成本和維護(hù)成本。
本文根據(jù)用電信息采集系統(tǒng)的業(yè)務(wù)特點(diǎn),基于工作流引擎對系統(tǒng)進(jìn)行設(shè)計(jì)與實(shí)現(xiàn),將用電信息采集業(yè)務(wù)過程實(shí)例化,對工作流實(shí)例進(jìn)行監(jiān)控和管理,實(shí)現(xiàn)系統(tǒng)業(yè)務(wù)流程的柔性管理,提高業(yè)務(wù)的處理效率,達(dá)到用戶滿意的服務(wù)質(zhì)量。
工作流技術(shù)的標(biāo)準(zhǔn)化組織工作流管理聯(lián)盟(Workflow Management Coalition,WfMC)給出了工作流的定義[3—4]:“工作流是一類能夠完全或部分自動(dòng)執(zhí)行的經(jīng)營過程,它根據(jù)一系列過程規(guī)則、文檔、信息或任務(wù),能夠在不同執(zhí)行者之間進(jìn)行傳遞與執(zhí)行?!惫ぷ髁鞴芾砺?lián)盟發(fā)布的工作流參考模型[5]如圖1所示。
圖1 工作流參考模型
由圖1可以看出,最關(guān)鍵的部件是工作流引擎[6],它完成工作流實(shí)例的創(chuàng)建、執(zhí)行和管理,并與其它引擎及外部應(yīng)用程序進(jìn)行交互,為工作流的運(yùn)行提供一個(gè)支撐環(huán)境[7—8]。工作流引擎的主要功能包括[9]:①對過程定義進(jìn)行解釋;②控制過程實(shí)例的生成、激活、掛起、終止等;③控制過程活動(dòng)間的轉(zhuǎn)換;④支持用戶操作的界面;⑤維護(hù)工作流控制數(shù)據(jù)和工作流相關(guān)數(shù)據(jù),在應(yīng)用或用戶間傳遞工作流相關(guān)數(shù)據(jù);⑥提供用于激活外部應(yīng)用并提供工作流相關(guān)數(shù)據(jù)的界面;⑦提供控制、管理和監(jiān)督的功能。
工作流引擎的管理控制原理是通過對工作量進(jìn)行定義和管理,并按照預(yù)先定義好的工作流邏輯執(zhí)行工作流實(shí)例,并對整個(gè)工作流過程進(jìn)行監(jiān)控。工作流管理系統(tǒng)不是業(yè)務(wù)系統(tǒng)而是為業(yè)務(wù)系統(tǒng)的運(yùn)行提供了一個(gè)軟件的支撐環(huán)境,它通過計(jì)算機(jī)表示的工作流邏輯來驅(qū)動(dòng)軟件有序地運(yùn)行。
圖2是基于工作流引擎的用電信息采集系統(tǒng)體系結(jié)構(gòu)圖。
圖2 用電信息采集系統(tǒng)體系結(jié)構(gòu)
表示層:主要是面向用電信息采集系統(tǒng)工作人員提供完成業(yè)務(wù)操作的管理類程序和應(yīng)用類程序。
業(yè)務(wù)邏輯層:負(fù)責(zé)整個(gè)用電信息采集系統(tǒng)業(yè)務(wù)流程的描述和執(zhí)行,又分為業(yè)務(wù)邏輯配置層和業(yè)務(wù)邏輯執(zhí)行層,其中業(yè)務(wù)邏輯配置層主要包括流程監(jiān)控工具和流程定義工具,負(fù)責(zé)配置和監(jiān)控流程;業(yè)務(wù)邏輯執(zhí)行層負(fù)責(zé)解釋業(yè)務(wù)流程,并調(diào)用業(yè)務(wù)組件及相關(guān)數(shù)據(jù)來執(zhí)行定義的工作流程,并提供相應(yīng)的監(jiān)控接口。
數(shù)據(jù)層:負(fù)責(zé)提供對用電信息采集系統(tǒng)的數(shù)據(jù)支持接口,其中組織/關(guān)系數(shù)據(jù)被工作流引擎引用和維護(hù),業(yè)務(wù)應(yīng)用數(shù)據(jù)供用電信息采集業(yè)務(wù)組件調(diào)用。
通過分析,本文研究的用電信息采集系統(tǒng)的工作流引擎主要包括圖3所示的功能模塊。
圖3 工作流引擎功能模塊
2.2.1 流程管理
對工作流過程實(shí)例進(jìn)行創(chuàng)建、啟動(dòng)、掛起、恢復(fù)和停止以及活動(dòng)實(shí)例的創(chuàng)建、執(zhí)行和完成。
(1)流程定義
定義用電信息采集系統(tǒng)的工作流實(shí)例,并將信息保存到數(shù)據(jù)庫,供后續(xù)部署使用。
(2)流程定義管理
對業(yè)務(wù)流程進(jìn)行新增、修改、刪除、部署、維護(hù)檢驗(yàn)規(guī)則、查看流程圖,并將定義好的流程部署到工作流引擎中。
(3)角色用戶管理
工作流引擎內(nèi)部支持對用戶、角色管理,解決角色用戶權(quán)限共享問題。
(4)監(jiān)聽器管理
維護(hù)監(jiān)聽器的名稱、類型、服務(wù)類型、事件、內(nèi)容等信息。
(5)檢驗(yàn)規(guī)則管理
實(shí)現(xiàn)對業(yè)務(wù)流程任務(wù)節(jié)點(diǎn)檢驗(yàn)規(guī)則的管理。
2.2.2 申請書管理
用于確定該業(yè)務(wù)流程的操作對象,并記錄流程的申請信息,對于錄入完成的申請書信息可以生成工作單(創(chuàng)建流程實(shí)例)。
2.2.3 我的任務(wù)
用于查看當(dāng)前操作人員有權(quán)限處理的工單,并對工單進(jìn)行簽收、撤銷簽收、工單處理、調(diào)整步驟、調(diào)整人員、工單作廢、查看流程進(jìn)度、查看工單詳細(xì)信息的操作。在工單處理過程中,需要對工單的處理情況及關(guān)鍵信息進(jìn)行記錄,在工單處理完成后發(fā)送到下一環(huán)節(jié),發(fā)送前需要對本環(huán)節(jié)的處理情況進(jìn)行檢驗(yàn)。
2.2.4 工單查詢
根據(jù)流程類別、流程類型及查詢?nèi)掌趨^(qū)間等條件查詢當(dāng)前操作員權(quán)限下各種工單狀態(tài)(包括執(zhí)行中、已完成、已作廢)的工作單,并能夠查看工作單的詳細(xì)操作情況。
2.2.5 流程對外服務(wù)
通過對外提供的Webservice服務(wù),支持其它系統(tǒng)調(diào)用接口發(fā)起相應(yīng)的流程,并進(jìn)行工單的順序處理。
系統(tǒng)開發(fā)采用Browser/Server模式,開發(fā)語言選擇Java,數(shù)據(jù)庫管理系統(tǒng)采用Oracle,開發(fā)環(huán)境使用Eclipse。
3.1.1 流程定義
對用電信息采集系統(tǒng)的數(shù)據(jù)采集、費(fèi)控、線損分析、終端新裝、終端更換、終端拆除、有序用電、線損監(jiān)測分析、智能互動(dòng)服務(wù)等進(jìn)行定義,以終端更換業(yè)務(wù)為例,定義其業(yè)務(wù)流程如圖4所示。
圖4 終端更換業(yè)務(wù)流程圖
3.1.2 流程定義管理
用電信息采集系統(tǒng)的業(yè)務(wù)流程定義完成后,可在流程管理中通過流程編號(hào)、流程類別、流程類型等查詢業(yè)務(wù)流程的相關(guān)信息。如:圖5所示可以查看“轉(zhuǎn)變終端新裝”、“集中器新裝”、“集中器更換”等業(yè)務(wù)流程的編號(hào)、名稱、類別、類型、狀態(tài)、執(zhí)行方式、描述、備注等信息,并可對業(yè)務(wù)流程進(jìn)行新增、修改、刪除、部署、規(guī)則校驗(yàn)等操作。
3.1.3 申請書管理
圖5 流程定義管理
用于確定該業(yè)務(wù)流程的操作對象,并記錄流程的申請信息,對于錄入完成的申請書信息可以生成工作單(創(chuàng)建流程實(shí)例)。
在“申請書管理”的錄入申請書頁面中,可以根據(jù)自己的任務(wù)進(jìn)行選擇,如:選擇“低壓集中器更換”一項(xiàng)錄入申請書的信息,并生成圖6所示工作單。
圖6 錄入申請書
3.1.4 完成任務(wù)
在“我的任務(wù)”界面對剛生成的工作單進(jìn)行“簽收”,當(dāng)任務(wù)處理后則會(huì)進(jìn)入“集中器更換”流程,如圖7所示。
圖7 “我的任務(wù)”
接下來可以按照圖4所示的定義好的“終端更換業(yè)務(wù)流程”依次填寫終端領(lǐng)用信息、填寫終端更換信息、維護(hù)終端屬性信息、導(dǎo)入相關(guān)表計(jì)信息、維護(hù)下發(fā)參數(shù)、維護(hù)現(xiàn)場工況配置相關(guān)參數(shù),對業(yè)務(wù)流程進(jìn)行歸檔操作,如果驗(yàn)證無異常信息,則結(jié)束整個(gè)工作流,如圖8所示。
(1)提高用電信息采集系統(tǒng)業(yè)務(wù)辦理效率?;诠ぷ髁饕嬖O(shè)計(jì)實(shí)現(xiàn)系統(tǒng)可以將結(jié)構(gòu)化流程通過系統(tǒng)進(jìn)行設(shè)定并自動(dòng)流轉(zhuǎn),避免在等待中浪費(fèi)時(shí)間,有效提升了業(yè)務(wù)辦理的速度和效率。
(2)全面掌握各種工作的執(zhí)行情況。基于工作流引擎可以對整個(gè)工作流過程進(jìn)行監(jiān)控、管理,了解和分析任務(wù)的狀態(tài),從而全面掌握系統(tǒng)的運(yùn)行情況。
圖8 歸檔
(3)實(shí)現(xiàn)用電信息采集系統(tǒng)業(yè)務(wù)流程柔性管理。傳統(tǒng)的用電信息采集系統(tǒng)的業(yè)務(wù)流程和組織結(jié)構(gòu)發(fā)生改變時(shí),需要重新設(shè)計(jì)系統(tǒng)并進(jìn)行大規(guī)模修改。而基于工作流引擎設(shè)計(jì)開發(fā)的用電信息采集系統(tǒng)可以通過適當(dāng)調(diào)整或重新定義工作流程就能夠適應(yīng)實(shí)際業(yè)務(wù)邏輯的變化,系統(tǒng)可以在較短時(shí)間內(nèi)維護(hù)并投入使用,大大降低了開發(fā)和維護(hù)成本。
本文研究分析了工作流技術(shù)及工作流引擎管理機(jī)制,并基于工作流技術(shù)對用電信息采集系統(tǒng)的體系結(jié)構(gòu)、工作流引擎的流程管理、申請書管理、我的任務(wù)、工單查詢等模塊等進(jìn)行了設(shè)計(jì),并以重慶市用電信息采集系統(tǒng)為例,對基于工作流引擎的系統(tǒng)進(jìn)行了實(shí)現(xiàn)。實(shí)例證明,基于工作流引擎的用電信息采集系統(tǒng)在實(shí)際業(yè)務(wù)邏輯發(fā)生變化時(shí),可以只通過適當(dāng)調(diào)整或重新定義工作流程來適應(yīng)其變化,而無需修改程序,系統(tǒng)的開發(fā)成本和維護(hù)成本大大降低。
[1]胡江溢,祝恩國,杜新綱,等.用電信息采集系統(tǒng)應(yīng)用現(xiàn)狀及發(fā)展趨勢[J].電力系統(tǒng)自動(dòng)化,2014(2):131-135.
[2]宇文肖娣.電力用戶用電信息采集系統(tǒng)的研究與應(yīng)用[D].北京:華北電力大學(xué),2011.
[3]石俊萍,李必云.基于工作流的管理系統(tǒng)開發(fā)模型[J].吉首大學(xué)學(xué)報(bào):自然科學(xué)版,2010(6):49-52.
[4]SherryX.Sun,J.LeonZhao.Formalworkflowdesignanalytics usingdataflowmodeling[J].DecisionSupportSystems,2013,55(1):270-283.
[5]張凝.基于工作流引擎的電子政務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].上海:上海交通大學(xué),2013.
[6]蔡孝武,韓永國,藍(lán)科.一種輕量級工作流引擎的研究與設(shè)計(jì)[J].計(jì)算機(jī)工程,2010(20):78-79,82.
[7]黃瑜岳.基于Petri網(wǎng)的工作流合法性驗(yàn)證綜述[J].計(jì)算機(jī)應(yīng)用研究,2013,30(1):26-29.
[8]Xiaoping Qiu,Gangqiao Shi,Changlin Song,et al.Research on the realization method of workflow engine in enterprise information management[J].Journal of Enterprise[J]Information Management,2011,24(4):380-400.
[9]Ye Gang,Xianjun Li,Dan Yu,et al.The design and implementation of workflow engine for spacecraft automatic testing[J].Journal of Computers,2011,6(6):1 145-1 151.