摘 要:網(wǎng)上考試系統(tǒng)是網(wǎng)絡(luò)教學(xué)的重要組成部分之一,他能減輕教師的組卷及閱卷負(fù)擔(dān),使考生及時(shí)了解考試成績(jī)。探討基于WWW的網(wǎng)上考試系統(tǒng)的設(shè)計(jì)方法,并給出一個(gè)開發(fā)實(shí)例。該系統(tǒng)不僅適用于某一門課程的考試,且適用于多專業(yè)多門課程的考試。
關(guān)鍵詞:網(wǎng)上考試;網(wǎng)絡(luò)教學(xué);Web數(shù)據(jù)庫(kù);ASP;ADO
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004-373X(2008)08-052-02
Design and Implementation of Online Examination System Based on WWW
ZHAO Ling
(Xi′an Institute of Post Telecommunications,Xi′an,710061,China)
Abstract:Online examination system is one of important constitution of network teaching,it can shorten teachers′ work incubus of building test paper and inspecting them,make students know about their score immediately.This paper discusses the design method of online examination system based on www,furthmore give a developing example.This system not only fit in exam of a subject,but also fit in with exams of multisubject of multimajor.
Keywords:online examination;network teaching;Web database;ASP;ADO
1 引 言
計(jì)算機(jī)的廣泛應(yīng)用及其技術(shù)的發(fā)展,對(duì)傳統(tǒng)的教育模式提出了新的挑戰(zhàn)。傳統(tǒng)的考試過程一般要經(jīng)過教師出卷、學(xué)生考試、教師閱卷、統(tǒng)計(jì)成績(jī)4個(gè)環(huán)節(jié),隨著學(xué)生人數(shù)的增加,這一過程的工作量也日益巨增。為了減輕教師的工作負(fù)擔(dān)及提高工作效率,要求借助于計(jì)算機(jī)實(shí)現(xiàn)無紙化考試。多媒體以及Internet的出現(xiàn)和發(fā)展使得考試的手段和載體發(fā)生了根本性的變化,Internet的開放性和分布性使得考試不受時(shí)間和空間的限制。基于Internet的網(wǎng)上考試系統(tǒng)的研究,已倍受大家關(guān)注。本文對(duì)開發(fā)網(wǎng)上考試系統(tǒng)的相關(guān)技術(shù)及有關(guān)問題進(jìn)行了初步的探討和實(shí)踐。
2 網(wǎng)上考試系統(tǒng)的體系結(jié)構(gòu)
網(wǎng)絡(luò)應(yīng)用軟件運(yùn)行的模式主要有2類:Client/Server和Browser/Web模式。前者的缺點(diǎn)是開發(fā)成本高、維護(hù)復(fù)雜、升級(jí)麻煩;后者是近幾年伴隨Internet迅速發(fā)展起來的一種技術(shù),他與客戶/服務(wù)器方式類似,客戶端是一個(gè)標(biāo)準(zhǔn)的瀏覽器,服務(wù)器端是Web 服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器,其主要優(yōu)點(diǎn)是開發(fā)、維護(hù)、升級(jí)的經(jīng)濟(jì)性以及良好的開放性[1]。從考試系統(tǒng)的性質(zhì)來看,他要服務(wù)于眾多考生,并且考試系統(tǒng)的軟件也將不斷的發(fā)展與更新,基于上述考慮,用Browser/Web模式設(shè)計(jì)考試系統(tǒng),服務(wù)器端采用Web Server+數(shù)據(jù)庫(kù)系統(tǒng)+ASP組件構(gòu)成考試的應(yīng)用服務(wù)系統(tǒng);客戶端采用瀏覽器完成考試全過程。
網(wǎng)上考試系統(tǒng)的應(yīng)用程序可分為考生考試程序和考試管理程序,考生考試程序主要實(shí)現(xiàn)考生登錄的身份驗(yàn)證、試卷生成、接收考生所選答案、計(jì)算分?jǐn)?shù)以及考生考試成績(jī)的查詢??荚嚬芾沓绦?qū)崿F(xiàn)對(duì)學(xué)生信息庫(kù)、答題信息庫(kù)和試題庫(kù)的管理及維護(hù)工作。根據(jù)上述需求分析,基于B/S模式的網(wǎng)上考試系統(tǒng)的體系結(jié)構(gòu)如圖1所示[2]。
3 網(wǎng)上考試系統(tǒng)的軟件方案
系統(tǒng)的開發(fā)軟件采用Microsoft公司的ASP,ADO和VBScript;數(shù)據(jù)庫(kù)管理系統(tǒng)采用SQL Server 2000,用ASP,HTML語言和VBScript編寫服務(wù)器端Web應(yīng)用程序;用ADO以及ODBC實(shí)現(xiàn)應(yīng)用程序與數(shù)據(jù)庫(kù)的連接。所選軟件的特點(diǎn)如下:
(1) ASP技術(shù)[2]。開發(fā)Web應(yīng)用程序的常見技術(shù)有CGI,IDC,ISAP,ASP以及Java。本系統(tǒng)采用的是ASP技術(shù)。ASP是由Microsoft提出的基于服務(wù)器端腳本編寫環(huán)境,使用他可以創(chuàng)建和運(yùn)行動(dòng)態(tài)的、交互的、高性能的Web服務(wù)應(yīng)用程序。ASP是目前公認(rèn)的建立WindowsNT動(dòng)態(tài)站點(diǎn)最好的工具。他與ADO的充分結(jié)合,提供了強(qiáng)大的數(shù)據(jù)庫(kù)訪問功能,使之成為進(jìn)行網(wǎng)上數(shù)據(jù)庫(kù)管理的重要手段。ASP腳本運(yùn)行在服務(wù)器端,這樣就極大地減少對(duì)客戶端的要求,而且又有效地保護(hù)開發(fā)人員的知識(shí)產(chǎn)權(quán)不受侵犯。
(2) ADO技術(shù)。ADO(ActiveX Data Object)也稱ActiveX數(shù)據(jù)對(duì)象,系統(tǒng)集中采用他訪問后臺(tái)數(shù)據(jù)庫(kù)。ADO是新開發(fā)的,基于遠(yuǎn)程數(shù)據(jù)對(duì)象(RDO)和數(shù)據(jù)訪問對(duì)象(DAO)迅速發(fā)展的結(jié)構(gòu)。他可以使Web頁面開發(fā)者輕松存取Internet的數(shù)據(jù)庫(kù),是可以在用戶端實(shí)現(xiàn)網(wǎng)上立即、及時(shí)更新顯示的最新Web頁面數(shù)據(jù)庫(kù)技術(shù),利用數(shù)據(jù)庫(kù)與Web頁面的結(jié)合可以使Web站點(diǎn)更能夠與數(shù)據(jù)做出集成。
(3) 后臺(tái)數(shù)據(jù)庫(kù)ODBC技術(shù)。目前常用的ODBC數(shù)據(jù)庫(kù)有SQL Server,ORACLE,Informix等,本系統(tǒng)采用SQL Server 2000作為后臺(tái)數(shù)據(jù)庫(kù),在庫(kù)記錄檢索中,采用簡(jiǎn)單查詢、多條件組合式查詢和基于內(nèi)容的搜索式查詢;在記錄集顯示中,采用多頁顯示技術(shù)。
4 網(wǎng)上考試系統(tǒng)的功能
網(wǎng)上考試系統(tǒng)主要包括教師部分、學(xué)生部分和網(wǎng)站輔助信息部分。本系統(tǒng)能夠?qū)崿F(xiàn)任課教師出題、考生選擇考試科目、自動(dòng)發(fā)放試卷、學(xué)生在線考試、自動(dòng)閱卷給出成績(jī)、考試成績(jī)存入數(shù)據(jù)庫(kù)、考生日后查詢考試成績(jī)等主要功能。本系統(tǒng)還配備了輔助功能,如用戶留言,管理員發(fā)布公告以及整個(gè)數(shù)據(jù)庫(kù)的維護(hù)管理模塊,其功能結(jié)構(gòu)圖如圖2所示。
(1) 賬號(hào)管理模塊:他實(shí)現(xiàn)對(duì)用戶賬號(hào)的管理功能,包括注冊(cè)和登陸以及修改自己個(gè)人信息等。
(2) 學(xué)生選課模塊:他是供考生選擇考試課程而服務(wù)的,他能將屬于考生所在專業(yè)的、并且試卷已經(jīng)出好的課程調(diào)出來,供考生自己選擇要考試的科目。
(3) 在線考試模塊:他能實(shí)現(xiàn)學(xué)生的聯(lián)機(jī)考試功能,系統(tǒng)自動(dòng)調(diào)出試卷,供考生在線作答。
(4) 計(jì)算分?jǐn)?shù)模塊:他實(shí)現(xiàn)系統(tǒng)的自動(dòng)閱卷功能,如果試題不滿100分,他會(huì)自動(dòng)轉(zhuǎn)換為百分制,存入數(shù)據(jù)庫(kù)同時(shí)顯示給用戶。
(5) 成績(jī)查詢模塊:他能實(shí)現(xiàn)學(xué)生的成績(jī)查詢功能,包括學(xué)生考過的每門課程的考試分?jǐn)?shù)及考試時(shí)間。
(6) 編寫試卷模塊:他能實(shí)現(xiàn)教師網(wǎng)上遠(yuǎn)程編寫試卷的功能。
(7) 查看學(xué)生成績(jī)模塊:教師能夠查看自己所帶課程的學(xué)生的考試分?jǐn)?shù)。
(8) 用戶留言模塊:實(shí)現(xiàn)網(wǎng)上用戶的留言及顯示已有的留言等功能,便于管理員及時(shí)了解用戶意見,改進(jìn)版面等。
(9) 發(fā)布公告模塊:實(shí)現(xiàn)系統(tǒng)發(fā)布公告的功能。
(10) 數(shù)據(jù)庫(kù)管理模塊:負(fù)責(zé)網(wǎng)上考試系統(tǒng)數(shù)據(jù)庫(kù)中的各個(gè)數(shù)據(jù)表的維護(hù)及管理工作。
5 數(shù)據(jù)庫(kù)的設(shè)計(jì)
網(wǎng)上考試系統(tǒng)離不開數(shù)據(jù)庫(kù)系統(tǒng),不論試題還是考生信息都需要放在數(shù)據(jù)庫(kù)中。由于本系統(tǒng)適用于多專業(yè)多門課程的考試,所以數(shù)據(jù)庫(kù)的設(shè)計(jì)要考慮到各個(gè)表之間的外鍵連接[3]。
本數(shù)據(jù)庫(kù)構(gòu)建在SQL Server 2000上,根據(jù)本系統(tǒng)的功能應(yīng)內(nèi)建不同的表,包括Student,Teacher,Class,Zhuanye,Kecheng,Shiti,Score,Liuyan,Gonggao。Student主要保存學(xué)生的信息:學(xué)生代號(hào)、姓名、密碼、年齡、性別和班級(jí)名。Teacher主要保存教師的信息:教師號(hào)、教師姓名、密碼、課程號(hào)。Class保存班級(jí)與專業(yè)名的信息:班級(jí)名,專業(yè)名。Zhuanye保存各專業(yè)的名稱以及各專業(yè)所開設(shè)的課程:專業(yè)名、課程名。Kecheng存放某個(gè)專業(yè)所對(duì)應(yīng)的課程號(hào)、課程名及對(duì)應(yīng)的任課的教師號(hào):課程號(hào)、課程名、專業(yè)名、教師號(hào)。Shiti保存題庫(kù)內(nèi)容:?jiǎn)栴}描述、選項(xiàng)1、選項(xiàng)2、選項(xiàng)3、選項(xiàng)4、答案、難度系數(shù),課程號(hào)。Score保存學(xué)生考試分?jǐn)?shù)信息:學(xué)生代號(hào)、考試科目、分?jǐn)?shù)、考試時(shí)間。Liuyan存放與留言有關(guān)的信息:留言人、留言主題、留言內(nèi)容、留言時(shí)間。Gonggao存放公告的有關(guān)信息:公告主題、公告內(nèi)容、公告時(shí)間。
6 開發(fā)過程的難點(diǎn)
本系統(tǒng)開發(fā)過程中的難點(diǎn)主要體現(xiàn)為組卷和閱卷兩部分。在組卷過程中,系統(tǒng)要根據(jù)選定的試卷難度,綜合考慮每個(gè)小題的難度系數(shù),采用隨機(jī)函數(shù)調(diào)出滿足整體要求的各個(gè)小題。在閱卷過程中,為了使學(xué)生做完試題后能立即看到自己的分?jǐn)?shù),在調(diào)出每個(gè)小題的過程中還要將該小題的答案取出來,保留在ASP中的Session對(duì)象變量里,以實(shí)現(xiàn)在多個(gè)網(wǎng)頁中傳遞變量值。系統(tǒng)依靠Request對(duì)象收集學(xué)生的每題所填答案,然后與該題的標(biāo)準(zhǔn)答案相比較,即可判斷試題做對(duì)與否,進(jìn)而可計(jì)算學(xué)生的分?jǐn)?shù)。若試卷分?jǐn)?shù)不滿一百分,則系統(tǒng)自動(dòng)轉(zhuǎn)換其為百分制的分?jǐn)?shù),顯示給學(xué)生,同時(shí)將學(xué)生的此次成績(jī)填入數(shù)據(jù)庫(kù)。
7 結(jié) 語
網(wǎng)上考試系統(tǒng)在近幾年隨著網(wǎng)絡(luò)的發(fā)展而迅速地發(fā)展起來,在教學(xué)實(shí)踐中得到了充分的應(yīng)用和很好的評(píng)估。他是一套基于B/S體系,采用大型數(shù)據(jù)庫(kù)SQL Server 2000和先進(jìn)的ASP技術(shù)開發(fā)的,并在HTML標(biāo)記語言的基礎(chǔ)上輔助了大量的VBScript和JavaScript,使得考試系統(tǒng)的功能更加完善。
網(wǎng)上考試系統(tǒng)的設(shè)計(jì)思想基于教學(xué)考試的實(shí)用性出發(fā),每位教師均可將自己所帶課程的考試放在網(wǎng)上進(jìn)行,他不僅可以完成某門課程的期末考試,也可進(jìn)行每個(gè)單元的測(cè)驗(yàn),考試結(jié)束后用戶能立即看到自己的分?jǐn)?shù),真正實(shí)現(xiàn)了無紙化考試,在能夠代替?zhèn)鹘y(tǒng)考試的前提下,還大大節(jié)約了傳統(tǒng)考試中的人力和物力,節(jié)約了學(xué)校的教育資金,減輕了教師的負(fù)擔(dān)。
本系統(tǒng)不僅可針對(duì)某一門課程的考試,還可適用于多專業(yè)多門課程的考試。
參 考 文 獻(xiàn)
[1]彭作民.學(xué)校計(jì)算機(jī)基礎(chǔ)課網(wǎng)上考試系統(tǒng)解決方案\\[EB/OL\\].計(jì)算機(jī)世界.http://onlineedu.org/article/article/2902.html.
[2]趙曉華,蔣一飛,王雁峰.現(xiàn)代通信技術(shù)網(wǎng)絡(luò)考試系統(tǒng)的設(shè)計(jì)[J].微機(jī)發(fā)展,2003(2):3537.
[3]李勁.精通ASP數(shù)據(jù)庫(kù)程序設(shè)計(jì)[M].北京:科學(xué)出版社,2001.
作者簡(jiǎn)介
趙 玲 女,1977年出生,河南信陽人,碩士,講師。研究方向?yàn)橛?jì)算機(jī)網(wǎng)絡(luò)與數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)安全。