網上考試機制
時間:2022-05-04 11:43:00
導語:網上考試機制一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。
【摘要】隨著計算機技術的迅猛發展,學校教學和管理的信息化發展也有長足的進步,這就要求各個環節都均衡發展,從軟硬件雙方面把學校建設成一流的信息管理、教育教學的平臺。本文設計開發的網上考試系統也是其中重要的一個方面。該系統本著減輕教師工作負擔、提高工作效率、優化學生考試的流程,節約考試成本,增強參加考試學生的身份識別,比傳統的考試模式節省人力財力和時間。
系統分為三大模塊:用戶注冊模塊、考試模塊和系統管理模塊。面向三類人員使用:普通學生、老師、管理員,使用時他們擁有不同的權限。其中系統管理模塊是進行題目的添加、查詢和刪除,是系統運行的基礎;考試模塊是客戶端學生或教師通過自己的用戶名以及密碼登陸系統,進入界面時由系統按照出題教師預先設置好的試卷結構從題庫中隨機抽取適合的題目,形成試卷。
系統選用的開發軟件是ASP、Dreamweaver,后臺數據庫為ACCESS2000
【關鍵詞】考試試卷自動系統ASP
【正文】
第一章選題背景
隨著技術的飛速發展,現在很多國外的大學和社會其他部門都已經開設了網絡教學,通過計算機實現異地教育和培訓。現在,計算機硬件技術的發展已經達到了相當高的水平。但是,教學軟件的開發目前還處于起步階段,隨著這項技術的不斷深入發展,就要求有更好、更完善的軟件系統應用到教學當中去,這就給軟件設計人員提出了更高的設計要求。
網絡教學包括很多環節,例如教學系統、答疑系統和考試系統等等。其中很重要的一個環節就是網上考試系統,同時它也是最難實現的環節。在我國,雖然教學已經蓬勃地發展起來,但是目前學校與社會上的各種考試大都采用傳統的考試方式,在此方式下,組織一次考試至少要經過五個步驟,即人工出題、考生考試、人工閱卷、成績評估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量將會越來越大,并且其工作將是一件十分繁瑣和非常容易出錯的事情,可以說傳統的考試方式已經不能適應現代考試的需要。隨著計算機應用的迅猛發展,應用不斷擴大,如網絡教學和虛擬網校的出現等等,且這些應用正逐步深入到千家萬戶。人們迫切要求利用這些技術來進行網上考試,以減輕教師的工作負擔及提高工作效率,與此同時也提高了考試的質量,從而使考試更趨于公正、客觀,更加激發學生的學習興趣。例如目前許多國際著名的計算機公司所舉辦的各種認證考試絕大部分采用這種方式。
網上考試是現階段研究開發的一個熱點。它是建立在國際互聯網上的應用系統,客戶端的配置可以極為簡單,使考試不受地域的局限。一個完備的網上考試系統可以使用戶在網上學習過后及時檢驗自己的學習效果,以發現自己的不足,使得學習效率得到很大提高。網上考試系統中題目的生成、試卷的提交、成績的批閱等都可以在網上自動完成。只要形成一套成熟的題庫就可以實現考試的自動化。這樣一來,教師所要做的只是精心設計題目、維護題庫,而不是組織考試,從而大大減輕了教師的負擔,這表明其經濟性是相當可觀的。為了適應新形勢的發展,我進行了這一系統的初步設計工作,也可以說是做一個初步的探索,希望它能夠在各類考試中發揮高效、便捷的作用,把老師從繁重的工作中解脫出來!
服務器端我們采用Access數據庫系統和ASP組件來構成考試的應用服務系統;客戶端采用瀏覽器來完成考試全過程,同時可進行遠程系統維護和管理。利用Access數據庫技術,結合目前硬件價格普遍下跌與寬帶網大力建設的有利優勢,應用ActiveServerPage技術,我開發了在線考試系統這一程序。它運用方便、操作簡單,效率很高,現階段雖只實現了試卷的客觀題部分,但已具有用戶注冊、在線考試、動態隨機出題、時間控制、自動判卷、試題錄入、修改題庫、管理員管理、分數管理等重要功能,本系統還可進行主觀題的考試,也就是說實現了真正的無紙化考試,滿足任何授權的考生隨時隨地考試并迅速獲得成績,同時也大大減輕了教師出題、判卷等繁重的工作量。
第二章方案論證
該網上考試系統主要采用ASP、HTML、Access數據庫、VBScript等技術和工具,整體設計遵循軟件工程的方法,經過可行性分析、需求分析、總體設計、代碼的編制、模塊測試和系統實現幾個階段。下面就對這幾種技術和方法做一個概述。
一、ASP技術介紹
MicrosoftActiveServerPages即我們所稱的ASP,其實是一套微軟開發的服務器端腳本環境。ActiveServerPage是創建動態網頁的一個很好的工具,它起一種編程語言的作用,可以利用它編寫動態產生HTML的程序代碼。因此,只要用戶瀏覽Web站點并請求一個ASP頁,Web服務器就可以處理相應的ASP代碼,生成HTML代碼,然后將它傳遞到用戶瀏覽器并顯示出網頁。ASP內含于IIS3.0和4.0之中,通過ASP我們可以結合HTML網頁、ASP指令建立動態、交互且高效的WEB服務器應用程序。有了ASP就不必擔心客戶的瀏覽器是否能運行所編寫的代碼,因為所有的程序都將在服務器端執行,包括所有嵌在普通HTML中的腳本程序。當程序執行完畢后,服務器僅將執行的結果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負擔,大大提高了交互的速度。
以下羅列了ASP所獨具的一些特點:
(1)ASP所使用的腳本語言VBScript直接來源于VB語言,秉承了VB簡單易學的特點,學習起來非常容易。
(2)把腳本語言直接嵌入HTML文檔中,不需要編譯和連接直接運行。
(3)存取數據庫非常容易。
二、VBScript技術介紹
VBScript是程序開發語言VB家族的成員。它與VB語言有密切的關系,如果熟悉VB,VBScript很容易學習和使用。VBScript通過變量、操作符、循環、分支和函數擴展了HTML。通過在HTML網頁中加入VBScript腳本,可以使靜態的HTML網頁成為動態網頁。
它具有以下幾個特點:
(1)易掌握。如果你熟悉VB,VBScript很容易學習和使用。
(2)多用性。VBScript可以在運行Unix、Windows操作系統上,需要注意的是,該操作系統必須裝有最新的MicrosoftInternetExplorer。
第三章系統分析設計
一、可行性分析
可行性分析,是在系統調查的基礎上,針對新系統的開發是否具備必要性和可能性,對新系統的開發從技術、經濟、社會的方面進行分析和研究,以避免投資失誤,保證新系統的開發成功。可行性研究的目的就是用最小的代價在盡可能短的時間內確定問題是否能夠解決。該系統的可行性分析包括以下幾個方面的內容。
(1)經濟可行性:主要是對項目的經濟效益進行評價,本系統作為一個畢業設計,無需開發經費,對于我系在經濟上是可以接受的,并且本系統實施后可以顯著提高考試效率,有助于學院完全實現網絡化管理。所以本系統在經濟上是可行的。
(2)技術上的可行性:技術上的可行性分析主要分析技術條件能否順利完成開發工作,硬、軟件能否滿足開發者的需要等。該管理系統采用了當前新興的B/S模式進行開發,結合了Internet技術。數據庫服務器選用Access數據庫,它能夠處理大量數據,同時保持數據的完整性并提供許多高級管理功能。它的靈活性、安全性和易用性為數據庫編程提供了良好的條件。因此,系統的軟件開發平臺已成熟可行。硬件方面,科技飛速發展的今天,硬件更新的速度越來越快,容量越來越大,可靠性越來越高,價格越來越低,其硬件平臺完全能滿足此系統的需要。
(3)時機可行性:目前,大學的校園網絡覆蓋了教學區和學生區的主要建筑物及部分家屬宿舍,從而滿足校內各學院,各職能部門,各直屬單位上網需求。學校良好的網絡設施為開發使用網絡考試系統提供了堅實的基礎。
(4)管理上的可行性:主要是教務處管理人員大力支持,系領導認同,現有的管理制度和方法科學,規章制度齊全,原始數據正確等。規章制度和管理方法為系統的建設提供了制度保障。
綜上所述,此系統開發目標已明確,在技術和經濟等方面都可行,并且投入少、見效快。因此系統的開發是完全可行的。
二、系統分析
詳細調查之后,結合現行考試模式,為開發本系統而繪制出的網絡考試的管理業務流程圖如圖所示。
系統分析的主要成果是系統的邏輯模型。本系統的邏輯模型主要是以系統的數據流圖和數據字典為主要描述工具。即在網絡考試系統管理方式和業務流程進行認真分析和研究的基礎上,排除現有組織機構和業務分工所造成的信息障礙。完全從業務管理功能和管理對象出發,按照信息系統中應有的數據流和數據結構來勾畫系統的概貌。
數據流圖是組織中信息運動的抽象。是在調研的基礎上,從系統的科學性、管理的合理性、實際運動的可行性角度出發,將信息處理功能和彼此之間的聯系自頂向下,逐層分解,從邏輯上精確地描述系統應具有的數據加工功能、數據輸入、數據輸出、數據存儲及數據來源和去向(外部實體)等項目。
首先,分析網上考試系統的總體情況,劃分系統邊界,識別系統的數據來源和去處,確定外部實體,得出系統的頂層數據流程圖;然后劃分出幾個主要的信息管理功能,并明確各功能之間的聯系,繪制出數據流程圖,如下圖所示
三、數據庫設計
用access建立一個數據庫文件,用來存儲試題及用戶的驗證信息。當管理員登陸時,首先提示要輸入驗證信息,當輸入用戶信息后,通過sql語言查詢administrator表,判斷此管理員是否合法,如果不合法,則顯示提示信息,否則,進入考試系統。管理員進入后可通過程序對test表內容進行添加,查詢和刪除。學生登錄,則需要學生的姓名和學號通過查詢employee表,如果用戶合法,由服務器抽取試題并顯示到考生屏幕上,否則學生無法登錄考試。試題的抽取又需要通過subject表,抽取題庫中的某一科所對應的題,當考生做完題并遞交后,由系統自動評分,顯示成績并將學生姓名和成績存入user表。
在本系統中,數據庫的建立是用ACCESS實現的。其中包括四個表:administrator、employee、test、user和subject。administrator表存儲管理員信息,employee表存儲用戶信息,test表存儲單科考試內容,這里的test表用來存儲客觀題,還可建立test1表用來存儲主觀題,user表存儲用戶成績,subject表存儲課程名,這樣的話,本系統可以實現對任何科目的考試,先通過subject表選擇科目,通過字段filename確定對應的test表,再通過test表提取對應科目的題庫。在這里test表包含多個表,它們的字段相同,具體題目不同,每一門課程的試題對應一張表。
administrator表結構如下:
字段名稱類型說明
編號自動編號編號
Username文本管理員名
Password文本密碼
employee表結構如下:
字段名稱類型說明
number文本學號
Name文本姓名
address文本地址
mobile文本手機號
Phone文本聯系電話
Qq文本QQ號
Email文本EMAIL地址
test表結構如下:
字段名稱類型說明
Id自動編號編號
question文本存儲考試題目
A文本存儲選項A的答案
B文本存儲選項B的答案
C文本存儲選項C的答案
D文本存儲選項D的答案
Ans文本存儲正確答案
Count數字隨機抽取
search文本查詢
user表結構如下:
字段名稱類型說明
User文本用戶名
password文本密碼
Score數字存儲用戶成績
subject表結構如下:
字段名稱類型說明
Id自動編號課程編號
subject文本課程名稱
filename文本題庫表名
在提取用戶端信息以及反饋信息時用到了ASP的內置對象。現說明如下:
Request對象:可以使用Request對象訪問任何用HTTP請求傳遞的信息,包括從HTML表格用POST方法或GET方法傳遞的參數、cookie和用戶認證。本系統通過REQUEST獲取用戶輸入的用戶名和密碼。代碼為:
REQUEST.FORM(“username”)和REQUEST.FORM(“password”)。
Response對象:可以使用Response對象控制發送給用戶的信息。包括直接發送信息給瀏覽器、重定向瀏覽器到另一個URL或設置Cookie的值。本系統通過RESPONSE將成績反饋給用戶。
RESPONSE.WRITE“你的成績是”&score
用于數據庫訪問可以進行查找、插入、刪除等操作。對數據庫的查找是用SQL的select命令,插入是用SQL的insert命令,刪除是用SQL的delete命令。
存取數據庫的具體步驟是:首先確定數據源,然后打開或連接數據庫,并執行響應的操作,執行完畢關閉數據庫。connection對象負責打開或連接數據庫,recordset對象負責存取數據表,execute負責執行SQL命令。
設定數據來源的方法是:在服務器上打開“我的電腦”中的“控制面板”,雙擊“ODBC”;在“系統DSN”下選“添加”,選出預先設好的數據庫種類、名稱和位置。這里要用到的是access數據庫,數據源名稱為stry_exercise,主數據庫名稱stry_exercise.mdb。打開或連接數據庫的方法是:先用Server.CreatObject取得對象“ADODB.Connection”的一個實例,然后用“Open”打開待訪問的數據庫:
SetConn=Server.CreatObject(“ADODB.Connection”)
Conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&Server.MapPath("stry_exercise.mdb")
然后執行SQL命令,即對數據庫進行操作,這里要使用Execute命令
setrs=server.createobject(“adodb.recordset")
sql=“select*fromtest"
setrs=conn.execute(sql)
四、系統實現
1、管理員登錄
系統管理員必須通過管理員名和密碼進行身份驗證,數據庫查詢后有此記錄方可進入。具體查詢語句為:
setrs=conn.execute("select*fromadministratorwhereusername=''''"&username&"''''")
具體界面如下圖所示:
2、試題管理
(1)、添加試題
管理員有權對數據庫進行試題的添加,具體添加語句為:
sql="insertintotest(question,a,b,c,d,ans)values(''''"&question&"'''',''''"&a&"'''',''''"&b&"'''',''''"&c&"'''',''''"&d&"'''',''''"&ans&"'''')"
rs1.Opensql,conn,1,1
具體界面如下圖所示:
(2)、刪除試題
管理員有權對數據庫進行試題的刪除,具體刪除語句為:
id1=request("id")
sql="DELETEFROMtestWHEREid="+id1
rs.Opensql,conn,1,1
具體界面如下圖所示:
(3)、查詢試題
管理員有權對數據庫進行試題的查詢,具體查詢語句為:
sql="select1*fromtestwhereidlike''''"&id&"''''"
具體界面設計如下:
3、學生答題
學生通過登錄界面,如果數據庫中有相應的學生信息,通過自己的姓名和學號即可進入題庫進行考試,在規定時間內完成答題,結束后提交。登錄時與數據庫的操作如下:
setrs=conn.execute("select*fromemployeewherename=''''"&uname&"''''andnumber=''''"&num&"''''")
學生進入答題界面后計時器自動開始計時,進行時間控制,當時間到達指定值時系統會彈出提示框,提示時間已到。
具體學生登錄界面和答題界面如下:
4、批閱試卷并給出成績
學生提交后,系統打開數據庫,對比正確答案,自動給出成績。具體語句為:
<%
sql="select*fromtest"
rs.opensql,conn,3,3
dimscore
rsCount=0
ycorrect=0
Response.Write"正確答案:"
Dowhilenotrs.eof
Response.Writers("ans")
rsCount=rsCount+1
ifRequest.Form(rsCount)=rs("ans")then
ycorrect=ycorrect+1
endif
rs.movenext
loop
Response.Write"<br>你的答案:"
score=int(ycorrect/rscount*100)
fori=1toRequest.Form.Count-1
Response.WriteRequest.Form(i)
next
Response.Write"<br>"
Response.Write"你的成績:"&score
ifscore<=60thenResponse.Write"你不及格!"&"<br>"
ifscore>=60andscore<=80thenResponse.Write"及格"&"<br>"
ifscore>=80andscore<=100thenResponse.Write"優秀!"
%>
具體界面設計如下:
第四章設計總結
現階段本系統在功能上已經實現了管理員注冊、在線考試、時間控制、自動判卷、試題錄入、修改題庫、用戶登錄等重要功能,我只實現了對單一科目試卷的客觀題部分,今后需要繼續完善,實現系統對任一科目的選擇和主觀題的考試、試題的動態隨機抽取,并且當系統評分后,自動將學生姓名和成績存入user表實現分數管理。
【參考文獻】
1、尚俊杰《網絡程序設計—ASP》(第2版)清華大學出版社
2、劉瑞新等《網頁設計與制作教程》(第2版)機械工程出版社
3、田博文《Dreamweaver中文版基礎培訓教程》人民郵電出版社
4、田博文《Dreamweaver中文版網站建設實戰訓練》人民郵電出版社
5、楊國才等,基于WEB的遠程自學型教學系統得設計與實現,《計算機應用》,2000,第4版,61頁
6、周星等,基于ASP的網上組卷與自考系統的開發,《計算機應用》,2001,第2期,69頁
7、李瑞旭《ASP實例教程》北京:中國電力出版社,2000
8、薩師煊等《數據庫系統概論》(第三版)北京:高等教育出版社,2000
9、黃明等《ASP信息系統設計與開發實例》北京:機械工程出版社,2004
10、丁廣貴《ASP編程基礎與實例》北京:機械工程出版社,2003、4
11、王寧《ACCESS2000范例入門》北京:人民郵電出版社,2004、5
12、范國平《ACCESS2000數據庫系統開發實例》北京:人民郵電出版社,2002、12
13、袁啟昌《ASP動態網頁設計教程》北京:科學出版社,2005、3
14、郭寶紅等基于ASP網上考試系統的設計與實現《天津師范大學學報》(自然科學版)2002
15、周納《ASP動態網站編程語應用》北京:北京交通大學出版社2005、8
16、汪曉平等《ASP網絡開發技術》北京:人民郵電出版社,2003、12
- 上一篇:剖析西部大開發中石油和化學工業的發展
- 下一篇:小議經濟危機下的奧斯卡對策