包頭師范學(xué)院-基于ASP的網(wǎng)上考試系統(tǒng)畢業(yè)設(shè)計(jì)論文_第1頁(yè)
包頭師范學(xué)院-基于ASP的網(wǎng)上考試系統(tǒng)畢業(yè)設(shè)計(jì)論文_第2頁(yè)
包頭師范學(xué)院-基于ASP的網(wǎng)上考試系統(tǒng)畢業(yè)設(shè)計(jì)論文_第3頁(yè)
包頭師范學(xué)院-基于ASP的網(wǎng)上考試系統(tǒng)畢業(yè)設(shè)計(jì)論文_第4頁(yè)
包頭師范學(xué)院-基于ASP的網(wǎng)上考試系統(tǒng)畢業(yè)設(shè)計(jì)論文_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、網(wǎng)上考試系統(tǒng)周異包頭師范學(xué)院計(jì)算機(jī)科學(xué)系00級(jí)專升本摘要 本文介紹了一個(gè)基于網(wǎng)絡(luò)環(huán)境的考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)過程,包括系統(tǒng)需求分析和系統(tǒng)的功能設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)以及主要ASP.NET頁(yè)面的設(shè)計(jì)。重點(diǎn)闡述了用戶登錄模塊、題庫(kù)管理模塊和試卷管理模塊的設(shè)計(jì)。關(guān)鍵詞 在線考試 ASP.NET SQL Server 2000Abstract This paper expounds the designing and implementing process of an examination system based on network environment. It includes the analys

2、is of demand and the function design, database design , the design of main ASP.NET pages. this paper stress in the design of problem storehouse management modular , user entry modular and paper management modular.Keywords examination online ASP.NET SQL Server 20001. 引言網(wǎng)絡(luò)化教育代表了教育改革的一個(gè)發(fā)展方向,已經(jīng)成為現(xiàn)代教育的一個(gè)

3、特征,并對(duì)教育的發(fā)展形成新的推動(dòng)力。隨著Internet/Intranet的迅速發(fā)展和廣泛普及,建立在其上的遠(yuǎn)程教育成為現(xiàn)代教育技術(shù)未來發(fā)展方向之一,考試測(cè)試作為遠(yuǎn)程教育的一個(gè)子系統(tǒng)也成為一個(gè)重要的研究領(lǐng)域?,F(xiàn)代遠(yuǎn)程教育作為一種新的教學(xué)手段已經(jīng)開始進(jìn)入我們的生活,正在給傳統(tǒng)教育模式帶來新的變革,并對(duì)教育的發(fā)展形成新的推動(dòng)力。Internet技術(shù)的發(fā)展使得考試的技術(shù)手段和載體發(fā)生了革命性的變化,Internet的開放性、分布性的特點(diǎn)和基于Internet的巨大的計(jì)算能力使得考試突破了時(shí)間和空間的限制?;贗nternet的考試系統(tǒng)正成為人們的研究熱點(diǎn)之一。與傳統(tǒng)考試模式相比,網(wǎng)上考試具有無可比擬

4、的優(yōu)越性,它可以將傳統(tǒng)考試過程中的試卷組織、審定印制、傳送收集、登記發(fā)放、評(píng)判歸檔各個(gè)環(huán)節(jié)縮小到一至兩個(gè)環(huán)節(jié),幾乎屏蔽了所有人工直接干預(yù)考試活動(dòng)的可能性,不但能夠節(jié)約大量的時(shí)日、人力、物力與財(cái)力,而且還可以大幅度提高考試成績(jī)的客觀性和公正性。網(wǎng)上考試系統(tǒng)課題產(chǎn)生的背景是當(dāng)今教育信息化的趨勢(shì)及我國(guó)高校教育信息化系統(tǒng)的建設(shè);目的是充分利用學(xué)?,F(xiàn)有的計(jì)算機(jī)軟、硬件資源和網(wǎng)絡(luò)資源實(shí)現(xiàn)無紙化考試以避免傳統(tǒng)手工考試的不足。與傳統(tǒng)考試模式相比,網(wǎng)上考試滲入了更多的技術(shù)環(huán)節(jié),對(duì)實(shí)現(xiàn)安全性的途徑、方法也提出了更高的技術(shù)要求。通過Internet/Intranet來實(shí)現(xiàn)網(wǎng)上考試,是現(xiàn)代教育技術(shù)的一個(gè)具體實(shí)現(xiàn),具有

5、很重要的現(xiàn)實(shí)意義。可以實(shí)現(xiàn)教考分離以及考務(wù)工作的全自動(dòng)化管理,可以有效利用校園網(wǎng)的軟硬件資源,使其發(fā)揮最大效力,更好的為學(xué)校的教學(xué)、科研、管理服務(wù),可以大規(guī)模的實(shí)行考試,實(shí)現(xiàn)考試的客觀、公證性,自動(dòng)化組卷、閱卷可以減輕教師的工作強(qiáng)度。傳統(tǒng)考試要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、評(píng)改試卷、講評(píng)試卷和分析試卷。這是一個(gè)漫長(zhǎng)而復(fù)雜的過程,已經(jīng)越來越不適應(yīng)現(xiàn)代教學(xué)的需要。網(wǎng)絡(luò)考試系統(tǒng)是傳統(tǒng)考場(chǎng)的延伸,它可以利用網(wǎng)絡(luò)的無限廣闊空間,隨時(shí)隨地的對(duì)學(xué)生進(jìn)行考試,加上Web數(shù)據(jù)庫(kù)技術(shù)的利用,大大簡(jiǎn)化了傳統(tǒng)考試的過程。本文以Internet為平臺(tái),研究了基于Web考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),包括系統(tǒng)需求

