摘 要:數(shù)字化學(xué)習(xí)與考試環(huán)境建設(shè)是崗位數(shù)字化訓(xùn)練建設(shè)的核心內(nèi)容。利用開發(fā)工具Borland Delphi7.0開發(fā)出適用于多崗位的在線訓(xùn)練考試系統(tǒng)。采用C/S模式多層結(jié)構(gòu),使用Access數(shù)據(jù)庫(kù),在中間層采用大量的遠(yuǎn)程方法設(shè)計(jì)供客戶端調(diào)用,實(shí)現(xiàn)訓(xùn)練考試過(guò)程與管理的數(shù)字化、信息化和自動(dòng)化。在線崗位訓(xùn)練考試系統(tǒng)是集數(shù)據(jù)庫(kù)管理、隨機(jī)選題與結(jié)果分析為一體,包含系統(tǒng)設(shè)置、考試、實(shí)時(shí)評(píng)分等功能模塊,通過(guò)TCP/IP協(xié)議連接到考試服務(wù)器完成試卷提交和讀取試卷。
關(guān)鍵詞:C/S模式;多層結(jié)構(gòu);Access;考試系統(tǒng);Delphi;隨機(jī)選題;實(shí)時(shí)評(píng)分
中圖分類號(hào):TP311.52
數(shù)字化建設(shè)以實(shí)現(xiàn)數(shù)字化網(wǎng)絡(luò)環(huán)境、資源、學(xué)習(xí)和工作環(huán)境、科研和管理、信息化和現(xiàn)代化等為最終目標(biāo)[1]。為提高廣大科技干部的理論水平,加快崗位數(shù)字化訓(xùn)練建設(shè)進(jìn)程,創(chuàng)建無(wú)紙化學(xué)習(xí)與考試環(huán)境,考慮到考試保密性、安全性和多專業(yè)等需求,本文采用Delphi7.0軟件開發(fā)基于C/S模式多層結(jié)構(gòu)的在線崗位訓(xùn)練考試系統(tǒng),系統(tǒng)使用Microsoft Access數(shù)據(jù)庫(kù)。本軟件具有計(jì)算機(jī)自動(dòng)組卷、實(shí)時(shí)評(píng)分、隨機(jī)抽取考試題目、模擬考試等功能,使考試工作標(biāo)準(zhǔn)化,技術(shù)人員可隨時(shí)對(duì)知識(shí)掌握程度和質(zhì)量進(jìn)行評(píng)估。
1 系統(tǒng)開發(fā)相關(guān)技術(shù)
1.1 基于C/S模式的多層結(jié)構(gòu)
兩層C/S結(jié)構(gòu)具有可靠性低、靈活性差、資源浪費(fèi)、維護(hù)費(fèi)用高等結(jié)構(gòu)缺陷[2],其業(yè)務(wù)邏輯和表達(dá)邏輯在一個(gè)處理過(guò)程中存在,每連接一臺(tái)電腦就會(huì)建立一個(gè)數(shù)據(jù)庫(kù)連接,電腦的增加會(huì)加大數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,使效率變低[3]。多層結(jié)構(gòu)的C/S模式,將中間業(yè)務(wù)邏輯層獨(dú)立出來(lái),具備可按應(yīng)用要求部署邏輯層次、網(wǎng)絡(luò)效率提高、管理性強(qiáng)、重用性好等優(yōu)點(diǎn)[3-4]。
1.2 Delphi7.0和Microsoft Access數(shù)據(jù)庫(kù)
Delphi程序可快速進(jìn)行模塊化編程,在集成環(huán)境、圖像編輯(Image Editor)和強(qiáng)大的數(shù)據(jù)庫(kù)功能[5]。系統(tǒng)使用Microsoft ActiveX Data Objects(ADO)和可以處理少量數(shù)據(jù)的Microsoft Access數(shù)據(jù)庫(kù)[6],針對(duì)崗位幾個(gè)專業(yè)的數(shù)據(jù)庫(kù)題庫(kù)設(shè)計(jì),在少量用戶訪問(wèn)數(shù)據(jù)庫(kù)時(shí)效率很高。
2 基于TCP/IP通信的三層C/S結(jié)構(gòu)設(shè)計(jì)
三層C/S結(jié)構(gòu)表達(dá)邏輯獨(dú)立,可在客戶端上進(jìn)行設(shè)置;業(yè)務(wù)邏輯放在服務(wù)器上,這種結(jié)構(gòu)對(duì)數(shù)據(jù)庫(kù)的連接減少[3]。在線訓(xùn)練考試系統(tǒng)由基于C/S架構(gòu)的多層結(jié)構(gòu)組成,包括數(shù)據(jù)庫(kù)服務(wù)器(數(shù)據(jù)服務(wù)層)、應(yīng)用程序服務(wù)器(業(yè)務(wù)邏輯層)和客戶端程序(數(shù)據(jù)表示層)三部分。
2.1 主要技術(shù)參數(shù)
系統(tǒng)采用數(shù)據(jù)庫(kù)服務(wù)器中的Microsoft Access數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)提交的答案。應(yīng)用程序服務(wù)器要通過(guò)各種接口來(lái)完成查詢、數(shù)據(jù)錄入、分析等工作,并采用數(shù)據(jù)模塊Remote Data Module,控件TADOconnection、TADOtable和Tdataset Provider與數(shù)據(jù)庫(kù)服務(wù)器連接??蛻舳顺绦蛴捎脩艚缑婧妥詣?dòng)評(píng)分系統(tǒng)組成,進(jìn)行時(shí)間記錄、自動(dòng)評(píng)分及與應(yīng)用服務(wù)器傳遞數(shù)據(jù)。若在考試系統(tǒng)安裝過(guò)程中服務(wù)器計(jì)算機(jī)發(fā)生變動(dòng),則客戶端和服務(wù)器連接采用動(dòng)態(tài)連接。安裝客戶端的電腦必須要連接服務(wù)器來(lái)獲取服務(wù),且要保證位于服務(wù)器的中間件與接口程序正常,使用TCP/IP協(xié)議與應(yīng)用服務(wù)器之間進(jìn)行通訊??荚囅到y(tǒng)采用TDBgrid組件顯示數(shù)據(jù),利用Tdatasource獲取數(shù)據(jù),可對(duì)TDBGrid表數(shù)據(jù)進(jìn)行修改,再通過(guò)TclientDataset部件向應(yīng)用服務(wù)器發(fā)送更新數(shù)據(jù)請(qǐng)求[7]。
當(dāng)上述工作都準(zhǔn)備好后,啟動(dòng)在線訓(xùn)練考試系統(tǒng),彈出服務(wù)器配置窗口,配置客戶端所連服務(wù)器的名稱、IP地址和連接傳遞信息所用的端口地址。若中間件、接口程序和系統(tǒng)程序都安裝在作為服務(wù)器的電腦上,則服務(wù)器名與IP地址相同。在作為服務(wù)器的電腦不改變的情況下,客戶端上服務(wù)器配置完畢,進(jìn)入考試系統(tǒng)就不用再配置。系統(tǒng)采用ACCESS數(shù)據(jù)庫(kù)保存提交的考試答案??荚囅到y(tǒng)具有自動(dòng)交卷和自動(dòng)評(píng)分功能,成績(jī)存儲(chǔ)在服務(wù)器的數(shù)據(jù)庫(kù)中[8]。
2.2 系統(tǒng)實(shí)現(xiàn)過(guò)程
2.2.1 數(shù)據(jù)庫(kù)服務(wù)器設(shè)計(jì)
考慮到實(shí)際需求,把每個(gè)崗位的計(jì)算機(jī)作為一個(gè)客戶端,安裝一個(gè)在線訓(xùn)練考試系統(tǒng),通過(guò)點(diǎn)擊隨機(jī)抽題、提交試卷按鍵,可與服務(wù)器存儲(chǔ)的主數(shù)據(jù)庫(kù)進(jìn)行交換,繼而發(fā)送給各崗位計(jì)算機(jī)。服務(wù)器不執(zhí)行數(shù)據(jù)處理,只有在點(diǎn)擊上述按鍵時(shí),才會(huì)發(fā)送請(qǐng)求數(shù)據(jù),把整個(gè)數(shù)據(jù)集通過(guò)網(wǎng)絡(luò)發(fā)送給正在進(jìn)行訓(xùn)練考試的計(jì)算機(jī)[9]。
將各崗位試題存儲(chǔ)到系統(tǒng)數(shù)據(jù)庫(kù)中,普通用戶也能建立自己的題庫(kù)系統(tǒng),為避免無(wú)關(guān)人員對(duì)數(shù)據(jù)庫(kù)修改,數(shù)據(jù)庫(kù)可設(shè)定密碼。建立系統(tǒng)數(shù)據(jù)庫(kù)test.mdb,存儲(chǔ)于數(shù)據(jù)庫(kù)服務(wù)器上設(shè)置為共享的文件夾下,文件路徑為:C:\在線訓(xùn)練考試系統(tǒng)\系統(tǒng)數(shù)據(jù)庫(kù)\Pserver\Databasefolder。
2.2.4 用戶界面設(shè)計(jì)
(1)考試系統(tǒng)
(2)隨機(jī)抽取試題功能的實(shí)現(xiàn)
系統(tǒng)擯棄人工抽取試題組卷,采用快速自動(dòng)的系統(tǒng)隨機(jī)生成抽題?;驹硎牵豪胷andom()函數(shù)循環(huán)生成題號(hào),再比較生成的題號(hào),不重復(fù)就記錄在Pick_Questions[i]數(shù)組中。目的是給用戶提供更快捷的考試節(jié)奏,隨機(jī)選題更能體現(xiàn)試卷的客觀性。主界面上設(shè)計(jì)了相應(yīng)的按鈕控件,對(duì)按鈕控件添加命令代碼,可以實(shí)現(xiàn)隨機(jī)抽取試題操作。
(3)考試時(shí)間記錄
考試系統(tǒng)的目的在于檢驗(yàn)和增強(qiáng)科技干部對(duì)于崗位知識(shí)掌握的熟練程度,設(shè)計(jì)時(shí)沒(méi)有規(guī)定固定的考試時(shí)間段。在考試界面按下<開始考試>按鈕后,開始時(shí)間以當(dāng)前系統(tǒng)時(shí)間被記錄到試題數(shù)據(jù)庫(kù)的表Login中,當(dāng)點(diǎn)擊<交卷>后,結(jié)束時(shí)間以當(dāng)前系統(tǒng)時(shí)間也被保存。
3 實(shí)時(shí)評(píng)分
提交試卷后考試界面上方會(huì)出現(xiàn)成績(jī),記錄在數(shù)據(jù)庫(kù)表Login中。
3.1 題型計(jì)分
4 結(jié)論
基于多層C/S架構(gòu),使用Delphi7.0軟件開發(fā),選擇Microsoft Access作為系統(tǒng)數(shù)據(jù)庫(kù)的在線崗位訓(xùn)練考試系統(tǒng)使技術(shù)人員隨時(shí)隨地對(duì)崗位技能知識(shí)進(jìn)行考核,可長(zhǎng)期保存考試信息、便于管理存檔,加快了崗位信息化建設(shè)步伐,具有實(shí)用性和很重要的推廣價(jià)值。
參考文獻(xiàn):
[1]郭清順.高校數(shù)字化校園建設(shè)的整體目標(biāo)與實(shí)施策略[EB/OL].http://www.sysu.edu.cn/2003/xxzy/yth/text/mubiao.ppt.
[2]孫志鋒,徐鏡春,歷小潤(rùn).數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫(kù)技術(shù)[M].杭州:浙江大學(xué)出版社,2004:186-189.
[3]李煥哲,張有華,陳宜英,劉曉亮,郭大權(quán),曹強(qiáng),王凡.Delphi三層結(jié)構(gòu)在網(wǎng)上考試系統(tǒng)中的應(yīng)用[J].河北省科學(xué)院學(xué)報(bào),2004,21(2).
[4]李舒,陳麗君.高校學(xué)生成績(jī)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].遼寧大學(xué)學(xué)報(bào),自然科學(xué)版,2006,33(3):283-285.
[5]Macro Cantu. Delphi7從入門到精通[M].北京:電子工業(yè)出版社,2003:242-255,422-426.
[6]田紅宇,張斌,李國(guó)霞.Delphi環(huán)境下基于ADO對(duì)象動(dòng)態(tài)創(chuàng)建和連接加密的Access數(shù)據(jù)庫(kù)[J].數(shù)據(jù)庫(kù)及信息管理,2011,28-29.
[7]陳振慶.基于Delphi/Access的C/S系統(tǒng)設(shè)計(jì)[J].廣西右江民族師專學(xué)報(bào),2006,19(3):68-72.
[8]張新軍.自動(dòng)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué).2008.
[9]崔再惠.Access數(shù)據(jù)庫(kù)與SQL Server數(shù)據(jù)庫(kù)主要功能的比較[J].鞍山師范學(xué)院學(xué)報(bào),2009,11(6):51-52.
[10]何定華.基于C/S模式的遠(yuǎn)程在線考試系統(tǒng)的原理及其Delphi實(shí)現(xiàn)[J].電子與計(jì)算機(jī)技術(shù),2011,10(1):63-65.
作者簡(jiǎn)介:陳典斌(1983.01-),男,廣西南寧人,本科,工程師,研究方向:冶金機(jī)械力學(xué)行為仿真、軟件工程;韓東霏(1981.12-),女,黑龍江佳木斯人,碩士,工程師,研究方向:冶金機(jī)械力學(xué)行為仿真、軟件工程;曲桂英(1973.03-),女,吉林梅河口人,碩士,工程師,研究方向:自動(dòng)化、軟件工程;韓岳洋(1986.12-),男,遼寧朝陽(yáng)市人,本科,助理工程師。
作者單位:白城兵器試驗(yàn)中心,吉林白城 137000;遼寧省朝陽(yáng)市龍城區(qū)林業(yè)局,遼寧朝陽(yáng) 122000