asp.net網(wǎng)上模擬考試系統(tǒng)論文.doc_第1頁
asp.net網(wǎng)上模擬考試系統(tǒng)論文.doc_第2頁
asp.net網(wǎng)上模擬考試系統(tǒng)論文.doc_第3頁
asp.net網(wǎng)上模擬考試系統(tǒng)論文.doc_第4頁
asp.net網(wǎng)上模擬考試系統(tǒng)論文.doc_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

學(xué) 號: 課 程 論 文題 目網(wǎng)上模擬考試系統(tǒng)教 學(xué) 院計(jì)算機(jī)學(xué)院專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班 級05級本(二)班姓 名指導(dǎo)教師2008年12月26日一 概述2二 總體方案設(shè)計(jì)4三 詳細(xì)設(shè)計(jì)63.1數(shù)據(jù)庫設(shè)計(jì)63.2 系統(tǒng)功能模塊劃分73.2.1 前臺子系統(tǒng)功能模塊劃分73.2.2 后臺子系統(tǒng)功能模塊劃分83.3.系統(tǒng)主要功能模塊83.3.1用戶登錄模塊83.3.2試題和答案管理模塊93.3.3試卷管理模塊11四 程序的調(diào)試與運(yùn)行結(jié)果說明124.1系統(tǒng)配置124.1.1 web.config文件配置124.1.2 配置發(fā)布主頁124.1.3 預(yù)覽網(wǎng)站134.2 我負(fù)責(zé)的部分及其部分代碼134.3系統(tǒng)關(guān)鍵部分測試分析16總 結(jié)17參 考 文 獻(xiàn)18一 概述網(wǎng)絡(luò)化教育代表了教育改革的一個發(fā)展方向,已經(jīng)成為現(xiàn)代教育的一個特征,并對教育的發(fā)展形成新的推動力。隨著internet/intranet的迅速發(fā)展和廣泛普及,建立在其上的遠(yuǎn)程教育成為現(xiàn)代教育技術(shù)未來發(fā)展方向之一,考試測試作為遠(yuǎn)程教育的一個子系統(tǒng)也成為一個重要的研究領(lǐng)域?,F(xiàn)代遠(yuǎn)程教育作為一種新的教學(xué)手段已經(jīng)開始進(jìn)入我們的生活,正在給傳統(tǒng)教育模式帶來新的變革,并對教育的發(fā)展形成新的推動力。internet技術(shù)的發(fā)展使得考試的技術(shù)手段和載體發(fā)生了革命性的變化,internet的開放性、分布性的特點(diǎn)和基于internet的巨大的計(jì)算能力使得考試突破了時間和空間的限制。基于internet的考試系統(tǒng)正成為人們的研究熱點(diǎn)之一。與傳統(tǒng)考試模式相比,網(wǎng)上考試具有無可比擬的優(yōu)越性,它可以將傳統(tǒng)考試過程中的試卷組織、審定印制、傳送收集、登記發(fā)放、評判歸檔各個環(huán)節(jié)縮小到一至兩個環(huán)節(jié),幾乎屏蔽了所有人工直接干預(yù)考試活動的可能性,不但能夠節(jié)約大量的時日、人力、物力與財(cái)力,而且還可以大幅度提高考試成績的客觀性和公正性。網(wǎng)上考試系統(tǒng)課題產(chǎn)生的背景是當(dāng)今教育信息化的趨勢及我國高校教育信息化系統(tǒng)的建設(shè);目的是充分利用學(xué)校現(xiàn)有的計(jì)算機(jī)軟、硬件資源和網(wǎng)絡(luò)資源實(shí)現(xiàn)無紙化考試以避免傳統(tǒng)手工考試的不足。與傳統(tǒng)考試模式相比,網(wǎng)上考試滲入了更多的技術(shù)環(huán)節(jié),對實(shí)現(xiàn)安全性的途徑、方法也提出了更高的技術(shù)要求。通過internet/intranet來實(shí)現(xiàn)網(wǎng)上考試,是現(xiàn)代教育技術(shù)的一個具體實(shí)現(xiàn),具有很重要的現(xiàn)實(shí)意義??梢詫?shí)現(xiàn)教考分離以及考務(wù)工作的全自動化管理,可以有效利用校園網(wǎng)的軟硬件資源,使其發(fā)揮最大效力,更好的為學(xué)校的教學(xué)、科研、管理服務(wù),可以大規(guī)模的實(shí)行考試,實(shí)現(xiàn)考試的客觀、公證性,自動化組卷、閱卷可以減輕教師的工作強(qiáng)度。傳統(tǒng)考試要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、評改試卷、講評試卷和分析試卷。這是一個漫長而復(fù)雜的過程,已經(jīng)越來越不適應(yīng)現(xiàn)代教學(xué)的需要。網(wǎng)絡(luò)考試系統(tǒng)是傳統(tǒng)考場的延伸,它可以利用網(wǎng)絡(luò)的無限廣闊空間,隨時隨地的對學(xué)生進(jìn)行考試,加上web數(shù)據(jù)庫技術(shù)的利用,大大簡化了傳統(tǒng)考試的過程。本系統(tǒng)以internet為平臺,研究了基于web考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),包括系統(tǒng)需求分析和系統(tǒng)功能設(shè)計(jì)以及數(shù)據(jù)庫設(shè)計(jì)。重點(diǎn)闡述了用戶登錄模塊、題庫管理模塊和試卷管理模塊的設(shè)計(jì)。特別是在題庫管理模塊中對自動組卷功能常用的算法進(jìn)行了比較。對于較流行的驗(yàn)證碼技術(shù)也給出了具體實(shí)現(xiàn)。由于系統(tǒng)的操作界面都是web頁面形式,而且需要對各種用戶的具體請求進(jìn)行動態(tài)處理并返回結(jié)果,這是一般靜態(tài)web頁面技術(shù)所無法實(shí)現(xiàn)的,所以采用動態(tài)網(wǎng)頁技術(shù)。目前動態(tài)網(wǎng)頁技術(shù)有很多,可以說是層出不窮,比如cgi、php、jsp、asp、asp.net等。本設(shè)計(jì)采用asp.net技術(shù)。asp.net(又稱asp+)是asp的下一代版本,它并不只是asp 4.0,它是一個用于 web開發(fā)的全新框架,其中包含了許多新的特性。asp.net完全基于模塊與組件,具有更好的可擴(kuò)展性與可定制性,數(shù)據(jù)處理方面更是引入了許多激動人心的新技術(shù),正是這些具有革新意義的新特性,讓asp.net遠(yuǎn)遠(yuǎn)超越了asp,同時也提供給web開發(fā)人員更好的靈活性,有效縮短了web應(yīng)用程序的開發(fā)周期。asp.net與sql server 2000的完美組合,為中小型乃至企業(yè)級的web商業(yè)模型提供了一個更為穩(wěn)定,高效,安全的運(yùn)行環(huán)境。二 總體方案設(shè)計(jì)網(wǎng)上模擬考試系統(tǒng)主要是對后臺管理和前臺操作。后臺管理是管理員對本網(wǎng)站的維護(hù),管理員具有最高權(quán)限,來維護(hù)系統(tǒng)的正常運(yùn)行,可以管理用戶,主要包括管理基本資料,包括教師、學(xué)生、普通用戶資料的增刪改以及個人資料修改,管理設(shè)定試卷的難度、區(qū)分度、知識點(diǎn)、認(rèn)知分類等項(xiàng)目,系統(tǒng)按照預(yù)定的參數(shù)從題庫中隨機(jī)抽取試題,使所有參考人員使用決不雷同的試卷,保障系統(tǒng)的安全性,防止非法訪問。管理員主要是用sql server建的數(shù)據(jù)庫,以及在此數(shù)據(jù)庫中建的系統(tǒng)中所需要的表格,在表格中加入我們用到的數(shù)據(jù),就是為了在前臺能查詢我們所要的數(shù)據(jù), 前臺操作主要由教師和學(xué)生操作組成。學(xué)生主要完成是隨機(jī)抽取試卷,然后在線答題,在一定的時間內(nèi)完成試卷,并提交試卷。教師主要完成修改學(xué)生的所做的試卷,修改后,系統(tǒng)給出一個考生的分?jǐn)?shù)。本系統(tǒng)的用戶可分為管理員,教師,學(xué)生和普通用戶四類??紤]到系統(tǒng)的安全性,本系統(tǒng)共分成兩個界面:一個界面用于管理員和教師登錄,主要負(fù)責(zé)進(jìn)行基本資料、題庫、試卷、成績的管理以及查詢等;另外一個界面用于考生和普通用戶登錄,主要負(fù)責(zé)修改個人資料、在線考試、查詢以往考試成績等。從總體上考慮,系統(tǒng)應(yīng)該實(shí)現(xiàn)下列功能:對教師來說,包括試卷管理、題庫管理、成績管理。1、試卷管理:教師可以從課程,難度級別,各種題型的數(shù)量等方面對某份試卷提出一定的要求生成試卷規(guī)則,在學(xué)生考試時,由系統(tǒng)根據(jù)試卷規(guī)則自動組卷生成滿足教師要求的試卷,而不用手工組卷。同時,教師還可以對庫中已有的試卷進(jìn)行修改和刪除,添加新試卷等。2、題庫管理:教師可以根據(jù)教學(xué)需求對題庫中的試題進(jìn)行三種基本操作:添加新的考題、刪除舊有考題、修改原有考題,其中試題類型包括判斷題、填空題、單選題和多選題;對于每種類型的試題,教師可以設(shè)置題干、答案、試題難度系數(shù)、解析、添加時間等屬性。3、成績管理:教師可以查看考生的考試成績,并針對不同的課程進(jìn)行成績統(tǒng)計(jì),包括考試人數(shù)、最高分、最低分、平均分以及各分?jǐn)?shù)段得分人數(shù)等。對學(xué)生來說,包括在線考試、查詢以往考試成績。1、在線考試:學(xué)生可以任選時間進(jìn)行在線測試,考試結(jié)束后,系統(tǒng)會根據(jù)已有的標(biāo)準(zhǔn)答案進(jìn)行在線判卷,考生可以立刻知道考試成績。2、查詢以往考試成績:學(xué)生可以在線查詢以前參加過的每門課程的考試相關(guān)信息。對管理員來說,主要包括管理基本資料(包括教師、學(xué)生、普通用戶資料的增、刪、改以及個人資料修改)、試卷管理(包括對試卷的添加、刪除、修改)、控制與分配用戶的訪問權(quán)限,保障系統(tǒng)的安全性,防止非法訪問。我主要負(fù)責(zé)試題和答案的管理部分的總體設(shè)計(jì)。三 詳細(xì)設(shè)計(jì)3.1數(shù)據(jù)庫設(shè)計(jì)該系統(tǒng)使用sql server 2000作為應(yīng)用程序的數(shù)據(jù)庫, 建立了有8張數(shù)據(jù)表.users表主要是用戶表,主要介紹一些用戶的信息;roles表主要是介紹用戶的身份,是管理員,還是教師,學(xué)生,普通用戶;questions表主要是問題表,也就是在考試中用到的試題;questionkinds表主要是問題的種類表,是選擇題,還是填空題,還是問答題等;papers表主要是試卷表,在此表中主要是定義一些考卷的難度和考題的分?jǐn)?shù);paperskinds表主要是試卷種類表;answers表主要是答案表。在8個數(shù)據(jù)表中,主要介紹users表,questions表,papers表和answers表。users表如圖3-1: 圖3-1 users表userid為該表主鍵,username為用戶的名字,也就是用戶的登錄名,password為用戶登陸系統(tǒng)是所需要的密碼,email為登陸此系統(tǒng)用戶的email,roleid為用戶在次系統(tǒng)中所扮演的角色,我們在這里把它定義為整型,而我們在roles表中指出了用戶的類型,其中0表示超級管理員,1表示考生,2表示教師,3表示系統(tǒng)管理員。questions表如圖3-2: 圖3-2 questions表questionid為該表主鍵,title為問題的題目,我們在這里把其定義為varchar類型,body為問題的具體內(nèi)容,pubdate為問題的更新日期,kindid為問題的種類,我們把此字段定義為int,我們可以在questionkinds表中定義其具體的意思,defficult為問題的難度系數(shù),mark為該問題的分?jǐn)?shù)。papers表如圖3-3: 圖3-3 papers表paperid為該表主鍵,totalmark表示該試卷的總分?jǐn)?shù),一般為100分和150分,mindefficult為該試卷的最小難度,maxdefficult為該試卷的最大難度,我們把這兩個字段都定義為int類型,userid為用戶的id號,該字段即是userid表中的主鍵,roleid為用戶的角色,是學(xué)生,教師,還是管理員。answers表如圖3-4: 圖3-4 answers表answerid為該表主鍵,title為答案的題目,body為問題的答案具體是什么,questionid為問題的題號,既是此答案為那一個具體問題的答案,pictureid為所要鏈接的圖片id號。3.2 系統(tǒng)功能模塊劃分3.2.1 前臺子系統(tǒng)功能模塊劃分(圖3-5)前臺子系統(tǒng)修改信息用戶注冊在線考試查詢成績退出系統(tǒng) 圖3-5 前臺子系統(tǒng)功能模塊圖3.2.2 后臺子系統(tǒng)功能模塊劃分(圖3-6)后臺子系統(tǒng)資料管理新聞管理題庫管理試卷管理成績管理退出系統(tǒng)圖3-6 后臺子系統(tǒng)功能模塊圖3.3.系統(tǒng)主要功能模塊3.3.1用戶登錄模塊該模塊包括user_login.aspx和user.aspx文件。如果用戶要使用為注冊用戶提供的功能,那么在使用之前必須登錄。用戶的登錄方式很簡單,只要輸入用戶名、密碼以及系統(tǒng)每次提供的驗(yàn)證碼就可以了。若用戶輸入的以上三項(xiàng)與數(shù)據(jù)庫中保存的相符,則表明用戶登錄成功,可以開放全部前臺子系統(tǒng);如果不符,則登錄失敗。模塊執(zhí)行流程如圖3-7所示。其中管理員、教師、學(xué)生登錄模塊執(zhí)行流程與用戶登錄模塊執(zhí)行流程類似。 用戶輸入信息用戶名,口令空用戶名查詢用戶存在 口令正確n n 圖3-7 用戶登陸模塊其界面如圖3-8: 圖3-8 用戶登陸界面3.3.2試題和答案管理模塊題庫管理包括判斷題管理、填空題管理、單選題管理和多選題管理。管理員可以通過題庫管理對各種類型的試題進(jìn)行添加、刪除、修改以及查詢。題庫管理功能模塊圖如圖4-2所示,由于各種類型試題的管理功能均類似,這里僅以判斷題管理為例進(jìn)行介紹。判斷題管理模塊包括的操作有:添加判斷題、刪除判斷題、修改判斷題和查找判斷題,添加試題的界面如圖3-9: 圖3-9 添加試題界面在此界面中管理員可以添加試題,可以設(shè)計(jì)試題的難度系數(shù),并可以設(shè)置問題的種類,并可以設(shè)置問題的分值,此界面只有管理員能進(jìn)入,學(xué)生和教師不能進(jìn)入,既是進(jìn)入也不能做任何修改。更新試題的界面如圖3-10: 圖3-10 更新試題界面在此界面中管理員主要完成更新試題的操作,如:管理員可以添加問題答案,并也可以修改問題,和刪除問題,并修改問題的答案,以及刪除答案,此界面也只有管理員能進(jìn)入,只有管理員能進(jìn)行此操作,來完成試題的管理和答案的管理,普通用戶無法看到此頁面。3.3.3試卷管理模塊 添加試卷的界面如圖3-11: 圖3-11 試卷管理界面此界面主要完成添加試卷的操作,如:添加選擇題,填空題,簡答題,以及設(shè)置試卷的分值,設(shè)置試卷的最小難度系數(shù)和最大難度系數(shù),然后確認(rèn)提交,就可以把所要添加的試卷添加到該系統(tǒng)中,其中更新試卷和此界面是一個界面,此功能也只有管理員能操作,也只有管理員能進(jìn)入此界面。刪除試卷的界面如圖3-12: 圖3-12 刪除試卷界面此界面也只有管理員能操作,主要完成試卷的刪除操作,如圖中的右下角的叉號就是刪除按鈕,點(diǎn)擊會彈出一個對話框,問是否要真的刪除該試卷,按是刪除選中的試卷,按否不刪除。在此就完成了系統(tǒng)的詳細(xì)設(shè)計(jì)。四 程序的調(diào)試與運(yùn)行結(jié)果說明4.1系統(tǒng)配置4.1.1 web.config文件配置asp.net應(yīng)用程序的配置功能放在web.config文件中,它包含每一個具體web應(yīng)用程序的配置信息。在程序運(yùn)行時,asp.net使用分層虛擬目錄結(jié)構(gòu)的web.config文件提供的配置信息為每個惟一的url資源計(jì)算一組配置設(shè)置,然后緩存結(jié)果配置設(shè)置,以供所有頁面對資源的請求使用。web.config文件對于訪問站點(diǎn)的用戶來說是不可見的,而且也是不可訪問的,它基于xml,每個配置文件都包含xml標(biāo)記和子標(biāo)記的嵌套層次結(jié)構(gòu)。網(wǎng)上考試模擬系統(tǒng)的web.config文件中的配置: 通過鍵/值對key 和value配置數(shù)據(jù)庫連接的相關(guān)信息,將數(shù)據(jù)庫和頁面建立了鏈接。4.1.2 配置發(fā)布主頁首先要創(chuàng)建虛擬目錄,新建虛擬目錄的步驟如下: 打開iis(internet 信息服務(wù)),在默認(rèn)網(wǎng)站上右擊,在快捷菜單中選擇新建虛擬目錄; 在彈出的虛擬目錄創(chuàng)建向?qū)υ捒蚶稂c(diǎn)擊“下一步”; 輸入虛擬目錄別名; 選擇網(wǎng)站內(nèi)容所在目錄路徑; 設(shè)置“訪問”權(quán)限。 在所建虛擬目錄上右擊,在彈出菜單中選擇瀏覽,或在瀏覽器里輸入相應(yīng)網(wǎng)址,都可運(yùn)行瀏覽程序。虛擬目錄不在目錄列表中顯示(也稱為 www 服務(wù)的“目錄瀏覽”),要訪問虛擬目錄,用戶必須知道虛擬目錄的別名并在瀏覽器中鍵入 url。對于 www 服務(wù),也可以在 html 頁面中創(chuàng)建鏈接。發(fā)布網(wǎng)站的時候,把程序首頁的名字(index.aspx或default.aspx)寫在iis當(dāng)中就可以訪問了。4.1.3 預(yù)覽網(wǎng)站打開ie,在地址欄中輸入:http:/localhost/index.aspx ,然后回車,就可以看到我們此系統(tǒng)的主界面。4.2 我負(fù)責(zé)的部分及其部分代碼我所負(fù)責(zé)的試題的頁面如圖4-1: 圖4-1 試題管理界面 其主要的代碼如下所示:using system;using system.collections;using system.componentmodel;using system.data;using system.drawing;using system.web;using system.web.sessionstate;using system.web.ui;using system.web.ui.webcontrols;using system.web.ui.htmlcontrols;using system.data.sqlclient;using system.io;namespace examinesystempublic partial class migrated_addquestion : addquestionprotected system.web.ui.webcontrols.button updatequestion;protected void page_load(object sender, system.eventargse)/驗(yàn)證用戶的權(quán)限if(sessionuserid = null)response.redirect(/admins/userlogin.aspx);if(userdb.isauthorityuser(int32.parse(sessionuserid.tostring()= false)response.redirect(/admins/userlogin.aspx);if(!page.ispostback)bindqueskinddata();private void bindqueskinddata()queskindlist.items.clear();questiondb question = new questiondb();sqldatareader rect = question.getquestionkinds();queskindlist.datasource = rect;queskindlist.datatextfield = kindname;queskindlist.datavaluefield = kindid;queskindlist.databind();rect.close();#region web form designer generated codeoverride protected void oninit(eventargs e)web form designer.initializecomponent();base.oninit(e);private void initializecomponent() #endregionprotected void addnewquestion_click(object sender, system.eventargs e)int npictureid = 0;questiondb question = new questiondb();if(quespicture.postedfile.contentlength 0)npictureid = uppicturefile(quespicture);decimal diffcult = decimal.parse(defficult.text.trim();string tempdiffcult = (100 * diffcult).tostring(); stringdiffcultstring=tempdiffcult.substring(0,tempdiffcult.indexof(.);question.addquestion(questitle.text,quesbody.text,int32.parse(diffcultstring),int32.parse(mark.text.trim(),int32.parse(queskindlist.selectedvalue),npicture id);response.write(alert(添加新的問題成功!);private int uppicturefile(htmlinputfile uploadfile)picturedb picture = new picturedb();int npictureid = 0;if(uploadfile.postedfile.contentlength 0)string filename = uploadfile.postedfile.filename.substring(uploadfile.postedfile.filename.lastindexof(),uploadfile.postedfile.filename.length - uploadfile.postedfile.filename.lastindexof();stringfiletime=datetime.now.year.tostring() + datetime.now.month.tostring() + datetime.now.day.tostring() + datetime.now.hour.tostring()+datetime.now.second.tostring()+datetime.now.minute.tostring()+ datetime.now.millisecond.tostring();filename = + filetime + getrandomint() + filename.substring(filename.indexof(.),filename.length - filename.indexof(.);if(file.exists(server.mappath(request.applicationpath) + uploadsfiles + filename) = false)tryuploadfile.postedfile.saveas(server.mappath(request.applicationpath) + uploadsfiles + filename);npictureid = picture.addpicture(,uploadsfiles+ filename);catch(exception ex)string srawurl = request.rawurl;if(srawurl.indexof(?) -1)srawurl = srawurl.substring(0,srawurl.indexof(?);response.redirect(/desktopmodules/errorpage.aspx?errorurl=+srawurl+&errormessage= + ex.message.replace(n, );elseresponse.write(alert(此文件已經(jīng)存在,請重新命名你的文件!);elseresponse.write(alert(文件名和內(nèi)容不能為空!);return(npictureid);private string getrandomint()random random = new random();return(random.next(10000).tostring(); 4.3系統(tǒng)關(guān)鍵部分測試分析系統(tǒng)完成之后,對各個模塊的功能進(jìn)行了詳細(xì)的測試,輸入數(shù)據(jù)和預(yù)測輸出數(shù)據(jù)相比,發(fā)現(xiàn)了一些問題。主要是在查詢過程中預(yù)計(jì)查詢結(jié)果和實(shí)際結(jié)果不一致,有時候

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論