王 蓉,李成大,魏宏旭
(1.成都工業學院 計算機工程系,成都 610031;2.成都國騰軟件資源有限公司 成都 610031)
為滿足安全培訓工作適應新形勢、新任務的要求,提高培訓質量和教學水平,積極推行“教考分離”制度(即由具備資質的培訓單位承擔安全培訓任務,安全監察機構只負責培訓單位的資質認證和考核管理),建立了分級負責管理、分工明確、培訓與考核分離的安全生產培訓考核體系。筆者通過對安全培訓與考試技術標準和業務流程管理規范化進行研究,利用信息技術等現代化手段建立安全生產培訓與考試系統,以提高各級培訓中心安全生產培訓的規范性,有效管控考試過程,驗證培訓質量,從而提高安全生產人員安全生產技術能力,減少安全事故發生。
1)研究實現安全生產培訓與考試系統的業務組件化,實現業務開發的靈活性、易用性、可擴展性、可配置性和高安全性,以便支持全省100多家培訓中心的培訓考試業務。各培訓中心的網絡鏈接方式、數據傳輸方式各有不同,如何保證各種網絡中數據的高效傳輸,快速地進行培訓中心各業務的特性擴展,保證開發、實施的速度和質量,保證組網設備的與數據安全、網絡加密無關性,是系統設計的重點;同時,也要保證各培訓中心在標準的、開放的通訊協議基礎上,實現業務功能的增加、刪除和修改。
2)研究基于模型的試卷組卷,提升系統的動態適應性。安全生產培訓與考試系統涉及多工種、多知識點的交叉和知識的更新,并且也需要考慮每份試卷的公平性,因此,要研究包括基于數據模型建立科學的試卷組卷方式及基于試題四大參數指標的選題方式。
3)研究從數據直接生成界面,提升軟件系統的可擴展性及部署的高效性。培訓中心的業務系統可以根據業務需要選擇相應的通訊協議,然后生成行業標準化數據,根據定義的數據庫自動生成用戶交互界面,這種方法為靈活、快速、經濟、實效地開發培訓考試業務系統提供了可靠保障。
4)研究從數據直接生成測試用例,提高應用工程系統質量,降低成本。培訓中心可以根據定義數據庫,自動生成測試用例進行測試;系統可以在進行業務擴展、覆蓋范圍增加或者開發后期,將更多的精力集中在安全考試工種和各工種差異性的業務和數據上,降低維護成本,有效縮短系統更新上線周期。系統將定義的標準數據、數據庫,以及自動生成經測試的代碼,自動翻譯成相關協議數據,并將業務數據配置到設備中,從而保障系統的質量。
安全生產培訓與考試系統技術總體結構分為4層,如圖1所示。1)數據存儲層。本系統中涉及的數據庫以SQL Server為主。此外包含非結構化數據(文本文件、Excel、PDF等)。2)商業邏輯層中間件。本系統Web服務器可選擇IIS服務器。邏輯層中間件(.Net Framework)負責處理Web客戶端請求,負責運行業務模型C#.Net對象數據映射關系框架等ASP.Net應用系統。3)標準業務應用層是培訓考試系統的核心業務層,包含基礎支撐中間件,實現培訓考試系統的所有應用接口。平臺系統管理內容均放置在標準業務應用層,它同時通過數據網關,實現了對大規模數據的并行計算的接口。4)標準信息門戶展現層可以實現自定義數據輸入Web界面、查詢統計報表、統計分析圖、網站框架設計、網站內容發布、數據導入導出等功能,核心功能為:a)網頁框架模板配置;b)信息網站定制;c)數據信息錄入(數據維護)定制;d)查詢統計、圖形定制;e)同一網頁支持異構數據查詢;f)報表分組匯總;g)報表預覽及打印;h)支持多種數據源數據獲取接口。
本系統實現的目標是安全生產人員通過培訓考試全面了解和掌握安全操作規程、各類相關知識點。而系統知識點的分布已有標準值參考,所以試卷考題的選定,以及考題與知識點分布是否相匹配就成為關鍵問題。為使考題的組合方式更具科學性,需要從考題中發現考生對知識點的掌握情況,并根據分析結果自動選擇新考題的組合,因為其中涉及變量與統計相關關系的問題,所以筆者選擇多元回歸作為考題選定的數據模型。
根據系統數據特征和分析要求,筆者采用“一對多”線性回歸分析建立數據模型。設隨機變量y與m個自變量x1,x2,…,xm存在線性關系:

圖1 安全生產培訓與考試系統結構圖

(1)式稱為回歸方程,式中 β0,β1,β2,…,βm為回歸系數,s為隨機誤差。
現在用β0+β1x1+β2x2+…+βmxm估計y的均值E(y),即E(y)=β0+β1x1+β2x2+… +βmxm,且假定S~N(0,σ2),y~N(β0+β1x1+… +βmxm,σ2),(β0,β1,…,βm,σ2)是與x1,x2,…,xm無關的待定常數。
設有n組樣本觀測數據:

其中:xij表示xj在第i次的觀測值,于是有:

