摘要:考試是高校管理工作的重要組成部分之一,為實現(xiàn)高校管理工作的信息化,特設(shè)計出該學(xué)生考試系統(tǒng)。該系統(tǒng)采用客戶、服務(wù)器數(shù)據(jù)服務(wù)器管理端三層結(jié)構(gòu)模式,利用接口實現(xiàn)了客戶機和服務(wù)器的通信,文章詳細闡述了考試系統(tǒng)的設(shè)計方案,對考試系統(tǒng)的工作模式、系統(tǒng)的結(jié)構(gòu)、模塊的劃分、數(shù)據(jù)庫的解決方案等進行了說明。
關(guān)鍵詞:客戶機;服務(wù)機;考試系統(tǒng)
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)絡(luò)已經(jīng)滲入了人們的日常生活和工作,建立在計算機網(wǎng)絡(luò)和多媒體技術(shù)上的考試系統(tǒng)也成為傳統(tǒng)教育不可分割的延伸。在本文給出的考試系統(tǒng)中,學(xué)生允許在任意時間和地點通過網(wǎng)絡(luò)來進行考試和練習(xí),這種無紙化的考試不僅靈活,而且安全和公平,在考試系統(tǒng)中試卷的生成和批改都由計算機自動完成。
一、系統(tǒng)的結(jié)構(gòu)
該系統(tǒng)采用了基于三層構(gòu)架的模式:客戶端系統(tǒng)通過校園網(wǎng)連接服務(wù)器端控制程序在連接到后臺數(shù)據(jù)庫服務(wù)器。
系統(tǒng)的工作流程:客戶端向服務(wù)器發(fā)出考試請求→服務(wù)器在一系列認證后把試題發(fā)給客戶端→客戶端答題,提交答案→服務(wù)器端調(diào)用批改系統(tǒng)進行批改向客戶端返回成績。后臺數(shù)據(jù)庫采用Access2002;應(yīng)用系統(tǒng)模塊采用Vosual Basic6.0;客戶服務(wù)器系統(tǒng)的通信基于TCP/IP協(xié)議。
二、系統(tǒng)功能模塊的劃分
該考試系統(tǒng)的模塊大致分為三部分:本地服務(wù)器端管理程序、遠程客戶端考試程序、遠程考試查詢系統(tǒng)。1、本地服務(wù)器端管理程序包括:a考生管理(注冊學(xué)生,禁用考生,刪除考生,修改考生信息);b服務(wù)管理(添加科目,刪除科目,禁用科目,修改科目信息,添加題目,刪除題目,修改題目,禁用題目);c數(shù)據(jù)查詢(某天考試進程,考試成績,準考證號)。2、遠程客戶端考試程序包括:a注冊考試;b抽題;c自動記時;d自動交卷;e輸出成績單。3、遠程考試查詢系統(tǒng)包括:a考生信息;b考試成績;c準考證號。
三、數(shù)據(jù)庫的解決方案
本系統(tǒng)使用了一個Access2002數(shù)據(jù)庫文件,該考試系統(tǒng)是應(yīng)用在校園網(wǎng)絡(luò)環(huán)境下的,在使用和訪問時,都需要建立數(shù)據(jù)庫的連接。根據(jù)數(shù)據(jù)庫存儲的內(nèi)容,應(yīng)建立多個數(shù)據(jù)庫表。
(一)考生信息表
考生信息表用于存放考生基本注冊信息,確定一個考生的準考證號、姓名、性別、身份證等考生身份的信息。在考生的信息表中應(yīng)該包括可以確定考生身份的全部信息,以及考生當(dāng)前的考試狀態(tài)。
(二)考試科目表
考試科目表中記錄了考試系統(tǒng)中可以進行考試的所以科目的信息,考試科目應(yīng)該包括考試的名稱、時間、題目的數(shù)量等信息,為了增加考試系統(tǒng)的兼容性,另外設(shè)計了考試分數(shù)和通過分數(shù)兩個字段。
?。ㄈ┛荚囎孕畔⒈?br/> 考試注冊信息表包括考生準考證號碼、考試科目號碼、注冊日期、注冊時間等。
?。ㄋ模┛季肀?br/> 考卷表是考生在完成考試注冊后記錄考生考卷題目的表,在這個表中,通過考試編號可以確定一個考試注冊項目,題目的ID用于記錄考生應(yīng)該回答的題目。
四、系統(tǒng)的實現(xiàn)
?。ㄒ唬┫到y(tǒng)的實現(xiàn)環(huán)境
服務(wù)器和客戶機都需接入校園網(wǎng)內(nèi),二者通信協(xié)議基于流行的TCP/IP協(xié)議,服務(wù)器和客戶機上都要配置Acess2002和Visual Baisic6.0開發(fā)工具,并且在服務(wù)器端的機器需要配置IIS5.0,操作系統(tǒng)要求Windows2000Server。
?。ǘ┛蛻魴C與服務(wù)器通信模式的實現(xiàn)
該系統(tǒng)的工作流程大致為:服務(wù)器端要首先開始運行,然后處于偵聽狀態(tài),偵聽來自客戶機的連接請求,學(xué)生運行客戶端應(yīng)用程序時,客戶端首先向服務(wù)器發(fā)送連接請求,服務(wù)器接收到連接請求信息后向客戶機回應(yīng)一個信息,并向客戶端發(fā)送有效考試科目的信息。用戶在接收到服務(wù)器發(fā)送的信息后,選擇要參加的考試科目,并輸入登錄密碼。在服務(wù)器端驗證通過后,開始向用戶發(fā)送試卷,同時提示用戶端。考試結(jié)束后,服務(wù)器端程序自動關(guān)閉連接,并鎖定考試系統(tǒng)的客戶端程序。
以下是服務(wù)器端和客戶機的Winsock部分代碼實現(xiàn):
服務(wù)器端的設(shè)置:
Private sub form_load( )
Sockserver.localPort=2000
Sockserver.listen 開始偵聽
statusBar.simpletext=“服務(wù)器端已經(jīng)工作”狀態(tài)欄顯示信息
End Sub
客戶機端的設(shè)置:
Private sub form_load( )
Clsocket.RemotrHost=202.207.160.3遠程服務(wù)器的地址
Clsocket.RemotrHost=1024 遠程服務(wù)器的端口號
Clsocket.connect向遠程服務(wù)器發(fā)送連接請求
End Sub
考試交卷后,系統(tǒng)要求客戶端進行試卷的批改,在數(shù)據(jù)庫的設(shè)置中就需要把答案也寫入試題記錄中,批卷時只需將標準答案和考生的答案進行對比就可以實現(xiàn)了。
參考文獻:
1、冷向君.Visual Basic5.0中文版入門與提高[M].清華大學(xué)出版社.
2、鄭德慶,譚共志.基于瀏覽器/服務(wù)器結(jié)構(gòu)的網(wǎng)絡(luò)無紙化考試和管理系統(tǒng)[J].華南師范大學(xué)學(xué)報(自然科學(xué)版).
3、殷大發(fā).無紙化考試系統(tǒng)的研究和開發(fā)[M].計算機與現(xiàn)代化.
4、徐新華.C++Builder 5高級編程技術(shù)[M].人民郵電出版社.
5、吳平.遠程考試系統(tǒng)的設(shè)計[M].中國遠程教育.2000.
?。ㄗ髡邌挝唬褐貞c三峽學(xué)院數(shù)學(xué)與計算機學(xué)院)