翟蓮秋
[摘要]隨著計(jì)算機(jī)技術(shù)的迅猛發(fā)展及網(wǎng)絡(luò)應(yīng)用領(lǐng)域的不斷擴(kuò)大,基于計(jì)算機(jī)網(wǎng)絡(luò)和數(shù)據(jù)庫技術(shù)的各種應(yīng)用系統(tǒng)得到了突飛猛進(jìn)的技展。網(wǎng)絡(luò)的充分利用使得高校的各項(xiàng)工作效率得到了極大地提高。介紹一個(gè)基于校園局域網(wǎng)的考試系統(tǒng)的設(shè)計(jì)方案,對(duì)系統(tǒng)的功能作說明,并給出部分關(guān)鍵技術(shù)的具體實(shí)現(xiàn)方法。
[關(guān)鍵詞]ASP B/S SQL Server考試系統(tǒng)隨機(jī)抽題自動(dòng)閱卷
中圖分類號(hào):TP3文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671-7597(2009)0620049-01
本文介紹的是基于校園局域網(wǎng)的考試系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)技術(shù),系統(tǒng)的功能目標(biāo)是實(shí)現(xiàn)將現(xiàn)有的紙張答題式考試向基于局域網(wǎng)或Internet的無紙張考試系統(tǒng)的轉(zhuǎn)變,充分利用了B/s結(jié)構(gòu)的特點(diǎn),極大的簡化了教師出題的工作和學(xué)生考試的選題,采用ASP作為技術(shù)框架,Dreamweaver作為開發(fā)工具和SQL Server作為后臺(tái)數(shù)據(jù)庫,可進(jìn)行單機(jī)與網(wǎng)絡(luò)使用,適用于大多數(shù)的校園/局域網(wǎng)。
計(jì)算機(jī)文化基礎(chǔ)課是我校全體大一學(xué)生必修的公共基礎(chǔ)課程,在傳統(tǒng)的試卷考試中,要投入大量的教師、花費(fèi)大量的時(shí)間進(jìn)行出卷、監(jiān)考、評(píng)卷、成績統(tǒng)計(jì)等工作。近幾年隨著學(xué)校的不斷擴(kuò)大,我校每年入學(xué)新生約2千到3千余人,而在職的計(jì)算機(jī)教師僅有十余人。在這種比例嚴(yán)重失衡的情況下,采用傳統(tǒng)的試卷方式進(jìn)行考試明顯不合時(shí)宜;而且工作量過大,教師很難做到完全無誤、完全公正。為此,如何實(shí)現(xiàn)快捷、高效、公正的考試是我們必須面對(duì)和解決的問題。針對(duì)我校的實(shí)際情況和要求,開發(fā)了在線考試系統(tǒng)。
一、系統(tǒng)的詳細(xì)設(shè)計(jì)
(一)軟件功能模塊的劃分
系統(tǒng)軟件模塊可劃分為:新生注冊(cè),學(xué)生登錄,在線考試,成績查詢,密碼修改,管理員登錄,題庫管理,試卷管理,配題管理,學(xué)生管理,排行榜等十一個(gè)模塊。
(二)功能細(xì)化要求
1新生注冊(cè):輸入學(xué)號(hào)、姓名、性別、班級(jí)、密碼。
2學(xué)生登錄:輸入學(xué)號(hào)、密碼,如正確則顯示學(xué)生的班級(jí)、姓名、性別、班級(jí),登錄成功后可進(jìn)行如下操作:修改密碼;查詢自己以往的考試成績:選擇試卷編號(hào)進(jìn)行在線考試。
3在線考試:系統(tǒng)自動(dòng)根據(jù)每次考試的題量和配題表中的選題從試題表中進(jìn)行隨機(jī)抽題,進(jìn)入考試頁面后,倒計(jì)時(shí)開始,學(xué)生開始答題,時(shí)間到系統(tǒng)自動(dòng)交卷,也可提前交卷,提前交卷的時(shí)間控制在超過整場考試時(shí)間的60%。交卷后系統(tǒng)對(duì)照正確答案給出成績并顯示給學(xué)生,學(xué)生還可以查看參考答案。
4管理員登錄:輸入賬號(hào)和密碼后可進(jìn)行系統(tǒng)維護(hù)。
章節(jié)管理:添加、刪除、修改;
試題管理:(填空題、選擇題、判斷題)添加、刪除、修改:
試卷管理:(試卷編號(hào)、試卷名稱、題型、題量、分?jǐn)?shù)、時(shí)間)添加、刪除、修改;還可以點(diǎn)擊試卷編號(hào)直接查看本次考試的試題,進(jìn)行二次篩選;
試題配題:根據(jù)試卷編號(hào)從不同的章節(jié)中選取各類試題加入到配題表中,只有配題時(shí)被選中的試題才能參與隨機(jī)組卷:
成績查詢:可以按班級(jí)、試卷編號(hào)查詢學(xué)生成績,及時(shí)掌握學(xué)生的學(xué)習(xí)情況;
學(xué)生管理:學(xué)生信息的錄入、刪除、修改;
成績查詢:按班級(jí)、試卷編號(hào)查詢成績。
二、數(shù)據(jù)庫的實(shí)現(xiàn)
本系統(tǒng)中的數(shù)據(jù)庫采用SQL Server數(shù)據(jù)庫實(shí)現(xiàn),數(shù)據(jù)庫名為test,其中主要的數(shù)據(jù)表結(jié)構(gòu)的描述如下:
1學(xué)生信息表:學(xué)生學(xué)號(hào)(xh)、學(xué)生姓名(xm)、學(xué)生密碼(nm)、學(xué)生性別(sex)、學(xué)生班級(jí)(class)。
2章節(jié)表:章節(jié)號(hào)(zj)和章節(jié)名稱(zjme)。
3選擇題試題表:選擇題編號(hào)(ID)、所屬章節(jié)(zj)、題目內(nèi)容(tin)、4個(gè)選項(xiàng)(ansl、ans2、ans3、ans4)和正確答案(ans)。
4填空題試題表:填空題編號(hào)(ID)、所屬章節(jié)(zj)、題目內(nèi)容(tm)和正確答案(ans)。
5判斷題試題表:判斷題編號(hào)(ID)、所屬章節(jié)(zj)、題目內(nèi)容(tm)和正確答案(ans)。
6考試號(hào)表:試卷編號(hào)(ksh)、試卷名稱(ksnr)、考試時(shí)間(kssj)、試卷總分(kszf)、選擇題題量(xztsl)、選擇題每題分?jǐn)?shù)(xztfs)、判斷題題量(pdtsl)、判斷題每題分?jǐn)?shù)(pdtfs)、填空題題量(tktsl)和填空題每題分?jǐn)?shù)(tktfs)。
7選擇題配題表:試卷編號(hào)(ksh)、選擇題編號(hào)(ID)。
8判斷題配題表:試卷編號(hào)(ksh)、判斷題編號(hào)(ID)。
9填空題配題表:試卷編號(hào)(ksh)、填空題編號(hào)(ID)。
10成績表:成績編號(hào)(ID)、學(xué)生學(xué)號(hào)(xh)、學(xué)生成績(cj)、試卷編號(hào)(ksh)、試卷名稱(ksnr)、考試日期(ksrq)、開始考試時(shí)間(kissj)和交卷時(shí)間(jjsj)。
三、相關(guān)技術(shù)介紹
(一)實(shí)現(xiàn)ASP與數(shù)據(jù)庫的連接
進(jìn)行數(shù)據(jù)庫操作的第一個(gè)步驟就是建立到數(shù)據(jù)庫的連接。連接數(shù)據(jù)庫可以使用驅(qū)動(dòng)程序,也可以使用數(shù)據(jù)源。
本系統(tǒng)使用的是數(shù)據(jù)源,數(shù)據(jù)源定義為test。
set cn=Server,createObject(kDODB,Connection)
cn,0pen”DSN=test…
(二)隨機(jī)抽題、組卷
本在線考試系統(tǒng)開發(fā)的目的不僅可以用于期中、期末等綜合性考試,也應(yīng)該適用于平時(shí)的章節(jié)測試。在平時(shí)章節(jié)測試時(shí)??梢园凑鹿?jié)進(jìn)行選題、隨機(jī)生成試卷;在期中、期末等綜合性考試時(shí),可以由任課教師從不同章節(jié)中選取出適合的試題參與配題,只有配題后的試題才可以參與隨機(jī)組卷。
另外,為了保證每個(gè)應(yīng)試者的試題類型和題量都相同,而試題內(nèi)容和順序并不相同,試卷是從服務(wù)器的數(shù)據(jù)庫中經(jīng)過隨機(jī)抽取后動(dòng)態(tài)生成的。本系統(tǒng)隨機(jī)抽題是使用END()函數(shù)來產(chǎn)生隨機(jī)數(shù)。
系統(tǒng)包括選擇題、填空題、判斷題,三者隨機(jī)抽題的算法完全相同。以選擇題為例,簡述一下試卷中選擇題生成的整個(gè)過程:基于