梁智學(xué),齊立磊
(南陽理工學(xué)院軟件學(xué)院,河南 南陽 473000)
隨著信息化技術(shù)的發(fā)展,作為電子政務(wù)系統(tǒng)的一部分,糾風(fēng)工作也需要加快信息化建設(shè)。在國務(wù)院糾風(fēng)辦提出“創(chuàng)新政風(fēng)行風(fēng)評議方式方法、創(chuàng)新評議載體、提高評議工作科學(xué)性”的背景下,南陽市政府糾風(fēng)辦把電子信息化技術(shù)應(yīng)用到糾風(fēng)工作中,擴(kuò)大糾風(fēng)工作的宣傳面,為廣大群眾提供一個(gè)閱讀、互動(dòng)的平臺(tái),使廣大群眾的投訴、意見、建議等能夠得以充分地表達(dá)。
目前的糾風(fēng)系統(tǒng)存在各部門重復(fù)建設(shè),比如各區(qū)、各縣、各市直單位、各區(qū)直單位等都需進(jìn)行相應(yīng)的糾風(fēng)工作信息化建設(shè),造成大量的資源浪費(fèi)。同時(shí),由于各單位在信息化建設(shè)的過程中,多由本單位自行建設(shè),獨(dú)立運(yùn)行,各系統(tǒng)之間不能有效地互通,各部門間的資源、信息不能共享,形成了一個(gè)個(gè)“信息孤島”。如何能夠避免各部門的重復(fù)建設(shè),實(shí)現(xiàn)信息共享及流通,最大限度地發(fā)揮信息資源的利用價(jià)值,切實(shí)提高糾風(fēng)工作的效率,是糾風(fēng)工作信息化建設(shè)需要思考解決的問題。
南陽市糾風(fēng)工作涉及多個(gè)糾風(fēng)參評單位和部門,如南陽市下轄的17個(gè)區(qū)縣、50多家政府部門及機(jī)構(gòu)、50多家公共服務(wù)行業(yè)單位、80多家醫(yī)院、40多所學(xué)校以及參評的市直單位、區(qū)直單位、縣直單位等。如果各個(gè)部門都進(jìn)行糾風(fēng)工作的信息化建設(shè),勢必會(huì)形成大量的重復(fù)建設(shè),造成資源浪費(fèi)。同時(shí),眾多部門的各自建設(shè),將會(huì)導(dǎo)致各部門的信息無法共享或流轉(zhuǎn),內(nèi)容無法統(tǒng)一管理等問題。
本文將站群技術(shù)引入到南陽市糾風(fēng)管理系統(tǒng)的設(shè)計(jì)中,有效地避免了分散建設(shè)帶來的各種問題。
南陽市糾風(fēng)管理系統(tǒng)由市糾風(fēng)辦主站和各糾風(fēng)參評單位(包括各縣區(qū)、各鄉(xiāng)鎮(zhèn)、各市直、區(qū)直、縣直單位)的二級(jí)或三級(jí)子站組成。每個(gè)子站的欄目設(shè)置由主站統(tǒng)一管理,子站的信息內(nèi)容由各參評單位獨(dú)立管理,系統(tǒng)的權(quán)限根據(jù)角色實(shí)行分級(jí)管理,不同角色的人員具有不同的權(quán)限,總管理員可以靈活分配各種角色的具體權(quán)限。主站和子站以及子站之間可進(jìn)行相關(guān)的公文傳遞、數(shù)據(jù)共享等。針對群眾反映的各種投訴案件,主站可根據(jù)投訴的實(shí)際情況設(shè)置不同的投訴批轉(zhuǎn)、處理流程,使群眾反映的問題能夠得到及時(shí)、有效的解決。主站和各子站主要由前臺(tái)顯示和后臺(tái)管理兩部分組成,均通過互聯(lián)網(wǎng)實(shí)現(xiàn)。其主要功能如圖1所示。
圖1 糾風(fēng)管理系統(tǒng)功能圖
前臺(tái)顯示包括最新公告、本地動(dòng)態(tài)、糾風(fēng)簡報(bào)、政務(wù)公開、結(jié)果反饋等欄目,分市、縣、鄉(xiāng)三類,供廣大人民群眾學(xué)習(xí)、瀏覽、溝通、交流、政策咨詢和反映問題使用。后臺(tái)管理包括部門管理、人員管理、訴求管理、新聞?lì)悇e管理、新聞管理等功能,為各糾風(fēng)單位提供相應(yīng)的辦公功能。管理員可以進(jìn)行不同的前臺(tái)顯示模版的選擇,定制前臺(tái)頁面顯示的欄目等操作。
訴求管理是糾風(fēng)管理系統(tǒng)的核心功能,可以分未處理訴求管理、處理中訴求管理、已處理訴求管理、對外發(fā)布訴求管理、無效訴求等。各級(jí)管理員在未處理訴求中可查看到群眾反映的未處理的投訴或者轉(zhuǎn)辦來的投訴,進(jìn)行處理,無效訴求可進(jìn)行刪除,也可聯(lián)系投訴人補(bǔ)充相應(yīng)的投訴材料。如果為有效訴求,管理員根據(jù)實(shí)際情況設(shè)置投訴處理流程,批轉(zhuǎn)到相應(yīng)的處理部門,并設(shè)置其處理時(shí)間,相應(yīng)部門進(jìn)行處理,并反饋處理結(jié)果至糾風(fēng)辦。糾風(fēng)辦根據(jù)其處理結(jié)果對外發(fā)布,供投訴人進(jìn)行查看并進(jìn)行評議。
政風(fēng)行風(fēng)評議是糾風(fēng)管理系統(tǒng)設(shè)置的政風(fēng)行風(fēng)建設(shè)和民主評議功能。通過該功能各參評單位發(fā)布政風(fēng)行風(fēng)建設(shè)工作動(dòng)態(tài)、服務(wù)承諾及相關(guān)內(nèi)容,為政風(fēng)日常評議提供依據(jù)。同時(shí),通過該功能可以對政府部門和行業(yè)及重點(diǎn)崗位、學(xué)校、醫(yī)院等單位進(jìn)行網(wǎng)上日常評議和集中評議。
結(jié)果反饋是指各糾風(fēng)單位對群眾的投訴進(jìn)行及時(shí)處理后,把處理結(jié)果通過該平臺(tái)進(jìn)行公布,接受群眾監(jiān)督,同時(shí)投訴人可以對投訴處理結(jié)果進(jìn)行評議打分。
專項(xiàng)治理是指治理教育亂收費(fèi)、治理醫(yī)藥購銷和醫(yī)療服務(wù)中的不正之風(fēng)、治理公路“三亂”等。廣大群眾可通過瀏覽這些專欄了解各項(xiàng)工作的動(dòng)態(tài),可以對涉及群眾切身利益的熱點(diǎn)問題發(fā)表看法。
辦理排行是各縣、區(qū)、糾風(fēng)參評單位關(guān)于糾風(fēng)工作的一個(gè)綜合量化排名,主要包括對投訴處理的及時(shí)率,投訴人的滿意率、投訴的總數(shù)量等指標(biāo)。
其處理流程如圖2所示。
圖2 網(wǎng)上投訴辦理流程圖
站群是指統(tǒng)一部署、統(tǒng)一標(biāo)準(zhǔn),建立在統(tǒng)一技術(shù)架構(gòu)基礎(chǔ)之上,分級(jí)管理、分散維護(hù),耦合程度高,信息可以實(shí)現(xiàn)基于特定權(quán)限共享呈送的“一群網(wǎng)站”[1]。
子網(wǎng)站群的發(fā)展大致可以有以下幾個(gè)階段[2]:
第一階段是形成自然的網(wǎng)站群。這個(gè)階段特點(diǎn)是個(gè)網(wǎng)站之間是無序的、獨(dú)立的。
第二階段是對網(wǎng)站在欄目、頁面風(fēng)格等方面進(jìn)行統(tǒng)一的整體規(guī)劃,但各網(wǎng)站之間存在隸屬關(guān)系,且各個(gè)網(wǎng)站相互獨(dú)立,信息不能共享。這個(gè)時(shí)候網(wǎng)站群的特點(diǎn)是風(fēng)格、樣式等外在統(tǒng)一,但信息還是孤立,無法有效地共享。
第三階段是實(shí)施網(wǎng)站群的整合。因業(yè)務(wù)整合的需要將分散在不同地理位置的獨(dú)立網(wǎng)站整合在一起,實(shí)現(xiàn)信息的共享。此階段形成的網(wǎng)站群,內(nèi)容信息還不能被充分地交換和共享,沒有統(tǒng)一用戶管理,無法做到整個(gè)網(wǎng)站群的聯(lián)合全文檢索。
第四階段是充分利用數(shù)據(jù)共享和交換技術(shù),以解決第三代網(wǎng)站群存在的缺陷。所有的網(wǎng)站運(yùn)行實(shí)現(xiàn)統(tǒng)一的標(biāo)準(zhǔn)接口,可以統(tǒng)一管理、智能化。
在系統(tǒng)應(yīng)用開發(fā)過程中,引入站群技術(shù),可以使門戶主站和各級(jí)部門的網(wǎng)站構(gòu)成一個(gè)整體,彼此不再孤立。用戶只要在門戶主站登錄就可以訪問各個(gè)部門的站點(diǎn),獲得一致的信息服務(wù)。同時(shí),在系統(tǒng)內(nèi)部的管理上,實(shí)現(xiàn)統(tǒng)一權(quán)限分配、統(tǒng)一導(dǎo)航、統(tǒng)一搜索、統(tǒng)一站點(diǎn)管理等,消除“信息孤島”,降低系統(tǒng)的開發(fā)、管理、維護(hù)成本。
目前,網(wǎng)站群系統(tǒng)主要包括站點(diǎn)管理、內(nèi)容管理和權(quán)限管理3個(gè)部分,所采用的技術(shù)主要包括虛擬主機(jī)配置、動(dòng)態(tài)網(wǎng)站技術(shù)、靜態(tài)網(wǎng)站生成技術(shù)、身份認(rèn)證技術(shù)等,同時(shí)網(wǎng)站群系統(tǒng)還要考慮與單位內(nèi)部現(xiàn)有基礎(chǔ)框架和應(yīng)用系統(tǒng)的集成[3]。
在進(jìn)行系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì)時(shí),采用系統(tǒng)分層思想,提高系統(tǒng)的邏輯性和可維護(hù)性。把糾風(fēng)管理系統(tǒng)分為4層:用戶層、服務(wù)層、功能層和數(shù)據(jù)層。針對該4層體系結(jié)構(gòu),在進(jìn)行技術(shù)架構(gòu)設(shè)計(jì)時(shí),根據(jù)安全、穩(wěn)定、分層的思想,選取J2EE作為系統(tǒng)開發(fā)的平臺(tái),選擇使用SSH2(Struts2+Spring+Hibernate)作為該系統(tǒng)的技術(shù)架構(gòu),同時(shí)綜合使用JQuery、Ajax、JBPM等技術(shù)。其體系結(jié)構(gòu)如圖3所示。
圖3 系統(tǒng)體系結(jié)構(gòu)圖
SSH2(Struts2+Spring+Hibernate)是目前較為流行的JavaWeb開發(fā)的開源框架,它很好地體現(xiàn)了項(xiàng)目設(shè)計(jì)時(shí)的分層思想,Struts2框架結(jié)合JQuery和Ajax技術(shù)實(shí)現(xiàn)糾風(fēng)管理系統(tǒng)的用戶層,Spring框架結(jié)合JBPM工作流引擎實(shí)現(xiàn)系統(tǒng)的業(yè)務(wù)邏輯層,Hibernate框架結(jié)合JBPM工作流引擎技術(shù)實(shí)現(xiàn)系統(tǒng)的數(shù)據(jù)層。利用三層開源的SSH2架構(gòu),能夠增強(qiáng)項(xiàng)目的靈活性、穩(wěn)定性和健壯性。
在三層架構(gòu)中,Hibernate負(fù)責(zé)項(xiàng)目的領(lǐng)域模型層,Spring負(fù)責(zé)項(xiàng)目的業(yè)務(wù)邏輯層,Struts 2.0負(fù)責(zé)項(xiàng)目的表現(xiàn)層。本系統(tǒng)采用MyEclipse 7.5作為開發(fā)工具,在MyEclipse工具下整合SSH2框架較為簡單,根據(jù)向?qū)б来翁砑?Hibernate 3.2、Spring 2.0框架的支持,然后把 Struts 2.0 的 commons-logging-1.0.4.jar、freemarker-2.3.8.jar、ognl-2.6.11.jar、struts2-core-2.0.14.jar、xwork-2.0.7.jar五個(gè)包加入到項(xiàng)目的 lib下。由于 Spring 中的 cglib-nodep-2.x.x.jar與 Hibernate中的 cglib-2.2.jar相沖突,刪除 Hibernate中的cglib-2.2.jar即可。配置完成后,模型層對應(yīng)于包c(diǎn)om.nyjfweb.model,業(yè)務(wù)邏輯層對應(yīng)于包 com.nyjfweb.manager,其接口的實(shí)現(xiàn)對應(yīng)于 com.nyjfweb.manager.impl,表現(xiàn)層由Struts 2中的Action負(fù)責(zé)管理調(diào)用。
群眾訴求的及時(shí)處理是糾風(fēng)管理系統(tǒng)的一個(gè)重要功能,而訴求的處理流程需要根據(jù)訴求的問題實(shí)際情況發(fā)生變化,比如當(dāng)訴求相對較少的時(shí)候,所有訴求包括對二級(jí)部門的訴求都經(jīng)過市糾風(fēng)辦進(jìn)行轉(zhuǎn)辦,訴求處理部門反饋處理結(jié)果。當(dāng)訴求量比較大時(shí),二級(jí)部門的訴求單獨(dú)形成另外的訴求處理流程??紤]到訴求處理的可擴(kuò)展性,未來的三級(jí)部門的訴求處理也可能是新的流程。即使對于同一級(jí)部門的訴求處理,也可能會(huì)因內(nèi)容的不同而采用不同的訴求工作流進(jìn)行處理。
如果采用傳統(tǒng)的工作流處理方式,把所有的工作流都定義成靜態(tài)的流程,采用硬編碼的形式去實(shí)現(xiàn),這就造成如果項(xiàng)目在運(yùn)行的過程中,流程發(fā)生新的變化,其修改就變得比較困難,同時(shí)工作量也比較大,開發(fā)效率也比較低,項(xiàng)目的可擴(kuò)展性也比較差。
JBPM是一個(gè)基于Java的開源的工作流引擎[4],它支持工作流在運(yùn)行時(shí)改變和擴(kuò)展。在糾風(fēng)管理系統(tǒng)中,采用JBMP工作流引擎技術(shù),能夠增加訴求處理流程的靈活性,又能為未來的擴(kuò)展提供便利,同時(shí)也提高了軟件的開發(fā)周期及其軟件產(chǎn)品的靈活性。
在本系統(tǒng)中,使用JBPM 4.4開發(fā)的流程如下:
(1)通過MyEclipse把JBPM整合到SSH2框架中。
在工程中的lib中加入相應(yīng)的JBPM的jar包,如:jbpm.jar、juel-api.jar、juel-engine.jar、juel-impl.jar、mail.jar等。修改配置文件 hibernate.cfg.xml,添加JBPM的映射配置以及緩存屬性的配置。同時(shí)修改 Spring的配置文件 ApplicationContext.xml,加入如下代碼:
(2)JBPM的數(shù)據(jù)庫生成。
對于數(shù)據(jù)庫的創(chuàng)建可以使用Hibernate來創(chuàng)建,設(shè)置 hibernate.hbm2ddl.auto,也可以手動(dòng)創(chuàng)建數(shù)據(jù)庫,執(zhí)行jbpm_home/install/src/db/create下的腳本。
(3)業(yè)務(wù)流程的設(shè)計(jì)。
業(yè)務(wù)流程的設(shè)計(jì)有兩種方式:(1)使用JPDL語法手工創(chuàng)建XML文件;(2)采用可視化的建模工具。手工方式在對復(fù)雜流程建模時(shí)存在不足,本系統(tǒng)基于MyEclipse 7.5,使用JBPM的可視化建模工具對系統(tǒng)的業(yè)務(wù)流程進(jìn)行建模。
在把JBMP可視化建模工具安裝到MyEclipse后,就可以進(jìn)行可視化的業(yè)務(wù)流程設(shè)計(jì)工作。需要注意的是,在使用 MyEclipse 7.5+JBPM 4.4進(jìn)行可視化業(yè)務(wù)流建模時(shí),生成的XML文件對中文不支持,需要在myclipse.ini添加語句-Dfile.encoding=UTF-8 至文件尾即可解決該問題。系統(tǒng)中投訴處理過程的流程定義如圖4所示。
圖4 投訴流程定義圖
利用可視化流程建模工具對投訴流程建模完成后,對應(yīng)的流程定義XML文件自動(dòng)生成。
(4)流程的部署發(fā)布。
JBPM的流程發(fā)布有兩種方式[5]:(1)簡單的方式,只發(fā)布流程定義文件;(2)完整的發(fā)布方式,是將流程文件從設(shè)計(jì)器中導(dǎo)出為一個(gè)zip包文件(包括流程定義文件、gpd.xml以及 processimage.jpg),然后利用應(yīng)用程序?qū)⑵浒l(fā)布到數(shù)據(jù)庫中,其核心代碼如下:
Ajax技術(shù)是使用JavaScript技術(shù)和XML數(shù)據(jù)格式實(shí)現(xiàn)客戶端和服務(wù)器端進(jìn)行異步通信技術(shù)的一種方法。在系統(tǒng)中,使用Ajax技術(shù),能夠在頁面無刷新的情況下實(shí)現(xiàn)與服務(wù)器通信,增強(qiáng)用戶體驗(yàn)。同時(shí)能夠利用客戶端的處理能力,減輕服務(wù)器和帶寬負(fù)擔(dān),減少冗余數(shù)據(jù)的現(xiàn)實(shí),提高效率。
比如在用戶利用該系統(tǒng)進(jìn)行投訴時(shí),需要對投訴單位進(jìn)行選擇,投訴單位為二級(jí)級(jí)聯(lián)的select框。在實(shí)現(xiàn)此功能時(shí),使用Ajax技術(shù),根據(jù)用戶選擇的一級(jí)select框的值異步請求服務(wù)器進(jìn)行對應(yīng)的二級(jí)內(nèi)容的查詢,然后返回給客戶端,客戶端解析返回結(jié)果,顯示到頁面上。其JavaScript解析返回結(jié)果并顯示到頁面上的函數(shù)如下:
本文將站群技術(shù)引入到糾風(fēng)管理系統(tǒng)中,有效地解決了各糾風(fēng)單位的“信息孤島”問題,實(shí)現(xiàn)了信息的共享?;陂_源的SSH2三層架構(gòu)為市級(jí)糾風(fēng)管理站群系統(tǒng)提供了理想的架構(gòu)模式。綜合使用分級(jí)權(quán)限管理、JBPM工作流引擎、報(bào)表處理等技術(shù),使系統(tǒng)具有靈活的權(quán)限配置、流程配置、站群模版自選、支持動(dòng)態(tài)擴(kuò)展、報(bào)表豐富等特點(diǎn)。
目前,基于站群技術(shù)的南陽市糾風(fēng)管理系統(tǒng)已成功投入到使用中,項(xiàng)目運(yùn)行平穩(wěn)。此方案的成功開發(fā)和應(yīng)用有效地提高了糾風(fēng)管理工作的效率,為各級(jí)糾風(fēng)管理站群系統(tǒng)的開發(fā)提供了一種有效的解決方案。
[1]陳向東.新一代站群系統(tǒng)的特點(diǎn)及構(gòu)建實(shí)例[J].北華大學(xué)學(xué)報(bào):自然科學(xué)版,2011,12(3):359-362.
[2]葛世海.基于J2EE站群管理平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2010.
[3]張海攀,許墨.多內(nèi)容管理系統(tǒng)的網(wǎng)站群系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].中國教育信息化:高教職教,2011(12):69-70,82.
[4]宗傳玉,劉旸,高亮,等.JBPM在OA工作流中的研究與應(yīng)用[J].微處理機(jī),2011,32(6):45-47,51.
[5]張瑞,羅金濤.JBPM工作流引擎在OA中的應(yīng)用研究[J].電子設(shè)計(jì)工程,2012,20(17):26-28.
[6]鄒銀馬,趙喆.基于S2Si+jQuery框架的科技查新平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)與現(xiàn)代化,2012(6):212-214,220.
[7]王水,梁智學(xué).市級(jí)公安警務(wù)系統(tǒng)整合的架構(gòu)分析與設(shè)計(jì)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30(3):773-775.
[8]譚瑩宇.基于Hibernate JPA和JQuery框架的數(shù)據(jù)查詢研究與實(shí)現(xiàn)[J].計(jì)算機(jī)與現(xiàn)代化,2012(1):196-198.
[9]王濤,周學(xué)文.基于jQuery+Ajax框架的氣象區(qū)域站實(shí)時(shí)數(shù)據(jù)監(jiān)控設(shè)計(jì)[J].電腦編程技巧與維護(hù),2012(18):76-77.
[10]陳志英.云計(jì)算下網(wǎng)站群架構(gòu)安全性設(shè)計(jì)應(yīng)用分析[J].信息通信,2012(2):174.
[11]顧炳中,葉興茂,咸容禹,等.國土資源部門戶網(wǎng)站群內(nèi)容管理體系的設(shè)計(jì)[J].國土資源信息化,2012(1):8-14.
[12]徐曉婧,謝敏,劉暢.基于網(wǎng)站群理念和架構(gòu)的國家土地監(jiān)察網(wǎng)站群建設(shè)實(shí)踐[J].國土資源信息化,2012(1):20-24.
[13]褚蕓蕓,章增安.基于SOA的學(xué)科網(wǎng)站群設(shè)計(jì)研究[J].中國教育信息化:高教職教,2012(2):37-39.
[14]叢培民.云計(jì)算架構(gòu)下的網(wǎng)站群應(yīng)用實(shí)踐[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012,21(2):5-8.
[15]胡平,劉濤,李鈞.基于SSH/JBPM的辦公自動(dòng)化系統(tǒng)[J].工業(yè)控制計(jì)算機(jī),2011,24(12):85-87.
[16]杜義華,張亞.中國科學(xué)院網(wǎng)站群建設(shè)的系統(tǒng)工程方法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012,21(1):17-20.