6、分析和系統(tǒng)功能設(shè)計(jì)以及數(shù)據(jù)庫(kù)設(shè)計(jì)。重點(diǎn)闡述了用戶登錄模塊、題庫(kù)管理模塊和試卷管理模塊的設(shè)計(jì)。特別是在題庫(kù)管理模塊中對(duì)自動(dòng)組卷功能常用的算法(包括隨機(jī)選取法、回溯試探法和遺傳算法)進(jìn)行了比較。對(duì)于較流行的驗(yàn)證碼技術(shù)也給出了具體實(shí)現(xiàn)。2.基礎(chǔ)知識(shí)2.1動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)由于系統(tǒng)的操作界面都是Web頁(yè)面形式,而且需要對(duì)各種用戶的具體請(qǐng)求進(jìn)行動(dòng)態(tài)處理并返回結(jié)果,這是一般靜態(tài)Web頁(yè)面技術(shù)所無法實(shí)現(xiàn)的,所以采用動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)。目前動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)有很多,可以說是層出不窮,比如CGI、PHP、JSP、ASP、ASP.NET等。本設(shè)計(jì)采用ASP.NET技術(shù)。ASP.NET(又稱ASP+)是ASP的下一代版本,它并不只是

7、ASP 4.0,它是一個(gè)用于 Web開發(fā)的全新框架,其中包含了許多新的特性。ASP.NET完全基于模塊與組件,具有更好的可擴(kuò)展性與可定制性,數(shù)據(jù)處理方面更是引入了許多激動(dòng)人心的新技術(shù),正是這些具有革新意義的新特性,讓ASP.NET遠(yuǎn)遠(yuǎn)超越了ASP,同時(shí)也提供給Web開發(fā)人員更好的靈活性,有效縮短了Web應(yīng)用程序的開發(fā)周期。ASP.NET與Windows 2000 Server/Advanced Server的完美組合,為中小型乃至企業(yè)級(jí)的web商業(yè)模型提供了一個(gè)更為穩(wěn)定,高效,安全的運(yùn)行環(huán)境。2.2 數(shù)據(jù)庫(kù)技術(shù)由于本系統(tǒng)涉及到許多數(shù)據(jù)的處理,這就需要有一個(gè)強(qiáng)大的后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng)支持。目前主要

8、的數(shù)據(jù)庫(kù)有:Access、FoxPro、Excel、Sybase、Oracle、Informix、SQL Server等,其中網(wǎng)絡(luò)型的SQL Server、Oracle產(chǎn)品安全性遠(yuǎn)遠(yuǎn)高于桌面型的Access、FoxPro等數(shù)據(jù)庫(kù)。本系統(tǒng)采用的是微軟公司的SQL Server 2000。原因如下:第一,SQL Server與Windows 2000 Server服務(wù)器緊密集成,而Windows 2000 Server服務(wù)器具有很好的安全性,能夠排除所有未經(jīng)授權(quán)的非法用戶的訪問,確保了SQL Server 2000服務(wù)器的安全性,符合系統(tǒng)對(duì)安全性的要求;第二,用戶可以使用Web瀏覽器查詢存儲(chǔ)在SQ

9、L Server 2000數(shù)據(jù)庫(kù)中的數(shù)據(jù),符合系統(tǒng)遠(yuǎn)程訪問數(shù)據(jù)庫(kù)的要求。第三,容量龐大,每個(gè)數(shù)據(jù)庫(kù)中可創(chuàng)建多達(dá)20萬個(gè)數(shù)據(jù)表,數(shù)據(jù)表中的記錄的行數(shù)只受服務(wù)器硬盤空間的限制,符合系統(tǒng)的考題數(shù)目較多的要求。3.系統(tǒng)設(shè)計(jì)3.1 系統(tǒng)需求分析本系統(tǒng)的用戶可分為管理員,教師,學(xué)生和普通用戶四類。考慮到系統(tǒng)的安全性,本系統(tǒng)共分成兩個(gè)界面:一個(gè)界面用于管理員和教師登錄,主要負(fù)責(zé)進(jìn)行基本資料、新聞、題庫(kù)、試卷、成績(jī)的管理以及查詢等;另外一個(gè)界面用于考生和普通用戶登錄,主要負(fù)責(zé)修改個(gè)人資料、瀏覽考試新聞、在線考試、查詢以往考試成績(jī)等。從總體上考慮,系統(tǒng)應(yīng)該實(shí)現(xiàn)下列功能:對(duì)教師來說,包括試卷管理、題庫(kù)管理、成績(jī)管

10、理。1、試卷管理:教師可以從課程,難度級(jí)別,各種題型的數(shù)量等方面對(duì)某份試卷提出一定的要求生成試卷規(guī)則,在學(xué)生考試時(shí),由系統(tǒng)根據(jù)試卷規(guī)則自動(dòng)組卷生成滿足教師要求的試卷,而不用手工組卷。同時(shí),教師還可以對(duì)庫(kù)中已有的試卷進(jìn)行修改和刪除,添加新試卷等。2、題庫(kù)管理:教師可以根據(jù)教學(xué)需求對(duì)題庫(kù)中的試題進(jìn)行三種基本操作:添加新的考題、刪除舊有考題、修改原有考題,其中試題類型包括判斷題、填空題、單選題和多選題;對(duì)于每種類型的試題,教師可以設(shè)置題干、答案、試題難度系數(shù)、解析、添加時(shí)間等屬性。3、成績(jī)管理:教師可以查看考生的考試成績(jī),并針對(duì)不同的課程進(jìn)行成績(jī)統(tǒng)計(jì),包括考試人數(shù)、最高分、最低分、平均分以及各分?jǐn)?shù)段

