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