基于C/S架構(gòu)的通用計算機在線考試系統(tǒng)的實現(xiàn)
隨著計算機網(wǎng)絡(luò)技術(shù)和數(shù)據(jù)庫技術(shù)的飛速發(fā)展,高校的信息化建設(shè)進程日益深入,其中數(shù)字化校園建設(shè)成為其核心內(nèi)容。縱觀全國各高校的數(shù)字化校園建設(shè),大多以建設(shè)數(shù)字化網(wǎng)絡(luò)環(huán)境、數(shù)字化教學(xué)資源、數(shù)字化教學(xué)與學(xué)習(xí)環(huán)境、數(shù)字化管理手段和工作環(huán)境;實現(xiàn)數(shù)字化科研和管理;創(chuàng)建數(shù)字化生活空間;實現(xiàn)教育的信息化和現(xiàn)代化等為最終目標(biāo)[1]。為推動數(shù)字化校園建設(shè)進程,創(chuàng)建數(shù)字化教學(xué)環(huán)境,開發(fā)出適用于多學(xué)科的計算機在線考試軟件系統(tǒng)。通過此軟件可以實現(xiàn)多學(xué)科網(wǎng)上在線考試,既能把教師從繁重的批閱試卷、復(fù)核試卷、試卷分析等工作中解放出來,又免去了印制紙質(zhì)試卷、按考場分發(fā)試卷、紙質(zhì)試卷保存等很多繁重工作,而且提高了試卷的保密性。
1 C/S模式的多層結(jié)構(gòu)
C/S模式是一種普遍應(yīng)用的網(wǎng)絡(luò)計算模式。傳統(tǒng)的C/S模式是兩層結(jié)構(gòu),在這種模式下,網(wǎng)絡(luò)中的計算機分為兩個有機部分:客戶機和服務(wù)器。服務(wù)器只負責(zé)各種數(shù)據(jù)的處理和維護,為各個客戶機應(yīng)用程序管理數(shù)據(jù);客戶機包含文檔處理軟件、決策支持工具、數(shù)據(jù)查詢等應(yīng)用邏輯程序,通過網(wǎng)絡(luò)使用SQL語言發(fā)送、請求和分析從服務(wù)器接收數(shù)據(jù)。這是一種“胖客戶機(Fat Client)”、“瘦服務(wù)器(Thin Server)”的網(wǎng)絡(luò)結(jié)構(gòu)模式。隨著C/S結(jié)構(gòu)應(yīng)用范圍的不斷擴大和計算機網(wǎng)絡(luò)技術(shù)的發(fā)展,這種結(jié)構(gòu)的缺陷日益明顯,如系統(tǒng)的可靠性有所降低、缺乏靈活性、資源浪費嚴重、維護費用較高等[2]。
為解決這一問題,網(wǎng)絡(luò)計算模式逐漸從兩層擴展到N層,形成多層結(jié)構(gòu)。在多層結(jié)構(gòu)中把業(yè)務(wù)邏輯獨立出來,使得應(yīng)用系統(tǒng)的開發(fā)模式變?yōu)橄旅嫘问剑?br />
(1)客戶端。只注重人機界面的設(shè)計,不必關(guān)心業(yè)務(wù)邏輯和數(shù)據(jù)庫的訪問,使開發(fā)大大簡化,并且使得原兩層結(jié)構(gòu)的胖客戶機變成瘦客戶機。
(2)中間業(yè)務(wù)邏輯層。提供客戶端程序調(diào)用的業(yè)務(wù)邏輯規(guī)則,以完成其業(yè)務(wù)操作。當(dāng)業(yè)務(wù)邏輯改變時,客戶端不必改變。
(3)數(shù)據(jù)庫服務(wù)層。提供對數(shù)據(jù)庫進行各種操作的方法,由中間業(yè)務(wù)邏輯層調(diào)用完成業(yè)務(wù)邏輯。
可以看出,在多層結(jié)構(gòu)中,層次劃分不是物理上的劃分,而是結(jié)構(gòu)邏輯上的劃分,即按應(yīng)用目標(biāo)劃分。如果客戶端要求響應(yīng)速度很快,業(yè)務(wù)組件的體積較小,業(yè)務(wù)組件可以放在客戶端;如果業(yè)務(wù)組件包含大量對數(shù)據(jù)庫的操作,可以配置在數(shù)據(jù)庫服務(wù)器上,以減少網(wǎng)絡(luò)負載,提高運算速度;如果業(yè)務(wù)組件可供大多數(shù)客戶機程序訪問,則可以使用業(yè)務(wù)組件構(gòu)成一個應(yīng)用服務(wù)器,供大家訪問。由于多層結(jié)構(gòu)的運行機制,使得多層結(jié)構(gòu)具備以下優(yōu)點[3]。
(1)可伸縮性好。可按應(yīng)用要求部署邏輯層次,適應(yīng)于本地網(wǎng)和廣域網(wǎng)。
(2)網(wǎng)絡(luò)效率高。通過合理布局,因網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量大大減少,網(wǎng)絡(luò)效率得到提高。
(3)可管理性強??蛻舳嘶緦崿F(xiàn)“零維護”,主要管理工作集中在應(yīng)用邏輯層,業(yè)務(wù)邏輯的修改對客戶端沒有影響。
(4)可重用性好。按可提供的服務(wù)構(gòu)筑應(yīng)用,每種服務(wù)可以被不同的應(yīng)用再次使用。由于系統(tǒng)采用面向?qū)ο蟮慕M件構(gòu)成,進一步增加了可重用性。
2 系統(tǒng)需求分析
數(shù)字化教學(xué)環(huán)境是學(xué)校數(shù)據(jù)化校園建設(shè)的重要組成部分。而數(shù)字化教學(xué)環(huán)境以建立網(wǎng)上教務(wù)管理系統(tǒng)、網(wǎng)上考試系統(tǒng)、網(wǎng)上答疑系統(tǒng)和網(wǎng)上討論系統(tǒng)等為主要內(nèi)容。目前,已實現(xiàn)網(wǎng)上教務(wù)管理、網(wǎng)上答疑和網(wǎng)上討論目標(biāo)。為實現(xiàn)網(wǎng)上考試目標(biāo),探索開發(fā)適用于多學(xué)科的計算機在線考試軟件系統(tǒng)成為關(guān)鍵。要開發(fā)出適用于多學(xué)科的平臺型計算機在線考試系統(tǒng),首先對試題內(nèi)容、試題形式、評分標(biāo)準(zhǔn)、試題數(shù)量、試卷分析等問題要進行周密的考慮,據(jù)此設(shè)計出一種能夠適用于多學(xué)科的平臺型試卷模板,在網(wǎng)絡(luò)環(huán)境正常運行的前提下,實現(xiàn)網(wǎng)上在線考試。通過該考試系統(tǒng),完成自動抽取試卷、自動批閱試卷、自動回收成績、自動分析試卷、打印成績單等功能。針對軟件系統(tǒng)的功能和性能等實際需求,設(shè)計服務(wù)器開發(fā)環(huán)境采用安全性較高穩(wěn)定性較好的數(shù)據(jù)服務(wù)器SQL Server 2000,采用Windows 2003 Server 作為服務(wù)器操作系統(tǒng),C/S結(jié)構(gòu)前端采用Borland Delphi 7作為開發(fā)工具[4]。
3 系統(tǒng)功能設(shè)計
在需求分析的基礎(chǔ)上,確定計算機在線考試軟件系統(tǒng)包括服務(wù)器管理、學(xué)生管理、考試管理、題庫管理、自動閱卷、試卷分析和系統(tǒng)維護等功能,其軟件結(jié)構(gòu)圖如圖1所示。
4 系統(tǒng)實現(xiàn)
由于軟件系統(tǒng)中的服務(wù)器要同時與大量的考試終端發(fā)生信息交互,為了避免由于服務(wù)器處理負荷過重而引起的系統(tǒng)崩潰,同時要保證整個系統(tǒng)在網(wǎng)絡(luò)環(huán)境中的安全性,設(shè)計采用C/S模式多層網(wǎng)絡(luò)計算模式。通過將任務(wù)合理分配到客戶端和服務(wù)器端,再充分利用兩端的硬件環(huán)境優(yōu)勢,提高系統(tǒng)的整體數(shù)據(jù)處理效率并實現(xiàn)考試終端和管理中心的雙向通信。軟件系統(tǒng)客戶端運行時的主界面如圖2所示。
評論