11、得分人數(shù)等。對(duì)學(xué)生來說,包括在線考試、查詢以往考試成績(jī)、瀏覽考試新聞、留言等。1、在線考試:學(xué)生可以任選時(shí)間進(jìn)行在線測(cè)試,考試結(jié)束后,系統(tǒng)會(huì)根據(jù)已有的標(biāo)準(zhǔn)答案進(jìn)行在線判卷,考生可以立刻知道考試成績(jī)。2、查詢以往考試成績(jī):學(xué)生可以在線查詢以前參加過的每門課程的考試相關(guān)信息。3、瀏覽考試新聞:學(xué)生可以瀏覽最新發(fā)布的考試信息。4、留言板:學(xué)生提交對(duì)系統(tǒng)的留言信息。對(duì)管理員來說,主要包括管理基本資料(包括教師、學(xué)生、普通用戶資料的增、刪、改以及個(gè)人資料修改)、新聞管理(包括對(duì)新聞的發(fā)布、刪除、修改)、控制與分配用戶的訪問權(quán)限,保障系統(tǒng)的安全性,防止非法訪問。 3.2 系統(tǒng)功能模塊劃分3.2.1 前臺(tái)子

12、系統(tǒng)功能模塊劃分(圖3-1)網(wǎng)上考試系統(tǒng)前臺(tái)子系統(tǒng)修改個(gè)人信息瀏覽考試新聞在 線 考 試查詢考試成績(jī)退出考試系統(tǒng)圖3-1 前臺(tái)子系統(tǒng)功能模塊圖3.2.2 后臺(tái)子系統(tǒng)功能模塊劃分(圖3-2)網(wǎng)上考試系統(tǒng)后臺(tái)子系統(tǒng)資 料 管 理新 聞 管 理題 庫(kù) 管 理試 卷 管 理成 績(jī) 管 理退 出 系 統(tǒng)圖3-2 后臺(tái)子系統(tǒng)功能模塊圖3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)3.3.1 數(shù)據(jù)庫(kù)需求分析針對(duì)一般考試系統(tǒng)的需求,設(shè)計(jì)如下所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):l 管理員信息,包括的數(shù)據(jù)項(xiàng)有:管理員編號(hào)、用戶名、口令、主頁(yè)、網(wǎng)址、電子郵箱、QQ號(hào)、公告等。l 教師信息,包括的數(shù)據(jù)項(xiàng)有:教師編號(hào)、職工號(hào)、姓名、口令、性別、班級(jí)等。l 學(xué)

13、生信息,包括的數(shù)據(jù)項(xiàng)有:學(xué)生編號(hào)、學(xué)號(hào)、姓名、性別、班級(jí)、IP地址、注冊(cè)日期、考試登陸標(biāo)志、考試提交標(biāo)志等。l 普通用戶信息,包括的數(shù)據(jù)項(xiàng)有:用戶編號(hào)、用戶名、口令、電子郵箱、密碼提示問題、密碼提示答案、QQ號(hào)碼、真實(shí)姓名、性別、注冊(cè)日期、證件類型、證件號(hào)碼、家庭住址、電話號(hào)碼等。l 試卷信息,包括的數(shù)據(jù)項(xiàng)有:試卷編號(hào)、填空題分值、填空題數(shù)量、判斷題分值、判斷題數(shù)量、單選題分值、單選題數(shù)量、多選題分值、多選題數(shù)量、考試時(shí)間、試卷名稱等。l 成績(jī)信息,包括的數(shù)據(jù)項(xiàng)有:考試科目、考生學(xué)號(hào)、成績(jī)、考試時(shí)間、是否補(bǔ)考、補(bǔ)考成績(jī)、補(bǔ)考日期、結(jié)束時(shí)間等。l 判斷題信息,包括的數(shù)據(jù)項(xiàng)有:判斷題編號(hào)、題干、正

14、確答案、課程名稱、難度系數(shù)、添加日期、答案解析、狀態(tài)標(biāo)志等。l 填空題信息,包括的數(shù)據(jù)項(xiàng)有:填空題編號(hào)、題干、正確答案、課程名稱、難度系數(shù)、添加日期、答案解析、填空個(gè)數(shù)、答案是否有序、狀態(tài)標(biāo)志等。l 單選題信息,包括的數(shù)據(jù)項(xiàng)有:?jiǎn)芜x題編號(hào)、題干、正確答案、備選項(xiàng)(A、B、C、D)、課程名稱、難度系數(shù)、添加日期、答案解析、狀態(tài)標(biāo)志等。l 多選題信息,包括的數(shù)據(jù)項(xiàng)有:多選題編號(hào)、題干、正確答案、備選項(xiàng)(A、B、C、D)、課程名稱、難度系數(shù)、添加日期、答案解析、狀態(tài)標(biāo)志等。本系統(tǒng)應(yīng)該建立一個(gè)穩(wěn)定的后臺(tái)數(shù)據(jù)庫(kù)系統(tǒng),通過該數(shù)據(jù)庫(kù)管理整個(gè)考試系統(tǒng)所需的信息(用戶信息、試題信息、試卷信息、考試信息等)。 為

