摘要:由于無紙化考試具有試題維護簡便、考試實施簡單、試卷評判公正和有利于實施能力考核等特點,逐漸代替了傳統(tǒng)的紙質(zhì)考核方式。本文從無紙化考試系統(tǒng)的通用性著手,對無紙化考試系統(tǒng)中試題存儲、組卷算法、在線閱卷、考試過程監(jiān)控等關(guān)鍵問題進行了研究,設(shè)計了一種通用的無紙化考試系統(tǒng)。該系統(tǒng)具有較高的存儲效率、良好的擴展性和應(yīng)用性。
關(guān)鍵詞:在線考試;Web技術(shù);標記存儲;參數(shù)組卷
A Web-based paperless general examination platform design and Implementation
Li Jian Huang Hanwen Guo Liping
Department ofinformation engineering , Hunan Industry Polytechnic
Abstract: As the paperless examination hasa lot of Characteristics,such as easy to maintain、 simple to implement、fair and conducive to judge、Favorable to Ability test,It has gradually replaced the traditional examination methods on paper-based.This paper started with generality from the paperless examination system,researched the key technologies,including the storage of questions、the algorithm of making papers、judging Papers online、the examination process monitoring, and designed a generalsystem of paperless examination. The system has a high storage efficiency, good scalability and applicability。
Key Words:Online Examination; Web Technology; Tag-storage; make paper on Parameter
引言
考試作為課程教學(xué)評價的重要手段,歷來受到學(xué)校教學(xué)主管部門的高度重視,近年來,隨著web技術(shù)、數(shù)據(jù)庫技術(shù)、網(wǎng)絡(luò)技術(shù)、軟件技術(shù)的發(fā)展,無紙化考試因較之傳統(tǒng)的考試具有考試保密性較好、組織與實施簡單、公正性好、成本較低、更有利于實施能力考核等優(yōu)點,受到學(xué)校的普遍關(guān)注并被廣泛采用。本文針對無紙化考試系統(tǒng)中的數(shù)據(jù)存儲、組卷算法、在線考試過程管理等關(guān)鍵技術(shù)問題進行了設(shè)計,并應(yīng)用于無紙化考試系統(tǒng)中,該系統(tǒng)具有較高的存儲效率、管理與維護簡單,有利于能力考核等特點,具有較好應(yīng)用價值 。
一、系統(tǒng)功能及架構(gòu)
(一)系統(tǒng)功能
依照考試系統(tǒng)中涉及到的用戶對象和考試流程,實現(xiàn)考試系統(tǒng)基礎(chǔ)信息的管理、試題庫的授權(quán)管理與維護、試卷的生成、在線考試、自動評卷和在線評卷、成績查詢與輸出等功能。
(二)系統(tǒng)架構(gòu)
從系統(tǒng)的用戶角度出發(fā),本系統(tǒng)包括管理員、教師、學(xué)生三個子系統(tǒng),各子系統(tǒng)的功能如圖1所示。
系統(tǒng)提供統(tǒng)一的入口,根據(jù)用戶的不同身份,經(jīng)系統(tǒng)驗證后,進入不同的子系統(tǒng),完成各自既定的功能。
管理員子系統(tǒng)主要完成系部、班級、教師、授課等基礎(chǔ)信息的管理。只有在基礎(chǔ)信息設(shè)置好后,教師和學(xué)生才登錄此系統(tǒng)完成預(yù)定的功能。
教師子系統(tǒng)主要完成試題庫、考試信息、試卷信息、在線閱卷、成績統(tǒng)計與輸出等功能。
學(xué)生子系統(tǒng)主要實現(xiàn)課程在線考試、模擬測試、考試結(jié)果查詢等功能。
二、系統(tǒng)的具體實現(xiàn)技術(shù)
(一)技術(shù)實現(xiàn)平臺
系統(tǒng)采用 B/S 架構(gòu),Web服務(wù)器采用MicroSoft的IIS6.0,服務(wù)器端采用ASP(Active Server Page)技術(shù),數(shù)據(jù)存儲采用MicroSoft企業(yè)級數(shù)據(jù)庫SQL SERVER 2000,這樣既有利于技術(shù)上的兼容,也保證了多用戶環(huán)境下對數(shù)據(jù)庫訪問的性能要求,同時有利于系統(tǒng)管理與維護、考試組織與實施。
(二)數(shù)據(jù)存儲技術(shù)設(shè)計
為了保證系統(tǒng)的通用性,特別是有利于體現(xiàn)能力考核(實際操作)要求,本系統(tǒng)采用了數(shù)據(jù)庫和文件相結(jié)合的存儲方式,數(shù)據(jù)庫主要存儲系部、教師、班級、授課、學(xué)生、管理員等基本信息和試題、試卷、答卷、評卷等核心信息;文件系統(tǒng)主要用于存儲試題或答題中出現(xiàn)的如圖片、聲音、視頻等容量較大的信息,而在數(shù)據(jù)庫中只存儲該類試題和答題的索引信息(URL地址),采用這種存儲方式,有利于實現(xiàn)實操性較強課程的考核,同時也降低了數(shù)據(jù)庫服務(wù)器的存儲空間,提升了數(shù)據(jù)庫服務(wù)器的響應(yīng)時間和性能,實現(xiàn)了數(shù)據(jù)數(shù)據(jù)庫和web服務(wù)器的負載均衡。下面介紹題庫、試卷、考生答卷的存儲設(shè)計。
1.題庫的存儲設(shè)計
為了實現(xiàn)題庫管理的通用性,題庫從以下兩方面進行設(shè)計:
(1)課程題庫以知識模塊的方式組織。改變以往根據(jù)具體教材(章/節(jié))出題的弊端,而是根據(jù)課程教學(xué)目標,將所需考核的內(nèi)容(知識、素質(zhì)、能力)劃分為若干知識模塊,然后針對每個模塊設(shè)置若干題型,試題只針對知識模塊,而與具體教材無關(guān),即課程題庫以知識模塊為單位進行組織,有利于試題管理和維護。所有課程的知識模塊信息存儲在一個表中,如圖2所示。
其中id字段存儲知識模塊或課程的編號;TopID存儲了本模塊的上級ID,即此模塊對應(yīng)的課程id,若為課程名稱,則此字段為0;DBname存儲了本模塊或課程的名稱,TeacherID字段參照教師表的ID字段,主要設(shè)定此課程的負責(zé)人,只有課程負責(zé)人能負責(zé)維護本課程的試題庫。
(2)試題采用單一表存儲結(jié)構(gòu)。為了提高試題存儲效率,改變以往針對不同題型采用不同表結(jié)構(gòu)的存儲方式,通過采取自定義標記的方式,將所有試題采用統(tǒng)一表結(jié)構(gòu)進行存儲,存儲結(jié)構(gòu)如圖3所示。
其中subject字段存儲試題內(nèi)容;choose字段主要存儲單選題和多選題的備選項,為了區(qū)分每一個選項,采用自定義標記({(HuNanGY)})分隔每一個選項;answer字段主要用來存儲試題答案,對于多選題各答案之間用逗號分隔,對于可能含有多個結(jié)果的填空題等題型,采用自定義標記({(Answer)})加以分隔;type字段表示試題類型,其值可區(qū)分不同的試題類型(本系統(tǒng)約定值為1表示單選題、為2表示多選題等)。同時,對于subject、choose、answer等長度變化較大的字段采用變長的text類型。這種靈活的設(shè)計方式,不僅有利于試題的擴展(對于單選、多選、填空等題型),而且極大地節(jié)省了存儲空間,體現(xiàn)了試題的可擴展性與存儲的高效性。
2.試卷存儲設(shè)計
試卷信息包括試卷名稱、試卷對應(yīng)課程、知識模塊、考試時間、適應(yīng)班級、總分及各題型分值分布、各題型及難度系數(shù)分布、題型ID及分值、考生得分等信息,存儲結(jié)構(gòu)及樣本數(shù)據(jù)如圖4所示。
其中適應(yīng)班級字段(classid)采用自定義標記“$classid$”的方式存儲該試卷所適應(yīng)的所有班級;plevel字段用來保存每種難度系數(shù)(本系統(tǒng)中將試題難度劃分為難、中、易三種)的試題數(shù)量及分值,不同難度系數(shù)之間以自定義標記“|”分隔;quinfo字段用于保存該試卷所對應(yīng)的試題編號及分值,每個題型之間也用標記“|”分隔;examuser字段用于保存考了該試卷的每個考生的最終成績,每個考生成績采用自定義標記{User(用戶ID)成績}存儲。(圖4)
3.答卷存儲設(shè)計
考生答卷表主要保存考生每一考題的答題信息和試題得分信息,以便于主觀題的在線評卷和答卷備查。本系統(tǒng)對考生答卷信息存儲進行了優(yōu)化,不再以試卷ID為中心,而是以試題ID為中心,將試卷ID與試題ID相聯(lián)系,可以避免試題ID的重復(fù)存放,極大地節(jié)省了存儲空間,存儲結(jié)構(gòu)及樣本數(shù)據(jù)如圖5所示。
采取這種方式可將所有科目的答卷信息存在一張表中,且試題ID只需保存一次。在答題字段(answerinfo)通過自定義標記{User(用戶id)}與{/User(用戶id)}保存每一個考生對該題的答題信息;在paperID字段采用$試卷id$的方式保存與該試題有關(guān)的多套試卷ID信息,這種方式具有較高的存儲效率,同時,在處理過程中,將復(fù)雜的關(guān)系數(shù)據(jù)庫操作轉(zhuǎn)換為簡單的字符串的處理數(shù)和簡單DML語句相結(jié)合,可以獲得較高的性能。
(三)組卷技術(shù)設(shè)計
1.組卷策略設(shè)計
本系統(tǒng)采取參數(shù)化組卷策略。具體描述如下:
(1)確定試卷名稱、適應(yīng)班級和考試時間;
(2)確定試卷對應(yīng)的試題庫和相關(guān)知識模塊;
(3)選擇相應(yīng)題型,然后確定該題型對應(yīng)的分數(shù)與個數(shù);
(4)確定相應(yīng)題型下對應(yīng)的難度系數(shù)為難、中、易的試題的個數(shù)及相應(yīng)分值。
最后將設(shè)定結(jié)果保存在圖4所示的試卷表的pdb、ptime、classid、total、qunum、plevel等字段中。
2.試卷生成算法
根據(jù)組卷策略確定的參數(shù)(pdb、total、qunum、plevel),采取如下方法確定試題:
(1)根據(jù)各題型難度系數(shù)值不同的分布數(shù)量(plevel字段),采取先模塊平均(模塊平均=各題型難度系數(shù)個數(shù)/考核模塊數(shù)),確定每個模塊該難度系數(shù)所需的試題個數(shù);
(2)對于模塊平均不能取整的情形,對剩余的題目數(shù)量,采取隨機選取知識模塊的方式確定;
(3)在上述(1)、(2)確定好每一模塊、每一題型、每一難度系數(shù)所需的試題個數(shù)后,采取隨機抽取的方法確定每個試題,并將最后結(jié)果存入圖4所示的試卷表的表quinfo字段中。
(四)在線考試實現(xiàn)技術(shù)
為了防止考試過程中因停電、機器故障等造成的考試異常,本系統(tǒng)利用JavaScript 和Cookies技術(shù),每隔一定的時間自動將考生答題結(jié)果保存在客戶端的硬盤中,當用戶選擇“完成考試”按鈕時,將cookies中的答題信息通過網(wǎng)絡(luò)保存到數(shù)據(jù)庫的答題表中,同時,為了體現(xiàn)考試的公平性,每個考生的試題都完全相同,但每個考生的試題出現(xiàn)的順序是隨機,這樣可以盡量防止考試過程中的舞弊行為。
結(jié)束語
本文采用自定義標記技術(shù)對無紙化考試系統(tǒng)中相關(guān)的數(shù)據(jù)存儲進行了優(yōu)化,提出了基于細粒度的參數(shù)化組卷策略和較為公平的組卷算法。該考試系統(tǒng)在我院C++語言程序設(shè)計、Oracle數(shù)據(jù)庫技術(shù)、JAVA面向程序設(shè)計、數(shù)據(jù)結(jié)構(gòu)等多門課程的終結(jié)性考核中得到了應(yīng)用,應(yīng)用結(jié)果反饋本系統(tǒng)具有管理維護方便、組織實施簡單、可靠性較高、系統(tǒng)響應(yīng)快速等特點,能較好地滿足無紙化考試的要求。
參考文獻
[1] 李健,黃晗文,劉芳,陳劍英. Ajax在Web中的應(yīng)用研究[J]. 計算機與現(xiàn)代化, 2009年第7期.
[2] 呂林濤. 基于AJAX的Web無刷新頁面快速更新數(shù)據(jù)方法[J]. 計算機應(yīng)用研究, 2006,11:199-201.
[3] 楊曉燕,吳桂芹. 基于Ajax的遠程教育系統(tǒng)的研究與應(yīng)用[J]. 計算機系統(tǒng)應(yīng)用, 2007(10) .
[4] 程敏,胡寶清. 計算機考試系統(tǒng)智能閱卷的算法[J]. 華中農(nóng)業(yè)大學(xué)學(xué)報, 2008年8月第27卷第4期.
[5] 汪曉艷,王宇賓,薄靜儀. 無紙化考試管理平臺的設(shè)計與應(yīng)用[J]. 教育科普, 2008年7月總第135期.
[6] 胡楓. 無紙化考試系統(tǒng)的設(shè)計與開發(fā)[J]. 湘南學(xué)院學(xué)報, 2008年4月第四卷第2期.
[7] 劉忠民,陳利國. 無紙化考試系統(tǒng)開發(fā)中的編程方法和技巧[J]. 鄭州鐵路職業(yè)技術(shù)學(xué)院學(xué)報, 2009年6月第2l卷第2期.
[8] 郭新順,劉雪芬,鄭戟明. 無紙化考試系統(tǒng)研制[J]. 計算機應(yīng)用與軟件, 2005年8月第22卷第8期.
[9] 項潔,姜華強,潘紅. 無紙化考試自適應(yīng)考場編排MIS的設(shè)計與實現(xiàn)[J]. 杭州師范大學(xué)學(xué)報(自然科學(xué)版), 2008年3月第7卷第2期.
[10] 張承明,賈志軍,梁勇,殷桂堂. 信息技術(shù)無紙化考試系統(tǒng)關(guān)鍵技術(shù)研究[J]. 福建電腦, 2007年第10期.
[11] 苗哲. 基于ASP技術(shù)的網(wǎng)絡(luò)考試系統(tǒng)[J]. 福建電腦, 2009年第7期.
[12] 陳清利,劉琳. 基于B/S結(jié)構(gòu)的網(wǎng)絡(luò)考試系統(tǒng)的分析與設(shè)計[J]. 網(wǎng)絡(luò)與通信, 2008年第2期.
[13] 宋小波. 基于AJAX的無紙化考試系統(tǒng)的設(shè)計與實現(xiàn)[J]. 高新技術(shù), 2007(12) .