孫 福,馬少闖,李前進,毛志俊
(1.軍械工程學院 訓練部,河北 石家莊050003;2.軍械工程學院5系,河北 石家莊050003)
基于Petri網(wǎng)模型的儀器設備共享平臺設計與實現(xiàn)
孫 福1,馬少闖1,李前進2,毛志俊1
(1.軍械工程學院 訓練部,河北 石家莊050003;2.軍械工程學院5系,河北 石家莊050003)
針對當前高校大型儀器設備共享率低的情況,使用Petri網(wǎng)建模理論建立了高校儀器設備共享平臺Petri網(wǎng)模型,并分析了此模型的正確性?;诮⒌哪P蛯ζ脚_的功能和架構進行了設計,采用SSH 2框架實現(xiàn)了此平臺,較好滿足了實際應用的需要。
Petri網(wǎng);儀器設備共享平臺;SSH 2
引言
大型儀器設備作為科學研究重要手段,是高等學校開展教學和研究工作的重要物質(zhì)基礎。其利用率高低關系到高等學??萍紕?chuàng)新能力的形成和發(fā)揮。實現(xiàn)資源共享可以提高儀器設備利用率,降低科研成本,提高各實驗室的技術水平。因此,各高校研究、開發(fā)了各具特色的管理信息系統(tǒng),為大型儀器共享管理起到了重要作用。
大型儀器管理工作在實際執(zhí)行過程中存在跨部門信息共享、多級管理部門審核等現(xiàn)象,這樣就形成了一個工作流。目前各高校采用的儀器共享管理系統(tǒng)大多沒有對工作流進行建模,在實際使用過程中出現(xiàn)了一系列的問題。
(1)儀器數(shù)據(jù)及時性和真實性難以保證,儀器共享率低。
儀器設備的購置審核歸屬于財務部門,儀器設備的管理歸屬于教學保障部門,儀器設備的日期維護歸屬于基層教研室或者實驗室。如果沒有對各部門工作流程進行建模,進行各部門業(yè)務間的無縫鏈接,必然會使部門間業(yè)務協(xié)同有很大困難,致使儀器設備信息難以及時更新,造成設備閑置或者報廢設備依然可以預約等一系列問題。
(2)工作流程存在死鎖現(xiàn)象,造成業(yè)務沖突。
儀器設備的共享涉及多種情況,每一個狀態(tài)的變化都會影響整個工作業(yè)務,在建設共享平臺系統(tǒng)時,如果不對業(yè)務流程建模,對極端情況的處理就會缺乏考慮,必然會造成業(yè)務死鎖,即某種業(yè)務情況形成死循環(huán)。
(3)儀器使用數(shù)據(jù)分析不足,難以實現(xiàn)智能決策。
對儀器使用情況數(shù)據(jù)的分析僅限于統(tǒng)計匯總,沒有引入常用的統(tǒng)計分析工具,如時間序列分析、聚類分析、相關性分析等,無法給管理者的決策提供數(shù)據(jù)支撐。
針對于此,本文利用Petri建模技術,建立了高校儀器共享平臺的業(yè)務流模型,并采用Spring+Hibernate技術設計實現(xiàn)了高校儀器設備共享管理系統(tǒng)。
1.Petri網(wǎng)建模理論[1]
Petri網(wǎng)最早由C.A.Petri于1962年在其博士論文中提出,既可以用于確定性建模,也可用于邏輯性的定性建模,已成為控制理論處理離散時間系統(tǒng)的有力工具。Petri網(wǎng)的主要優(yōu)點為:采用網(wǎng)絡圖的形式模擬組織、結構和狀態(tài)的變化,能有效模擬異步并發(fā)系統(tǒng),直接分析模型實體中是否具有諸如死鎖、狀態(tài)空間無限等異常特征。
Petri網(wǎng)是一個三元數(shù)組N=(P,T,F(xiàn)),其中P是節(jié)點集合,T是變遷節(jié)點的集合,F(xiàn)是p→t,t→p的有向弧線集合。設p∈P,t∈T,I(t)={P|(p,t)∈F}稱為t的輸入庫所集,0(t)={|(t,p)∈F}稱為輸出庫所集。設庫所集P={p1,p2,p3,p4,p5},變遷集 T={t1},流關系 F={(p1,t1),(p2,t1),(p3,t1),(t1,p4),(t1,p5)},則Petri網(wǎng)圖如圖1所示:
2.儀器設備共享平臺的Petri網(wǎng)模型
儀器共享平臺涉及的工作流程主要分為儀器信息管理流程、儀器預約審核流程,其業(yè)務流程包括三個庫所儀器管理員(P1)、教保部門管理人員(P2)、普通用戶(P3)。儀器管理員對應變遷集T1={新增儀器(t1)、刪除儀器(t2)、審核預約(t3)},教保部門管理人員對應變遷集T2={審核新增儀器 (t4)、審核刪除儀器 (t5)、審核預約(t6)},普通用戶對應變遷集T3={預約儀器(t7)},所以此Petri網(wǎng)模型為庫所集P={P1,P2,P3},變遷集T={t1,t2,t3,t4,t5,t6,t7}。儀器共享平臺的流關系如下:
圖1 Petri網(wǎng)圖
建立Petri網(wǎng)模型如圖2所示:
圖2 儀器共享平臺Petri模型
經(jīng)過對以上模型的分析,可知此模型主要實現(xiàn)了儀器預約和審核:流關系(P3,t7,P1,t3,P2,t6,P3),(P3,t7,P1,t3,P3);儀器新增和審核:流關系(P1,t1,P2,t4,P3),(P1,t1,P2,t4,P1);儀器報廢和審核:流關系(P1,t2,P2,t5,P3),(P1,t2,P2,t5,P1)等三個工作流程。根據(jù)模型圖可以看出此模型的每一個任務都是可執(zhí)行的,每一個任務都是可觸發(fā)的;如果在運行環(huán)節(jié)存在拒絕申請(即值為0的變遷),則模型可立刻轉入終止狀態(tài),并通過一個返回信息返回初始狀態(tài),而中斷后的位置都是空的;沒有死任務,也就是說Petri網(wǎng)是活的。[2]據(jù)以上分析,可知此模型的設計是合理的。
在建立共享平臺Petri模型的基礎上,開發(fā)了一套基本B/S架構的高校大型儀器設備共享平臺。儀器共享平臺嚴格按照MVC模式設計,以求在最大程度上實現(xiàn)程序的 “解耦”。技術實現(xiàn)上采用流行的 Spring+ Struts+Hibernate(SSH2)架構。[3]總體結構分為控制器層(Controller)、服務器層(Service)、模型層(Model)、DAO層和視圖層(View)??傮w架構如圖3所示:
圖3 儀器共享平臺架構圖
控制器層(Controller)負責處理Dispatch Servlet分發(fā)的請求,根據(jù)請求的數(shù)據(jù),分發(fā)給相應的業(yè)務處理模塊,儀器共享平臺的Petri網(wǎng)模型共有三個處所,對應建立三個控制器類——普通用戶控制器、儀器管理員控制器、教保管理控制器。這樣通過判斷用戶角色,把請求分發(fā)給相應的控制器處理。每一個處所都對應自己的變遷集,每一個控制器的控制轉發(fā)函數(shù)對應變遷集中的每一個變遷,以實現(xiàn)Petri網(wǎng)模型的業(yè)務流關系。[4]
服務器層主要用來實現(xiàn)復雜的業(yè)務邏輯處理,對應Petri網(wǎng)模型中具體的每一個變遷的實現(xiàn),因此建立了三個服務器類——普通用戶服務器、儀器管理員服務器、教保管理服務器。每一類中根據(jù)變遷集中的變遷建立相應的業(yè)務處理函數(shù)。
DAO層和Model層主要是用來對數(shù)據(jù)庫進行操作。Model層對應數(shù)據(jù)庫中某個表的實體類,這樣把一個數(shù)據(jù)表對象化。DAO層是數(shù)據(jù)訪問層,對已經(jīng)對象化的數(shù)據(jù)庫表的Model對象進行增刪查改等數(shù)據(jù)操作。
視圖層又稱為表現(xiàn)層,主要用來把業(yè)務處理結果以某種形式展示給用戶,主要采用JSP+Struts2標簽實現(xiàn)。
1.系統(tǒng)設計思路
高校儀器設備共享平臺的設計目標是最大程度地實現(xiàn)儀器共享,提高高校儀器設備的使用效率,并提供智能決策功能,為教學保障部門購置儀器設備提供數(shù)據(jù)支撐和決策參考。因此參照前面建立的儀器設備共享平臺的Petri網(wǎng)模型,主要實現(xiàn)了儀器查詢預約與審核、儀器信息實時管理、儀器報廢實時管理、智能決策支撐等功能模塊。
2.系統(tǒng)實現(xiàn)
儀器設備共享平臺的Petri網(wǎng)模型包含三個處所,因此相應建立三個用戶角色——教保管理員、儀器管理員、普通用戶。根據(jù)Petri網(wǎng)模型的流關系實現(xiàn)了儀器預約申請、儀器預約審核、儀器新增申請、儀器刪除申請等功能。與工作流無關的功能包括用戶權限管理、智能決策支撐等共用功能。系統(tǒng)的整個組織結構如圖4所示:
圖4 高校儀器設備共享平臺組織結構圖
(1)用戶權限管理
不同用戶角色利用各自的用戶名、密碼登錄后,轉換到相應的用戶角色頁面。并把用戶名保存在Session中。Session是一種記錄客戶狀態(tài)的會話機制,當客戶端瀏覽器訪問服務器時,服務器把客戶端信息記錄在服務器上,客戶端瀏覽器再次訪問時只需從Session中查找該客戶狀態(tài)就可以了。[5]為了防止用戶在同一臺電腦上登錄多個用戶以致造成用戶角色的誤操作,用戶權限管理模塊還實現(xiàn)了單點登錄功能,即一臺電腦只允許一個用戶登錄。
(2)儀器查詢預約
儀器設備使用情況復雜多變,為了提高儀器使用效率,采用智能搜索算法,對用戶輸入的預約查詢條件進行智能化搜索,并把最佳方案排在搜索結果的最前面供用戶選擇。
(3)儀器預約審核
儀器的預約審核采用兩級審核,先由儀器管理員根據(jù)儀器使用情況對預約申請進行審核,然后報教保管理員審核備案。
(4)儀器信息增刪
儀器信息的增加和刪除,先由儀器管理員提出申請,報批教保管理員,教保管理員審核通過前,儀器信息被鎖定,不能被普通用戶預約使用。此外,為了避免儀器信息更新的滯后,本平臺留有和財務、采購等部門對接的數(shù)據(jù)接口,以實現(xiàn)對儀器信息的全程監(jiān)控。
(5)智能決策支撐
為了便于教保人員更好地掌握儀器使用情況,為以后儀器的管理和采購提供數(shù)據(jù)支撐,平臺提供了智能決策支撐功能。利用數(shù)理統(tǒng)計的方法,引入數(shù)學期望、標準差、二階矩等統(tǒng)計量,[6]實現(xiàn)對儀器使用情況、用戶預約情況的數(shù)據(jù)分析,并可以把數(shù)據(jù)導出為SSPS統(tǒng)計軟件支持的SAV格式和Excel文件,便于用戶使用自己熟悉的軟件對數(shù)據(jù)進行進一步的分析。
本文在確保平臺實用性的基礎上,開發(fā)了一套B/S架構的儀器設備共享平臺管理系統(tǒng)。開發(fā)平臺為JAVA EE,采用流行的Spring+Struts+Hibernate輕量級架構具體實現(xiàn)平臺各功能,數(shù)據(jù)庫采用的是 SQL Server 2005,應用服務器采用Tomcat。圖5為教保管理員用戶界面:
圖5 儀器設備共享平臺——教保管理員界面
本文利用Petri網(wǎng)建模理論建立了高校儀器設備共享平臺的模型。從此模型出發(fā),采用SSH2實現(xiàn)了高校儀器設備共享管理系統(tǒng)。目前此系統(tǒng)已投入運行,有效解決了儀器設備信息使用效率低、信息更新滯后、統(tǒng)計數(shù)據(jù)難以提供決策支撐等問題。
[1]袁崇義.Petri網(wǎng)原理與應用[M].北京:電子工業(yè)出版社,2005.3:128.
[2]汪家常,徐昶,季小明,計勇.基于工作流的高校學費管理系統(tǒng)研究[J].計算機應用與軟件,2012(6).
[3]陽雪峰,陳文臣.JavaW eb 2.0基于Spring、Struts、Hibernate輕量級架構開發(fā)[M].北京:機械工業(yè)出版社, 2009.1:183.
[4]歐陽俊,楊貫中,陶勇,唐金鵬,申奧.基于對象Petri網(wǎng)工作流建模的研究與實現(xiàn)[J].計算機工程與設計,2005 (10).
[5]盧漢鵬.JSP開發(fā)技術詳解[M].北京:化學工業(yè)出版社,2010.7:191.
[6]魏宗舒等.概率論與數(shù)理統(tǒng)計教程[M].北京:高等教育出版社,2003:227-231.
(編輯:王天鵬)
TP315
A
1673-8454(2015)15-0087-03