15、了從多方面來保障考生考試信息的安全性、可信性和考試成績(jī)的可依賴性,本系統(tǒng)還應(yīng)該建立一套機(jī)制,這套機(jī)制至少應(yīng)該包括學(xué)生和教師的賬號(hào)的安全機(jī)制、后臺(tái)數(shù)據(jù)庫(kù)的安全機(jī)制、考試過程的控制機(jī)制。3.3.2 數(shù)據(jù)庫(kù)物理設(shè)計(jì)對(duì)應(yīng)邏輯設(shè)計(jì)的數(shù)據(jù)庫(kù)名exam,設(shè)計(jì)數(shù)據(jù)庫(kù)的物理文件及相關(guān)屬性如下。l 主數(shù)據(jù)文件:exam.mdf。初始空間:1MB,若超出空間按10%自動(dòng)增長(zhǎng)。存放路徑:c:program filesMicrosoft SQL ServerMSSQLData。最大文件大?。翰皇芟蕖k`屬文件組:PRIMARY。l 日志文件:exam_log.ldf。初始空間:1MB,若超出空間按10%自動(dòng)增長(zhǎng)。存放路徑

16、:c:program filesMicrosoft SQL ServerMSSQLData。最大文件大?。翰皇芟蕖?.3.3 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì) 由于本系統(tǒng)是為網(wǎng)上考試系統(tǒng)而設(shè)計(jì)的,因此數(shù)據(jù)庫(kù)名稱定為exam。根據(jù)需求分析設(shè)計(jì)了如圖3-3所示的數(shù)據(jù)庫(kù)結(jié)構(gòu)。在名為exam的數(shù)據(jù)庫(kù)里包含用戶數(shù)據(jù)對(duì)象和系統(tǒng)數(shù)據(jù)對(duì)象兩大部分,其中系統(tǒng)數(shù)據(jù)對(duì)象由系統(tǒng)自動(dòng)產(chǎn)生,用戶數(shù)據(jù)對(duì)象是由設(shè)計(jì)人員根據(jù)需要設(shè)計(jì),具體的用戶數(shù)據(jù)表結(jié)構(gòu)參見附錄一。exam用戶數(shù)據(jù)對(duì)象系統(tǒng)數(shù)據(jù)對(duì)象admin_info表tk_pd表tk_tk表tk_single表stu_info表teach_info表tk_multi表paper_info表us

17、er_info表news表report表圖3-3 數(shù)據(jù)庫(kù)結(jié)構(gòu)圖3.4 系統(tǒng)結(jié)構(gòu)本系統(tǒng)分為后臺(tái)數(shù)據(jù)庫(kù)系統(tǒng)和前臺(tái)ASP.NET網(wǎng)站系統(tǒng)兩部分。后臺(tái)數(shù)據(jù)庫(kù)exam主要包括11個(gè)用戶數(shù)據(jù)表。l 存儲(chǔ)系統(tǒng)管理員信息的admin_info。l 存儲(chǔ)教師信息的teach_info。l 存儲(chǔ)學(xué)生信息的stu_info。l 存儲(chǔ)注冊(cè)用戶信息的user_info。l 存儲(chǔ)考試新聞信息的news。l 存儲(chǔ)試卷規(guī)則信息的paper。l 存儲(chǔ)考生成績(jī)信息的report。l 存儲(chǔ)判斷題信息的tk_pd。l 存儲(chǔ)填空題信息的tk_tk。l 存儲(chǔ)單選題信息的tk_single。l 存儲(chǔ)多選題信息的tk_multi。前臺(tái)ASP

18、.NET網(wǎng)站系統(tǒng)結(jié)構(gòu)包括:l Admin子目錄下存放與管理員界面相關(guān)的.net文件。l User子目錄下存放與考生界面相關(guān)的.net文件。l Data子目錄下存放數(shù)據(jù)文件:exam.mdfl CSS子目錄下存放層疊樣式表文件,規(guī)范網(wǎng)頁(yè)的總體風(fēng)格。l ASCX子目錄下存放網(wǎng)頁(yè)配件文件。l Images子目錄下存放系統(tǒng)使用的小插圖文件。4.系統(tǒng)主要功能模塊4.1 用戶登錄模塊4.1.1 流程分析該模塊包括user_login.aspx和user.aspx文件。如果用戶要使用為注冊(cè)用戶提供的功能,那么在使用之前必須登錄。用戶的登錄方式很簡(jiǎn)單,只要輸入用戶名、密碼以及系統(tǒng)每次提供的驗(yàn)證碼就可以了。若用

19、戶輸入的以上三項(xiàng)與數(shù)據(jù)庫(kù)中保存的相符,則表明用戶登錄成功,可以開放全部前臺(tái)子系統(tǒng);如果不符,則登錄失敗。模塊執(zhí)行流程如圖4-1所示。其中管理員、教師、學(xué)生登錄模塊執(zhí)行流程與用戶登錄模塊執(zhí)行流程類似 ,文件分別為:admin_login.aspx、 manage.aspx以及user_login.aspx、user.aspx。NoNoNoYesYesYesNoYes登錄信息錄入接收登錄信息用戶名、口令、驗(yàn)證碼為空?按照用戶名查詢提示用戶不存在更新登錄信息用戶已經(jīng)存在嗎?口令正確嗎?驗(yàn)證碼正確嗎?提示密碼錯(cuò)誤提示驗(yàn)證碼錯(cuò)誤圖4-1 用戶登錄模塊執(zhí)行流程4.1.2 文件設(shè)計(jì)user_login.as

20、px文件:按照下述內(nèi)容設(shè)計(jì)user_login.aspx文件。表單名:form1。表單執(zhí)行程序:user_login.aspx。表單數(shù)據(jù)傳輸方法:post。表單的要素如表4-1所示。表4-1 user_login.aspx表單設(shè)計(jì)表單要素說明表單要素名稱表單要素性質(zhì)用戶名Username3文本框密碼Password2文本框(密碼域)驗(yàn)證碼verifycode文本框提交按鈕Submit2按鈕(類型為submit)重置按鈕Reset2按鈕(類型為reset)設(shè)計(jì)的部分代碼如下: Sub Submit2_Click(Sender As Object, e As EventArgs) Dim SqlS

21、tr,ConStr As String SqlStr=select * from user_info where user_name=+username3.text+ ConStr=server=jsj-server;uid=sa;pwd=;database=shop Dim Da As New SqlDataAdapter(SqlStr,ConStr) Dim Ds As New DataSet() Da.Fill(Ds,基本信息) If Ds.Tables(基本信息).Rows.Count=0 Then Message.Text=這里沒有這個(gè)人! Exit Sub Else If Ds.T

22、ables(基本信息).Rows(0).Item(user_password)password2.Text Then Message.Text=密碼錯(cuò)誤!Exit Sub Else if verifycode.textcstr(viewstate(vnum) then Message.Text=驗(yàn)證碼錯(cuò)誤! Exit Sub Else session(user_id)=Ds.Tables(基本信息).Rows(0).Item(user_id) session(user_name)=Ds.Tables(基本信息).Rows(0).Item(user_name) session(user_phon

23、e)=Ds.Tables(基本信息).Rows(0).Item(user_phone) session(user_zjtype)=Ds.Tables(基本信息).Rows(0).Item(user_zjtype) response.redirect(user.aspx) End If End Sub 其中g(shù)if.aspx文件用于生成驗(yàn)證碼。下面給出gif.aspx的完整代碼:sub page_load(sender as object,e as eventargs) dim vnum as string=rndnum(4) rndnum是一個(gè)自定義函數(shù) session(vnum)=vnum v

24、alidatecode(vnum)end sub sub validatecode(vnum) 生成圖像驗(yàn)證碼函數(shù) dim img as system.drawing.bitmap dim g as graphics dim ms as memorystream dim gheight as integer=int(len(vnum)*11.5) img=new bitmap(gheight,20) gheight為圖片寬度,根據(jù)字符長(zhǎng)度自動(dòng)更改圖片寬度 g=graphics.fromimage(img) g.drawstring(vnum,(new font(arial,10),(new s

25、olidbrush(color.yellow),3,3)在矩形內(nèi)繪制字串(字串,字體,畫筆顏色,左上x.左上y) ms=new memorystream() img.save(ms,imageformat.png) response.clearcontent() response.contenttype=image/png需要輸出圖象信息 要修改http頭 response.binarywrite(ms.toarray() g.dispose() img.dispose() response.end()end sub rndnum函數(shù)功能:產(chǎn)生數(shù)字和字符混合的隨機(jī)字符串 function rn

26、dnum(vcodenum) 參數(shù):vcodenum-設(shè)定返回隨機(jī)字符串的位數(shù) dim vchar as string=0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,w,x,y,z dim vcarray() as string=split(vchar,) 將字符串生成數(shù)組 dim vnum as string= dim i as byte for i=1 to vcodenum randomize vnum=vnum & vcarray(int(35*rnd) 數(shù)組一般從0開始讀取,所以這里為35*rnd next

27、 return vnum end function接下來在user_login.aspx文件相應(yīng)位置加入如下代碼就可以使用圖像驗(yàn)證碼了。具體代碼為: ,之后在user_login.aspx文件中添加如下代碼:sub page_load(sender as object,e as eventargs) dim vnum as string=session(vnum) 從session取值 viewstate(vnum)=vnum 把數(shù)據(jù)存儲(chǔ)在viewstate中 end sub4.2 題庫(kù)管理模塊4.2.1 題庫(kù)管理功能模塊圖題庫(kù)管理包括判斷題管理、填空題管理、單選題管理和多選題管理。管理員可以

28、通過題庫(kù)管理對(duì)各種類型的試題進(jìn)行添加、刪除、修改以及查詢。題庫(kù)管理功能模塊圖如圖4-2所示,由于各種類型試題的管理功能均類似,這里僅以判斷題管理為例進(jìn)行介紹。判斷題管理模塊包括的操作有:添加判斷題、刪除判斷題、修改判斷題和查找判斷題,有關(guān)判斷題管理模塊操作的主要源代碼參見附錄二。刪除填空題修改填空題查找填空題題庫(kù)管理判斷題管理填空題管理單選題管理多選題管理添加填空題刪除單選題修改單選題查找單選題添加單選題刪除多選題修改多選題查找多選題添加多選題刪除判斷題修改判斷題查找判斷題添加判斷題圖4-2題庫(kù)管理功能模塊圖返回查找成功修改成功刪除成功添加成功pd_manage.aspxpd_add.aspx

29、pd_add_ok.aspxpd_del.aspxpd_del_ok.aspxpd_edit.aspxpd_edit_ok.aspx查找判斷題顯示判斷題圖4-3 判斷題管理頁(yè)面流程4.2.2 判斷題管理模塊頁(yè)面流程(圖4-3) 其他功能模塊均與題庫(kù)管理模塊類似,此處不再論述。4.2.3 自動(dòng)組卷自動(dòng)組卷是題庫(kù)管理模塊中最重要的環(huán)節(jié)之一。目前具有自動(dòng)組卷功能的考試系統(tǒng)一般采用隨機(jī)選取法、回溯試探法和遺傳算法。隨機(jī)選取法根據(jù)狀態(tài)空間的控制指標(biāo),由計(jì)算機(jī)隨機(jī)的抽取一道試題放入試題庫(kù),此過程不斷重復(fù),直到組卷完畢,或已無法從題庫(kù)中抽取滿足控制指標(biāo)的試題為止。該方法結(jié)構(gòu)簡(jiǎn)單,對(duì)于單道題的抽取運(yùn)行速度較快

30、,但是對(duì)于整個(gè)組卷過程來說組卷成功率低,即使組卷成功,花費(fèi)時(shí)間也令人難以忍受。尤其是當(dāng)題庫(kù)中各狀態(tài)類型平均出題量較低時(shí),組卷往往以失敗而告終?;厮菰囂椒ㄊ菍㈦S機(jī)選取法產(chǎn)生的每一狀態(tài)類型記錄下來,當(dāng)搜索失敗時(shí)釋放上次記錄的狀態(tài)類型,然后再依據(jù)一定的規(guī)律(正是這種規(guī)律破壞了選取試題的隨機(jī)性)變換一種新的狀態(tài)類型進(jìn)行試探,通過不斷的回溯試探直到試卷生成完畢或退回出發(fā)點(diǎn)為止,這種有條件的深度優(yōu)先算法,對(duì)于狀態(tài)類型和出題量都較少的題庫(kù)系統(tǒng)而言,組卷成功率較好,但是在實(shí)際應(yīng)用時(shí)發(fā)現(xiàn)這種算法對(duì)內(nèi)存的占用量很大,程序結(jié)構(gòu)相對(duì)比較復(fù)雜,而且選取試題缺乏隨機(jī)性,組卷時(shí)間長(zhǎng),后兩點(diǎn)是用戶無法接受的。遺傳算法(Gen

31、etic Algorithms)是一種并行的、能夠有效優(yōu)化的算法,以Morgan的基因理論及Eldridge 與Gould間斷平衡理論為依據(jù),同時(shí)融合了Mayr的邊緣物種形成理論和Bertalanffv一般系統(tǒng)理論的一些思想,模擬達(dá)爾文的自然界遺傳學(xué):繼承(基因遺傳)、進(jìn)化(基因突變)優(yōu)勝劣汰(優(yōu)的基因大量被遺傳復(fù)制,劣的基因較少被遺傳復(fù)制)。其實(shí)質(zhì)就是一種把自然界有機(jī)體的優(yōu)勝劣汰的自然選擇、適者生存的進(jìn)化機(jī)制與同一群體中個(gè)體與個(gè)體間的隨機(jī)信息交換機(jī)制相結(jié)合的搜索算法。運(yùn)用遺傳算法求解問題首先需將所要求解的問題表示成二進(jìn)制編碼,然后根據(jù)環(huán)境進(jìn)行基本的操作:selection,crossover

32、,mutation這樣進(jìn)行不斷的所謂“生存選擇”,最后收斂到一個(gè)最適應(yīng)環(huán)境條件的個(gè)體上,得到問題的最優(yōu)解。分析上述算法的優(yōu)缺點(diǎn),不難發(fā)現(xiàn),在限制條件狀態(tài)空間的控制下,隨機(jī)選取法有時(shí)能夠抽取出一組令用戶滿意的試題,只不過由于它隨機(jī)選取試題的范圍太大,無法確定目前條件下哪些區(qū)域能夠抽取合適的試題,反而可能在那些已經(jīng)證明是無法抽取合適試題的區(qū)域內(nèi)反復(fù)選題,進(jìn)行大量的無效操作進(jìn)入死循環(huán),最終導(dǎo)致組卷失敗?;厮菰囂椒ńM卷成功率高,但它是以犧牲大量的時(shí)間為代價(jià)的,對(duì)于現(xiàn)今越來越流行的考生網(wǎng)上隨機(jī)即時(shí)調(diào)題的考試過程來說,它已不符合要求。遺傳算法以其具有自適應(yīng)全局尋優(yōu)和智能搜索技術(shù),并且收斂性好的特性能很好的

33、滿足自動(dòng)考試組卷的要求。4.3 試卷管理模塊試 卷 管 理添 加 試 卷修 改 試 卷刪 除 試 卷查 找 試 卷瀏覽已有試卷圖5-10 試卷管理功能模塊圖4.3.1 試卷管理功能模塊圖4.3.2 設(shè)計(jì)思想及特點(diǎn)教師可以通過試卷管理模塊對(duì)每一門課程所對(duì)應(yīng)的試卷進(jìn)行詳細(xì)的設(shè)定。具體來說,教師可以從課程、難度級(jí)別、試題類型以及各種題型的數(shù)量等方面對(duì)某份試卷提出一定的要求生成試卷規(guī)則,在學(xué)生考試時(shí),系統(tǒng)根據(jù)考生選擇的考試科目,從數(shù)據(jù)庫(kù)中讀取試卷規(guī)則,由隨機(jī)抽題模塊根據(jù)相應(yīng)的試卷規(guī)則,從題庫(kù)中隨機(jī)抽出符合條件的試題自動(dòng)組卷生成滿足教師要求的試卷,而不用手工組卷,待考生交卷之后,系統(tǒng)根據(jù)題庫(kù)中存放的試題

34、的正確答案進(jìn)行在線判卷,之后將考試成績(jī)單發(fā)送給考生。同時(shí),教師還可以對(duì)庫(kù)中已有的試卷進(jìn)行修改、刪除以及添加新試卷等。試卷規(guī)則概念的提出,主要考慮如下:1.試卷規(guī)則便于統(tǒng)一進(jìn)行管理,老師可以隨時(shí)進(jìn)行修改、刪除和添加試卷。2.試卷規(guī)則記錄的只是試卷的基本信息,通過該信息可以隨意控制試卷難度級(jí)別、試題類型以及各種題型的數(shù)量。5.系統(tǒng)測(cè)試系統(tǒng)在投入使用之前必須進(jìn)行嚴(yán)格的測(cè)試,測(cè)試的內(nèi)容包括功能測(cè)試、性能測(cè)試、可用性測(cè)試、客戶端兼容性測(cè)試、安全測(cè)試等。測(cè)試完成后要上交測(cè)試報(bào)告,我們可以根據(jù)測(cè)試報(bào)告及時(shí)發(fā)現(xiàn)問題并提出解決方案,便于系統(tǒng)的維護(hù)與升級(jí)。經(jīng)過初步測(cè)試,系統(tǒng)在服務(wù)器端和客戶端均能正常運(yùn)行,對(duì)于不同

35、顯示分辨率下網(wǎng)頁(yè)也能夠正常顯示而且網(wǎng)頁(yè)的鏈接基本正確。但由于系統(tǒng)對(duì)操作人員錄入的錯(cuò)誤數(shù)據(jù)和數(shù)據(jù)本身的錯(cuò)誤所造成數(shù)據(jù)的不完整性,系統(tǒng)的約束力較弱,應(yīng)加強(qiáng)數(shù)據(jù)的完整性約束提高系統(tǒng)數(shù)據(jù)的正確性和相容性,以及系統(tǒng)的容錯(cuò)性,加強(qiáng)對(duì)用戶輸入端的數(shù)據(jù)進(jìn)行檢驗(yàn)。6.總結(jié)本文詳細(xì)論述了網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),該系統(tǒng)基本實(shí)現(xiàn)了需求分析中的功能要求,其中考生信息主要由數(shù)據(jù)庫(kù)直接輸入,考生成功登錄后進(jìn)入考生界面,考生界面主要由考試、成績(jī)查詢、考試新聞、修改個(gè)人資料、留言版組成,考試時(shí)考生輸入準(zhǔn)考證號(hào)碼、考生姓名、驗(yàn)證碼,核對(duì)正確后進(jìn)入考場(chǎng),關(guān)鍵實(shí)現(xiàn)了考生在選擇科目后由系統(tǒng)隨機(jī)抽題、自動(dòng)組卷后進(jìn)入考試頁(yè)面,考試計(jì)時(shí),

36、考試時(shí)間到,系統(tǒng)強(qiáng)制考生退出,及考完后對(duì)客觀題的自動(dòng)評(píng)分、存檔。管理員進(jìn)入管理員界面,管理員界面主要由基本資料管理、新聞管理、題庫(kù)管理、試卷管理、成績(jī)管理以及查詢等模塊組成。由于時(shí)間和技術(shù)水平的緣故,本系統(tǒng)還存在著許多方面的工作尚未完善。系統(tǒng)對(duì)操作人員錄入的錯(cuò)誤數(shù)據(jù)和數(shù)據(jù)本身的錯(cuò)誤所造成數(shù)據(jù)的不完整性,系統(tǒng)的約束力較弱,在系統(tǒng)的更進(jìn)一步的實(shí)現(xiàn)階段,應(yīng)加強(qiáng)數(shù)據(jù)的完整性約束提高系統(tǒng)數(shù)據(jù)的正確性和相容性,以及系統(tǒng)的容錯(cuò)性,加強(qiáng)對(duì)用戶輸入端的數(shù)據(jù)進(jìn)行檢驗(yàn)。另外,本系統(tǒng)只提供了一些基本的統(tǒng)計(jì)與分析功能,如平均分、方差、等級(jí)量表等。這些指標(biāo)還不能揭求教學(xué)過程的全貌,還需要進(jìn)一步地引入新的測(cè)量指標(biāo),并詳細(xì)闡

37、述它在教育中所代表的含義,如知識(shí)點(diǎn)的掌握度、頻數(shù)分布圖、學(xué)生把應(yīng)曲線等等,為了給沒有沒有教育測(cè)量背景的教師和學(xué)生參考,還將制作測(cè)量指標(biāo)的應(yīng)用案例,說明如何在實(shí)際教學(xué)過程中應(yīng)用這些指標(biāo)。參考文獻(xiàn):1 孟軍 精通ASP.NET網(wǎng)絡(luò)編成人民郵電出版社,2002 2 楊帆 ASP.NET技術(shù)與應(yīng)用高等教育出版社,20043 朱歸良 基于Web模式的網(wǎng)絡(luò)考試系統(tǒng)安全性研究(計(jì)算機(jī)工程與應(yīng)用2002年3月)4 趙克立 ASP.NET變成培訓(xùn)教程 清華大學(xué)出版社,20025 趙松濤 中文版SQL Server 2000應(yīng)用及實(shí)例集錦人民郵電出版社,2002附錄一用戶數(shù)據(jù)表結(jié)構(gòu)(1)管理員表:admin_in

38、fo 數(shù)據(jù)表結(jié)構(gòu)如表3-1所示 表 3-1 admin_info 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義admin_idint整型ID,自動(dòng)編號(hào)admin_namevarchar字符型用戶名admin_passwordvarchar字符型口令homepagevarchar字符型主頁(yè)urlvarchar字符型網(wǎng)址emailvarchar字符型電子郵箱qqvarchar字符型QQ號(hào)碼ggvarchar字符型公告(2)教師表:teach_info 數(shù)據(jù)表結(jié)構(gòu)如表3-2所示 表 3-2 teach_info 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義idint整型ID,自動(dòng)編號(hào)teach_numvar

39、char字符型職工號(hào)teach_namevarchar字符型姓名teach_passwordvarchar字符型口令teach_sexvarchar字符型性別teach_classvarchar字符型班級(jí)(3)學(xué)生表:stu_info 數(shù)據(jù)表結(jié)構(gòu)如表3-3所示 表 3-3 stu_info 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義stu_idint整型ID,自動(dòng)編號(hào)stu_numvarchar字符型學(xué)號(hào)stu _namevarchar字符型姓名stu_sexvarchar字符型性別stu_classvarchar字符型班級(jí)stu_ipaddvarchar字符型IP地址reg_datedatet

40、ime日期時(shí)間型注冊(cè)日期stu_loginvarchar字符型考試登陸標(biāo)志,1有效stu_submitvarchar字符型考試提交標(biāo)志,1有效(4)用戶表:user_info 數(shù)據(jù)表結(jié)構(gòu)如表3-4所示 表 3-4 user_info 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義user_idint整型ID,自動(dòng)編號(hào)user _namevarchar字符型用戶名user _passwordvarchar字符型口令user_emailvarchar字符型電子郵箱user_questionvarchar字符型密碼提示問題user_answervarchar字符型密碼提示答案user_qqvarchar字

41、符型QQ號(hào)碼user_realnamevarchar字符型真實(shí)姓名user_sexvarchar字符型性別user_datedatetime日期時(shí)間型注冊(cè)日期user_zjtypevarchar字符型證件類型user_addressvarchar字符型家庭住址user_phonevarchar字符型電話號(hào)碼user_codevarchar字符型證件號(hào)碼(5)試卷規(guī)則表:paper_info 數(shù)據(jù)表結(jié)構(gòu)如表3-5所示 表 3-5 paper_info 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義idint整型ID,自動(dòng)編號(hào)tkpervarchar字符型填空題分值tknumbervarchar字符型填

42、空題數(shù)量judgepervarchar字符型判斷題分值judgenumbervarchar字符型判斷題數(shù)量singlepervarchar字符型單選題分值singlenumbervarchar字符型單選題數(shù)量multipervarchar字符型多選題分值multinumbervarchar字符型多選題數(shù)量testtimevarchar字符型考試時(shí)間subjectnamevarchar字符型試卷名稱(6)成績(jī)表:report 數(shù)據(jù)表結(jié)構(gòu)如表3-6所示 表 3-6 report 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義idint整型ID,自動(dòng)編號(hào)subject_idvarchar字符型考試科目st

43、u_idvarchar字符型考生學(xué)號(hào)scorevarchar字符型成績(jī)testtimedatetime日期時(shí)間型考試時(shí)間是否補(bǔ)考varchar字符型補(bǔ)考成績(jī)varchar字符型補(bǔ)考日期datetime日期時(shí)間型endtimedatetime日期時(shí)間型結(jié)束時(shí)間(7)判斷題表:tk_pd 數(shù)據(jù)表結(jié)構(gòu)如表3-7所示 表 3-7 tk_pd 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義idint整型ID,自動(dòng)編號(hào)questionvarchar字符型題干tkeyvarchar字符型正確答案sectionvarchar字符型課程名稱difvarchar字符型難度系數(shù):1-3addtimedatetime日期時(shí)

44、間型添加日期helpvarchar字符型解析statusvarchar字符型狀態(tài)標(biāo)志:1-可用,0-禁用(8)填空題表:tk_tk 數(shù)據(jù)表結(jié)構(gòu)如表3-8所示 表 3-8 tk_tk 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義idint整型ID,自動(dòng)編號(hào)questionvarchar字符型題干tkeyvarchar字符型答案,多個(gè)答案之間用”;”隔開sectionvarchar字符型課程名稱difvarchar字符型難度系數(shù):1-3addtimedatetime日期時(shí)間型添加日期helpvarchar字符型解析tknumvarchar字符型填空個(gè)數(shù)isordervarchar字符型答案是否有序st

45、atusvarchar字符型狀態(tài)標(biāo)志:1-可用,0-禁用(9)單選題表:tk_single 數(shù)據(jù)表結(jié)構(gòu)如表3-9所示 表 3-9 tk_single 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義idint整型ID,自動(dòng)編號(hào)questionvarchar字符型題干tkeyvarchar字符型正確答案sectionvarchar字符型課程名稱difvarchar字符型難度系數(shù):1-3addtimedatetime日期時(shí)間型添加日期helpvarchar字符型解析Avarchar字符型備選項(xiàng)Bvarchar字符型備選項(xiàng)Cvarchar字符型備選項(xiàng)Dvarchar字符型備選項(xiàng)statusvarchar字符

46、型狀態(tài)標(biāo)志:1-可用,0-禁用(10)多選題表:tk_multi 數(shù)據(jù)表結(jié)構(gòu)如表3-10所示 表 3-10 tk_multi 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義idint整型ID,自動(dòng)編號(hào)questionvarchar字符型題干tkeyvarchar字符型答案,多個(gè)答案之間用”;”隔開sectionvarchar字符型課程名稱difvarchar字符型難度系數(shù):1-3addtimedatetime日期時(shí)間型添加日期helpvarchar字符型解析Avarchar字符型備選項(xiàng)Bvarchar字符型備選項(xiàng)Cvarchar字符型備選項(xiàng)Dvarchar字符型備選項(xiàng)statusvarchar字符型

47、狀態(tài)標(biāo)志:1-可用,0-禁用(11)新聞表:news 數(shù)據(jù)表結(jié)構(gòu)如表3-11所示 表 3-11 news 數(shù)據(jù)表結(jié)構(gòu)字段名字段類型類型說明字段含義news_idint整型ID,自動(dòng)編號(hào)news _titlevarchar字符型新聞標(biāo)題news _contentvarchar字符型新聞內(nèi)容news _imgvarchar字符型新聞圖片路徑news _hitsvarchar字符型點(diǎn)擊次數(shù)news _fromvarchar字符型摘自news _date datetime日期時(shí)間型添加日期附錄二判斷題管理模塊的主要源代碼1添加操作的關(guān)鍵代碼 Sub Submit_Click(Sender As Object, e As EventArgs) Dim now As DateTime=DateTime.Now Dim SqlStr,ConStr As String SqlStr=Insert into tk_pd(question,tkey,help,section,dif,addtime) values(+question.text+,+answer.value+,+help.text+,+section.te

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論