摘要:概述了計算機網(wǎng)絡(luò)考試系統(tǒng)的優(yōu)勢,分析了基于網(wǎng)絡(luò)的計算機考試系統(tǒng)的B/S體系結(jié)構(gòu),在此基礎(chǔ)上設(shè)計了系統(tǒng)的總體方案和主要功能模塊,并對其中的關(guān)鍵性技術(shù)進行詳細介紹。
關(guān)鍵詞:在線考試;數(shù)據(jù)加密;B/S體系結(jié)構(gòu)
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2008)18-21ppp-0c
Analyze and Design Internet-based Exam System
ZHANG Chun-hui
(South China University of Technology, Computer College, Guangzhou 510641, China)
Abstract: The paper summaries the superiority of Internet-based Exam System, analysis the B/S system structure, designs the main principles and the function, and makes a detailed description of the key technology involved.
Key words: Internet-based Exam System; Database Encryption; B/S system structure
隨著計算機的廣泛應(yīng)用及其技術(shù)的發(fā)展,計算機不僅影響著人們的生活方式,同時還對傳統(tǒng)的教育模式提出了新的挑戰(zhàn)。我們可充分利用現(xiàn)代化的信息傳遞手段來拓展教學方式及教學改革,為考試形式向多元化發(fā)展提供基礎(chǔ)。對于傳統(tǒng)的考試過程,一般要經(jīng)過教師出卷、學生考試、教師閱卷、教師統(tǒng)計成績四個環(huán)節(jié)。當考生數(shù)量較多時,完成這一過程的工作量非常大,而且很煩瑣。我們應(yīng)該利用現(xiàn)有的設(shè)備、技術(shù)把教師從煩瑣、重復(fù)、容易出錯的工作中解脫出來。為了實現(xiàn)這一目的,可通過計算機實現(xiàn)無紙化考試。近年來,多媒體、Internet的出現(xiàn)及發(fā)展使得考試的技術(shù)手段和載體發(fā)生了革命性的變化,Internet的開放性、分布性特點使得考試突破了時間和空間的限制。基于Internet的計算機考試系統(tǒng)的研究,越來越受到人們的關(guān)注。
1 系統(tǒng)的體系結(jié)構(gòu)
目前,網(wǎng)絡(luò)應(yīng)用軟件運行的模式主要有兩類:客戶機/服務(wù)器(C/S)模式和瀏覽器/服務(wù)器(B/S)模式。C/S模式是將數(shù)據(jù)庫內(nèi)容放在遠程的服務(wù)器上,在客戶機上安裝相應(yīng)軟件。C/S結(jié)構(gòu)在技術(shù)上雖然很成熟,但該結(jié)構(gòu)存在靈活性差、升級困難、維護工作量大和系統(tǒng)安全性差等缺陷,已較難適應(yīng)當前信息技術(shù)與網(wǎng)絡(luò)技術(shù)發(fā)展的需要。B/S結(jié)構(gòu)是三層結(jié)構(gòu),它以訪問Web數(shù)據(jù)庫為中心,HTTP為傳輸協(xié)議,客戶端通過瀏覽器(Browser)訪問Web服務(wù)器和與其相連的后臺數(shù)據(jù)庫。B/S結(jié)構(gòu)把處理功能全部移植到了服務(wù)器端,用戶的請求通過瀏覽器發(fā)出,無論是使用和數(shù)據(jù)庫維護上都比傳統(tǒng)模式更加經(jīng)濟方便。本系統(tǒng)中就采用了B/S結(jié)構(gòu),服務(wù)器端采用SQL Server2000數(shù)據(jù)庫和ASP.NET 組件來構(gòu)成應(yīng)用服務(wù)系統(tǒng),客戶端采用瀏覽器來完成在線考試的全過程。
2 系統(tǒng)的總體設(shè)計
2.1 應(yīng)用結(jié)構(gòu)
原則上來講,整個考試系統(tǒng)的服務(wù)可由考試中心承擔,考試系統(tǒng)的用戶(考生或考試的組織者)均可通過本地和遠程網(wǎng)絡(luò)系統(tǒng)參加考試和處理考試事務(wù)。但由于目前的遠程傳輸媒介的傳輸可靠性和傳輸速率的限制,成千上萬的考生都通過考試中心的服務(wù)器來參考,好比千軍萬馬走獨木橋,服務(wù)器必然是系統(tǒng)的瓶頸。為了解決這一問題,可在遠程考試系統(tǒng)設(shè)立考試中心,在各地區(qū)設(shè)立考點,考生在各考點參加考試,考試中心負責全局事務(wù)的處理和控制??荚囍行暮涂键c通過Internet相連,而考點的各考試主機則通過局域網(wǎng)相連,無論是考試中心還是考點均應(yīng)設(shè)有Web服務(wù)器和數(shù)據(jù)庫服務(wù)器,建立其上的考試系統(tǒng)服務(wù)器分別為考試的組織者和應(yīng)試者提供相應(yīng)的服務(wù)。這種運行結(jié)構(gòu)既減輕了考試中心服務(wù)器的負擔也符合一般考試組織的特點,同時提供服務(wù)的資源根據(jù)分工(考試中心和考點的分工不同)可相應(yīng)隔離。通過網(wǎng)絡(luò)連接的考試系統(tǒng)應(yīng)用結(jié)構(gòu)如圖1所示。
2.2 功能模塊劃分
根據(jù)考試的組織特點和應(yīng)用結(jié)構(gòu),一個完整的考試系統(tǒng)主要劃分為三個功能模塊: 試題管理模塊、在線考試模塊、學生檔案管理模塊。系統(tǒng)的功能結(jié)構(gòu)如圖2所示。各模塊功能如下:
2.2.1 試題管理模塊
試題庫是試題來源,對試題庫的管理非常重要。試題一般采用單選題、多選題、判斷題等題型,主要實施試題的錄入、查詢、修改、刪除等功能。錄入試題可集中錄入或隨時錄入,試題庫中的試題以單個試題存放而不形成成套試卷,并且可按類別難度的不同進行分類管理,試題可長期保存。
圖1 基于Internet考試系統(tǒng)的結(jié)構(gòu)圖
圖2 系統(tǒng)功能結(jié)構(gòu)圖
2.2.2 在線考試模塊
在線考試模塊是系統(tǒng)的核心模塊??荚嚽跋到y(tǒng)會自動生成試卷的編號,出題者填寫試卷名稱,選擇考試的科目以及試卷的類型。通常試卷的類型可分為固定試卷和動態(tài)試卷。固定試卷是預(yù)先在試題庫隨機抽取試題生成固定的試卷,考試時每個考生都使用該試卷;動態(tài)試卷是當考生進入考試后,由系統(tǒng)隨機生成試卷,每個考生的試卷是不一樣的。另外還需設(shè)置考試所需的時間、考查的題型、每種題型的分值、題目不同難度的比例、試卷的狀態(tài),例如開放狀態(tài)則前臺考試可使用,關(guān)閉狀態(tài)則不能使用。最后還能根據(jù)前面的題量和分值自動計算并顯示試卷的總分數(shù)。
當進入考試時,學生首先登錄查看有沒有考試,如果有就進行考試,考試時間結(jié)束系統(tǒng)自動交卷,交卷之后實時評卷,立即給出分數(shù)。從考生登錄到考試結(jié)束,包括了身份驗證、試卷生成、在線考試、試卷評分等過程。
(1)登錄和身份驗證。在考試前臺的界面輸入學號和密碼,系統(tǒng)會查詢數(shù)據(jù)庫,如果輸入正確則允許該考生進入下一頁面。否則需重新輸入,超過三次錯誤輸入則強行退出系統(tǒng)。如果該考生是第一次登錄系統(tǒng)或未修改過密碼,系統(tǒng)會自動提示考生修改密碼。
(2)試卷生成。通過身份驗證后,系統(tǒng)會根據(jù)登錄的信息查詢并顯示當前對該考生開放的試卷,正式進入考試界面。
其實在進入考試界面前,系統(tǒng)會根據(jù)已設(shè)定好的試卷參數(shù),從數(shù)據(jù)庫中隨機抽取試題。如果使用動態(tài)試卷,則每位考生的考題可能不一樣,但題型、難度、數(shù)量、分值都是一樣的。
(3)在線考試。在線考試的試題界面是按單題的方式顯示的,這樣考生能更好的查看題目。在頁面的左邊是整個試卷的試題題號,右邊是所選試題的具體內(nèi)容。點擊左邊的題號,就會在右邊顯示相對應(yīng)的試題。同時在考試界面上會顯示考試的科目、時間、考生姓名等。
考試開始后,系統(tǒng)會根據(jù)考試設(shè)定的時間進行倒計時。如果考生中途遇到死機,可重新登錄進入,系統(tǒng)會提示上次考試并未結(jié)束,并將上次的考題重新調(diào)出,不需重新抽題。
(4)交卷評分。當考生完成考題后,可按“交卷”按鈕進行試卷提交,或考試時間結(jié)束時由系統(tǒng)強行收取。提交后,系統(tǒng)會根據(jù)考生選擇的答案與試題庫中的答案進行比較,并計算出得分。分數(shù)會在考試界面顯示,并且還會寫入學生成績庫中,供以后查詢和統(tǒng)計使用。
2.2.3 學生檔案管理模塊:
該模塊主要管理學生的信息檔案。包括對學生信息的錄入,成績查詢,以及老師對學生成績進行查詢、統(tǒng)計等。
3 關(guān)鍵技術(shù)
一個考試系統(tǒng)的設(shè)計涉及到許多關(guān)鍵技術(shù),具體來說主要有以下幾個方面:
3.1 組卷
組卷是考試系統(tǒng)中的難點。組卷主要根據(jù)出題者設(shè)定好的使用的題型、涉及的章節(jié)、不同難度的比例以及不同題型的分值等參數(shù),隨機在試題庫中抽取試題組成試卷。這要求試題是隨機生成的,而且同一份試卷中不能有重復(fù)的考題。按什么規(guī)則生成,如何保證生成的試題符合要求,就涉及到隨機算法的使用。同時還要考慮如何對試卷的試題進行有效的管理,例如當考生在考試中途因機器故障或其它原因需重新進入考試,系統(tǒng)不必重新抽取試卷,而是直接恢復(fù)考生原有試卷即可。
3.2 權(quán)限
一般超級管理員具有最高權(quán)限,可由他設(shè)置用戶對某個功能模塊的操作權(quán)限。當每一個用戶用自己的賬號登錄系統(tǒng)時,系統(tǒng)會根據(jù)其登錄賬號所賦予的權(quán)限,讓其進行相應(yīng)的操作。
3.3 數(shù)據(jù)庫的設(shè)計
遠程考試系統(tǒng)需要處理大量的數(shù)據(jù),其功能主要圍繞數(shù)據(jù)庫來展開。在系統(tǒng)中,良好的數(shù)據(jù)庫設(shè)計將會有效改善系統(tǒng)的性能,同時還能保證數(shù)據(jù)正確完整的存儲。根據(jù)考試系統(tǒng)的要求,可設(shè)計幾個關(guān)系模式:
考生表:(考生ID,姓名,口令,性別,系別,班級,權(quán)限)
考試科目:(科目1D,科目名稱,試卷ID,開考時間)
成績表(一、二級):(考生ID,姓名,系別,班級,科目,試卷ID,開考時間,結(jié)束時間,試題得分)
學生考試表:(試卷ID,科目名稱,單選題數(shù),單選題,多選題數(shù),多選題,判斷題數(shù),判斷題,開考時間,結(jié)束時間)
學生考試記錄表(二級):(考生ID,試卷ID,姓名,班級,有否考試,試題情況記錄,考試時間)
科目選擇表:(科目ID,開考科目)
試卷表:(試卷ID,科目ID,試卷試題ID,試題類型,試題內(nèi)容,參考答案,參考答題時間)
試題庫:(試題ID,科目、試題類型,試題內(nèi)容,選擇答案1,選擇答案2,選擇答案3,選擇答案4,選擇答案5,選擇答案6,參考答案,難度系數(shù))
答卷(二級):(試題ID,題號,科目、試題類型,試題內(nèi)容,選擇答案1,選擇答案2,選擇答案3,選擇答案4,選擇答案5選擇答案5,參考答案)
其中“考生表”,“考試科目”,“成績表”,“試題庫”,“答卷”等是關(guān)系名,括號內(nèi)容是關(guān)系屬性。在對關(guān)系進行調(diào)整時,為減少數(shù)據(jù)的冗余,提高數(shù)據(jù)訪問效率,將有些關(guān)系雖然密切但具有一對多或多對多特性且相對穩(wěn)定程度不同的數(shù)據(jù)分開建立關(guān)系模式,如考生的基本信息和考生的成績信息,考點的基本信息與考點的開考科目,試題與試卷信息等等。表中一級表示考試中心的數(shù)據(jù)庫服務(wù)器,二級表示考點的數(shù)據(jù)庫服務(wù)器存儲的數(shù)據(jù)。
3.4 數(shù)據(jù)庫賬號加密
考試系統(tǒng)的數(shù)據(jù)庫安全性不同于其它系統(tǒng),盡管在系統(tǒng)功能上設(shè)計了不同用戶的使用權(quán)限,也不能保證敏感數(shù)據(jù)的保密性。例如DBA擁有最高權(quán)限,可知曉試卷的內(nèi)容。為了保證考試的公正性,這就需要有進一步的安全措施——數(shù)據(jù)加密。在該系統(tǒng)中我們采取了MD5算法加密口令,DES算法加密其它敏感數(shù)據(jù)。
與傳統(tǒng)的考試方式相比,網(wǎng)絡(luò)考試系統(tǒng)的主要好處是可以動態(tài)地管理各種考試信息,只要題庫足夠大,就可以按照要求自動生成各種試卷;而且,網(wǎng)絡(luò)考試的時間比較靈活, 可以在規(guī)定的時間段內(nèi)隨到隨考,不必統(tǒng)一時間開考;另外,計算機化考試的最大特點是閱卷快,系統(tǒng)可以在考試結(jié)束時當場給出客觀題考試成績,計算機閱卷給了考生最大的公平感。因此網(wǎng)絡(luò)考試不僅在高校,同時也已慢慢在各個領(lǐng)域普及應(yīng)用。
參考文獻:
[1]陳湘. ASP.NET與網(wǎng)站開發(fā)編程實戰(zhàn)[M]. 清華大學出版社,2002:88-90.
[2]李美滿. 網(wǎng)絡(luò)考試系統(tǒng)題庫與成績安全性研究[J]. 計算機應(yīng)用,2005.12:133-137.
[3]吳軍華. 遠程考試系統(tǒng)的研究與開發(fā)[D]. 碩士學位論文,2000:49-52.
[4]趙燕,曹宇翾,闕勝利. 基于B/S模式的在線考試系統(tǒng)的設(shè)計與實現(xiàn)[J]. 電腦知識與技術(shù),2007.3:173-175.
收稿日期:2008-03-24
作者簡介:張春暉,女,廣東廣州人,碩士,華南理工大學計算機學院,主要從事計算機軟件方面的研究。