其中:β0,β1,β2,…,βm為(m+1)個待定參數,s1,s2,…,sn為n個相互獨立的且服從同一正態分布N(0,σ2)的隨機變量,(2)式稱為多元(m元)線性回歸的數學模型。
(2)式亦可寫成矩陣形式,設

則(2)式變為:y=X β+ε,稱為多元線性回歸模型的矩陣形式。
系統通過近一年的運行,已經驗證“一對多”線性回歸分析模型能滿足全省安全生產考試系統的組卷需求,也能適應下一階段工種增加和知識點擴展。
系統試卷模型系數的選擇筆者采用回歸系統的最小二乘估計,用于設定試卷試題的4個參數(安全工種分類、知識點、難度系數、考生通過率)的修定值。本系統分組對關鍵參數進行兩組合,設:b0,b1,b2,…,bm分別為 β0,β1,β2,…,βm的最小二乘估計值,于是y的觀測值為:

其中:ek為sk誤差的估計值,稱為殘差或剩余誤差。令^yk為yk的估計值,則有:

(5)式表示實際值yk與估計值^yk的偏離程度。欲使估計值^yk與實際值yk擬合地最好,則應使殘差平方和達到最小,為此,可以應用微分求極值原理確定b0,b1,bm。
系統在每次計算機自動組卷選題時,會根據4個參數(安全工種分類、知識點、難度系數、考生通過率)設定值,對試題進行科學的選定。
本系統后臺業務代碼采用自動化生成,其核心組件為 ExamCode Parse Engine(代碼生成轉換引擎),其主要特點如下:
1)可以根據數據庫定制,高效生成標準的C#源代碼和相應的測試用例,系統的自動生成代碼特性在于可以根據客戶定制的培訓考試業務的數據定義,系統將自動生成界面和源代碼。
2)系統特性與數據分離:每個培訓中心的業務內容和特點,在系統中被原子化,可以單獨進行封裝,所有產品的特性都可以通過接口進行單獨的訪問。
3)系統具有可拆卸性:系統由多個組件(數據庫組件、界面設計組件和代碼生成器)構成,針對用戶需要,其每個組件都可單獨應用,又可無縫集成運用;每個組件均提供對外開放的接口,用于和其他系統集成應用。
4)由于采用多組件技術,系統目前已經實現對所有主流數據庫適配支持:對于大數據量并行運算,系統通過自己開發的數據網關來實現,并根據數據適配器的設計方式提供了對Oracle、DB2、SQL Server、Access等數據庫的支持和數據轉換,實現無縫集成。
本系統中的自動生成代碼、編譯并集成的自動化過程其依靠的關鍵模塊分別為CPTool,GUITool,CPS frame構成,如圖2所示。

圖2 代碼生成轉換引擎
其中CPTool是一個可視化的定義和開發界面,讓開發人員能夠定義新的codeplug。作為需求管理器,CPTool管理了所有關于codeplug的信息,并輸出缺省的codeplug以及缺省的GUI布局,同時,CPTool還生成系統數據對象詞法分析信息文件(parse information files),以便框架能夠對生成的codeplug進行詞法分析。CPTool生成的配置文件以及依賴腳本將協助進行依賴性檢測。
GUITool負責完成ExamCode圖形界面的開發分析,并生成培訓考試的圖形界面和調整圖形界面需要用到的配置文件(xml)。
CPS frame是本項目系統ExamCode Parse Engine的核心部分,它將實現代碼自動化生成目標的主要部分。在系統不斷發展的過程中或者業務需求者提出內容修改時,CPS框架結構并不發生任何變化,這正是本引擎的核心要義。
本系統的ExamCode Parse引擎已實現能夠處理最大22 Mbit的數據轉換,占用內存最大不超過處理數據的15%等多項硬性指標。
本系統已對納入的機構和人員實現全域認證,保證考試系統的安全性;系統已經覆蓋四川省安全生產的九大工種以及相關操作項,完成128個知識點的試題編制,通過基于模型的試卷組卷以及參數優化,考試通過率在可管理的范圍內;系統建設的業務范圍已經覆蓋培訓中心全部業務流程,包括培訓申請流程、考試申請流程、考試審批流程、考生考試流程、考試辦證流程、準考證生成流程和試卷生成流程等。四川省建設培訓與考試系統能滿足國家“教考分離”的管理要求,便于統一管理,統一建設,減少資金投入,能充分發揮各級安全管理部門的行政作用,便于系統在安全生產管理中的推廣應用。
[1]趙慶雙,王臻,聞星火,等.實驗室安全課網上學習與考試系統的開發與應用[J].實驗室研究與探索,2009(1):128-130.
[2]冉崇善,吳莎莎.基于SOA的輕量級企業整合架構設計與應用[J].計算機工程與設計,2011(4):1161-1164.
[3]劉錦萍,郁金祥.基于改進的粒子群算法的多元線性回歸模型參數估計[J].計算機工程與科學,2010(4):101-105.
[4]郭文越,陳虹,劉萬軍.基于SOA的數據共享與交換平臺[J].計算機工程,2010(19):280-282.
[5]李述山.多元響應回歸模型及其參數的非線性最小二乘估計混合算法[J].山東科技大學學報:自然科學版,2004(3):77-79.