【正文】
:376912651 河南師范大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 1 1 緒 論 選題背景 網(wǎng)絡(luò)化教育代表了教育改革的一個(gè)發(fā)展方向,已經(jīng)成為現(xiàn)代教育的一個(gè)特征,并對(duì)教育發(fā)展形成新的推動(dòng)力。隨著 Inter/Intra 技術(shù) 迅速發(fā)展和廣泛普及,建立在其上的遠(yuǎn)程教育成為現(xiàn)代教育技術(shù)未來(lái)發(fā)展方向之一,在線測(cè)試作為遠(yuǎn)程教育的一個(gè)子系統(tǒng)也成為一個(gè)重要的研究領(lǐng)域?,F(xiàn)代遠(yuǎn)程教育作為一種新的教學(xué)手段已經(jīng)開(kāi)始進(jìn)入我們的生活,正在給傳統(tǒng)教育模式帶來(lái)新的變革。 Inter 技術(shù)的發(fā)展使得考試的技術(shù)手段和載體發(fā)生了革命性的變化, Inter 的開(kāi)放性、分布性特點(diǎn)和基于 Inter 的巨大的計(jì)算能力使得考試突破了時(shí)間和空間的限制?;?Inter 的考試系統(tǒng)正成為人們的研究熱點(diǎn)之一,與傳統(tǒng)考試模式相比,網(wǎng)上考試具有無(wú)可比擬的優(yōu)越性,它可以將傳統(tǒng)考試過(guò)程中試卷組織、審定印制、傳送收集、登記發(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)無(wú)紙化考試以避免傳統(tǒng)手工考試的不足。與傳統(tǒng)考試模式相比,網(wǎng)上考試滲入了更多的技術(shù)環(huán)節(jié),對(duì)實(shí)現(xiàn)安全性的途徑、方法也提出了更高的技術(shù)要求。通過(guò) Inter/Intra 來(lái)實(shí)現(xiàn)網(wǎng)上考試,是現(xiàn)代教育技術(shù)的一個(gè)具體實(shí)現(xiàn),具有很重要的現(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ù)雜的過(guò)程,已經(jīng)越來(lái)越不適應(yīng)現(xiàn)代教學(xué)的需要。網(wǎng)絡(luò)考試系統(tǒng)是傳統(tǒng)考場(chǎng)的延伸,它可以利用網(wǎng)絡(luò)的無(wú)限廣闊空間,隨時(shí)隨地的對(duì)學(xué)生進(jìn)行考試,加上 Web數(shù)據(jù)庫(kù)技術(shù)的利用,大大簡(jiǎn)化了傳統(tǒng)考試的過(guò)程。 本文以 Inter 為平臺(tái),研究了基于 Web 考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),包括系統(tǒng)需求分析和系統(tǒng)功能設(shè)計(jì)以及數(shù)據(jù)庫(kù)設(shè)計(jì)。重點(diǎn)闡述了用戶管理模塊、用戶權(quán)限管理模塊、題庫(kù)管理模塊、試卷管理模塊、信息發(fā)布管理模塊、用戶操作日志記錄模塊和專家答疑模塊的設(shè)計(jì)。特別是在題庫(kù)管理模塊 中對(duì)自動(dòng)組卷功能常用的算法 (包括隨機(jī)選取 :376912651 河南師范大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 2 法、回溯試探法和遺傳算法 )進(jìn)行了比較。對(duì)于較流行的存儲(chǔ)加密、防 SQL 注入過(guò)濾、模糊檢索、驗(yàn)證碼技術(shù)也給出了具體實(shí)現(xiàn)。 國(guó)內(nèi)外網(wǎng)上考試系統(tǒng)現(xiàn)狀與發(fā)展趨勢(shì) 隨著計(jì)算機(jī)應(yīng)用的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷擴(kuò)大,現(xiàn)在很多國(guó)外的大學(xué)和社會(huì)其他部門都已經(jīng)開(kāi)設(shè)了遠(yuǎn)程教育,通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)異地教育和培訓(xùn),且這些應(yīng)用正逐步深入到千家萬(wàn)戶。人們迫切要求利用這些技術(shù)來(lái)進(jìn)行網(wǎng)上在線考試,以減輕教師的工作負(fù)擔(dān)及提高工作效率,與此同時(shí)也提高了考試的質(zhì)量,從而使考試更趨于公證、客觀,更加激發(fā)學(xué)生的 學(xué)習(xí)興趣。 例如目前許多國(guó)際著名的計(jì)算機(jī)公司所舉辦的各種認(rèn)證考試絕大部分采用這種方式。在英國(guó),已經(jīng)實(shí)現(xiàn)了英語(yǔ)資格考試的網(wǎng)上學(xué)習(xí)和水平認(rèn)證全過(guò)程。 遠(yuǎn)程教育包括很多環(huán)節(jié),例如教學(xué)系統(tǒng)、答疑系統(tǒng)和考試系統(tǒng)等等。其中很重要的一個(gè)環(huán)節(jié)就是網(wǎng)上考試系統(tǒng),同時(shí)它也是最難實(shí)現(xiàn)的環(huán)節(jié)。 在我國(guó),雖然遠(yuǎn)程教育已經(jīng)蓬勃地發(fā)展起來(lái),但是目前學(xué)校與社會(huì)上的各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過(guò)五個(gè)步驟,即人工出題、考生考試、人工閱卷、成績(jī)?cè)u(píng)估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高, 教師的工作量將會(huì)越來(lái)越大,并且其工作將是一件十分煩瑣和非常容易出錯(cuò)的事情,可以說(shuō)傳統(tǒng)的考試方式已經(jīng)不能適應(yīng)現(xiàn)代考試的需要。 網(wǎng)上考試系統(tǒng)是建立在國(guó)際互聯(lián)網(wǎng)上的應(yīng)用系統(tǒng),客戶端的配置可以是極為簡(jiǎn)單,使考試不受地域的局限。 本系統(tǒng) 設(shè)計(jì)路線 目前,網(wǎng)絡(luò)應(yīng)用軟件的模式主要有二類: Client/Server 模式, Browser/Web Server模式。前者主要的缺點(diǎn)是維護(hù)、升級(jí)較麻煩,后者是近幾年伴隨 Inter 迅速發(fā)展起來(lái)的一種技術(shù),它與客戶機(jī) /服務(wù)器方式類似,客戶端是一個(gè)標(biāo)準(zhǔn)的瀏覽器,服務(wù)器端是 Web Server,而 Web Server 與數(shù)據(jù)庫(kù)和應(yīng)用服務(wù)器的緊密結(jié)合,使得這種模式的應(yīng)用范圍不斷擴(kuò)大,它已不僅僅用于網(wǎng)上查詢,有很多部門的業(yè)務(wù)系統(tǒng)、企業(yè)的 MIS 系統(tǒng)紛紛采用這種模式,它的主要優(yōu)點(diǎn)是便于擴(kuò)充應(yīng)用、升級(jí)維護(hù)更簡(jiǎn)便。 利用網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)技術(shù),結(jié)合目前硬件價(jià)格普遍下跌與寬帶網(wǎng)大力建設(shè)的有利優(yōu)勢(shì),應(yīng)用 ASP(Active Server Page)技術(shù),開(kāi)發(fā)了基于 Web 的 B/S 模式的網(wǎng)絡(luò)考試系統(tǒng)。它運(yùn)用方便、操作簡(jiǎn)單,效率很高?,F(xiàn)階段雖只實(shí)現(xiàn)了試卷的客觀題部分,但已具有多用戶同時(shí)在線考試、動(dòng)態(tài)隨機(jī)出題、時(shí) 間控制、自動(dòng)閱卷,試題管理、修改試題庫(kù)、 :376912651 河南師范大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 3 用戶管理、章節(jié)管理、用戶權(quán)限管理、用戶日志管理等重要功能,也就是說(shuō)實(shí)現(xiàn)了真正的無(wú)紙化考試,滿足任何授權(quán)的考生隨時(shí)隨地考試并迅速獲得成績(jī),同時(shí)也大大減輕了教師出題和閱卷等繁重的工作量。 基于上述考慮,整個(gè)考試系統(tǒng)采用 Browser/Web Server 的二層體系結(jié)構(gòu)比較合適,服務(wù)器端采用 Microsoft SQL Server數(shù)據(jù)庫(kù)系統(tǒng)和 ASP 組件來(lái)構(gòu)成考試的應(yīng)用服務(wù)系統(tǒng);客戶端采用瀏覽器來(lái)完成考試全過(guò)程,同時(shí)可進(jìn)行遠(yuǎn)程系統(tǒng)維護(hù)和管理。 Web 服務(wù)器接受請(qǐng)求,通過(guò)應(yīng)用程序 服務(wù)器執(zhí)行一個(gè) ASP程序,從而實(shí)現(xiàn)與客戶機(jī)進(jìn)行信息資源的交互。數(shù)據(jù)庫(kù)服務(wù)器用來(lái)存儲(chǔ)管理信息系統(tǒng)中所用到的各種數(shù)據(jù)。系統(tǒng)的客戶端只需要一個(gè)瀏覽器即可。相關(guān)人員通過(guò)瀏覽器來(lái)增加、修改、刪除數(shù)據(jù),對(duì)信息進(jìn)行管理。 :376912651 河南師范大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 4 2 系統(tǒng)實(shí)現(xiàn) 關(guān)鍵技術(shù) 本網(wǎng)上 考試系統(tǒng)設(shè)計(jì)遵循軟件工程的基本原則,經(jīng)過(guò)可行性分析、需求分析、數(shù)據(jù)庫(kù)分析與設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、系統(tǒng)測(cè)試等幾個(gè)階段。系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)包括 Web 技術(shù)、 ASP技術(shù)、數(shù)據(jù)庫(kù)技術(shù) 、頁(yè)面布局顯示技術(shù) ,以及試卷的生成與評(píng)估的算法等。下面對(duì)涉及的技術(shù)和相關(guān)理論作一個(gè)概述。 Web 技術(shù) Web 技術(shù)的迅猛發(fā)展,使全人類都能共享 Web 上的各類資源,包括功能強(qiáng)大的計(jì)算資源、海量信息的數(shù)據(jù)庫(kù)資源、五花八門的多媒體信息資源、門類齊全的軟件工具資源等,這些使得任何人能在任何時(shí)間、任何地點(diǎn)和任何設(shè)備上獲得所需要的信息資源和服務(wù)。 Web 技術(shù)為 Inter 的普及與推廣起到關(guān)鍵性的作用,例如在遠(yuǎn)程教育、電子商務(wù)、電子政務(wù)、辦公自動(dòng)化、掌上電腦、信息家電、嵌入式系統(tǒng)等方面的應(yīng)用,幾乎無(wú)所不在。 Web 是一個(gè)無(wú)集中控制、無(wú)統(tǒng)一結(jié)構(gòu)、無(wú)完整性約束、無(wú)事務(wù)管理、無(wú)標(biāo)準(zhǔn)查詢語(yǔ)言和數(shù)據(jù)模型、可無(wú)限擴(kuò)充的一個(gè)松散的分布 式信息系統(tǒng)。 Web是在 TCP/IP、 Mime、Hypertext 等技術(shù)之上發(fā)展起來(lái)的,并在此基礎(chǔ)之上,開(kāi)發(fā)了 HTTP、 HTML、 URL 等技術(shù),但其核心是 HTTP。 從本質(zhì)上講是各種技術(shù)的集成與綜合應(yīng)用,它以 TCP/IP 協(xié)議為基礎(chǔ),使用 HTML描述網(wǎng)絡(luò)的資源,通過(guò)超文本 (Hypertext)、超媒體 (Hypermedia)技術(shù)實(shí)現(xiàn)超級(jí)鏈接,無(wú)論文本、圖形,還是動(dòng)畫、聲音都能通過(guò)文擋中的鏈接連接到服務(wù)器上的其它文檔或其它站點(diǎn),使客戶以用交互方式快速地搜索所需要的資料,通過(guò)表單供用戶填寫并通過(guò)服務(wù)器應(yīng)用程序提交給 數(shù)據(jù)庫(kù)等。 ASP 技術(shù)簡(jiǎn)介 隨著計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展, Inter/Intra 應(yīng)用在全球范圍內(nèi)日益普及,在眾多的網(wǎng)絡(luò)服務(wù)中, Web 給人耳目一新的感覺(jué),而在這其中, ASP 技術(shù)則因?yàn)榭梢赃M(jìn)行復(fù)雜的數(shù)據(jù)庫(kù)操作、很強(qiáng)的交互性以及方便用戶控制管理且簡(jiǎn)便易學(xué)而備受青睞,成為當(dāng)前相當(dāng)熱門的網(wǎng)絡(luò)開(kāi)發(fā)技術(shù)。 ASP 程序工作在 Web 服務(wù)端,瀏覽器向服務(wù)器發(fā)出一個(gè) HTTP 請(qǐng)求,請(qǐng)求一個(gè) .asp文件, Web 服務(wù)器響應(yīng)該請(qǐng)求并調(diào)用 ASP 引擎執(zhí)行該文件,當(dāng)遇到任何與 Active 腳本兼容的腳本 (如 VBScript 、 JavaScript)時(shí) ASP 引擎調(diào)用相應(yīng)的腳本引擎解釋執(zhí)行其中的腳本命令,若腳本中含有訪問(wèn)數(shù)據(jù)庫(kù)的請(qǐng)求,則通過(guò) ODBC 連結(jié)后臺(tái)數(shù)據(jù)庫(kù),由 :376912651 河南師范大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 5 數(shù)據(jù)庫(kù)訪問(wèn)組件 ADO(Active Data Object)執(zhí)行訪庫(kù)操作,最后, ASP 依據(jù)訪 數(shù)據(jù) 庫(kù)的結(jié)果集自動(dòng)生成標(biāo)準(zhǔn)的 HTML 頁(yè)面發(fā)送到客戶瀏覽器。此過(guò)程如圖 2?1 所示: 圖 2?1 客戶訪問(wèn)數(shù)據(jù)過(guò)程圖 ASP是服務(wù)器端腳本編程環(huán)境。使用 ASP可以交互 HTML頁(yè)、腳本命令和 ActiveX組件組合起來(lái),創(chuàng)建動(dòng)態(tài)的、交互的 Web 網(wǎng)頁(yè)和基于 Web 的功能強(qiáng)大的應(yīng)用程 序。 ASP(Active Server Pages )是微軟公司推出的一種用以取代 CGI(Common Gateway Interface)的技術(shù)。簡(jiǎn)單講, ASP 是位于服務(wù)器端的腳本運(yùn)行環(huán)境,通過(guò)這種環(huán)境,用戶可以 創(chuàng)建和運(yùn)行動(dòng)態(tài)的、交互式的 Web 應(yīng)用程序,如交互式的動(dòng)態(tài)網(wǎng)頁(yè),包括使用html表單收集和處理信息、上傳與下載文件等。 ASP 工作原理如圖 2?2 所示 : 圖 2?2 Active Server Pages 工作原理圖 ASP 內(nèi)含于 IIS(Microsoft Inter Information Server) 和 之中。有了 ASP 就不必?fù)?dān)心客戶瀏覽器是否能運(yùn)行你所編寫的代碼,因?yàn)樗械某绦蚨紝⒃诜?wù)器執(zhí)行,包括所有嵌在普通 html中的腳本程序。當(dāng)程序執(zhí)行完畢后,服務(wù)器僅將執(zhí)行的結(jié)果返回客戶瀏覽器,這樣就減輕了客戶瀏覽器的負(fù)擔(dān),大大提高了信息交互速度。 從字面上說(shuō), ASP 包含下面 3 方面的含義: Active、 Server、 Pages。 作為 IIS 環(huán)境下開(kāi)發(fā) WEB 應(yīng)用的一種簡(jiǎn)單、方便的編程工具, ASP具有如下特點(diǎn): (1)使用 VBScript JavaScript 等簡(jiǎn)單易懂的腳本語(yǔ)言,結(jié) 合 html 代碼,可快速完成網(wǎng)站應(yīng)用程序的開(kāi)發(fā); (2)容易編寫,無(wú)須編譯,可在服務(wù)器直接執(zhí)行; (3)使用普通的文本編輯器,如 windows 的記事本,即可進(jìn)行編輯; (4)與瀏覽器無(wú)關(guān),只要客戶端瀏覽器能夠執(zhí)行 html 代碼,就可以瀏覽 ASP 設(shè)計(jì)的網(wǎng)頁(yè)內(nèi)容。 ASP 所使用的腳本語(yǔ)言均在 WEB 服務(wù)器執(zhí)行,客戶端的瀏覽器不執(zhí)行這些腳本語(yǔ)言; 瀏 覽 器 WEB服務(wù)器 Active Server Pages Web服務(wù)器 客戶端瀏覽器 ASP ADO訪問(wèn) ODBC 數(shù)據(jù)庫(kù) HTTP :376912651 河南師范大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 6 (5)ASP 需要能夠能與任何 ActiveX Scripting 語(yǔ)言相兼容,除了可以使用 VBScript 或 JavaScript 腳本語(yǔ)言來(lái)設(shè)計(jì)外,還可以通過(guò) plugin的方式, 使用由第三方所提供的其他腳本語(yǔ)言,例如 rexx、 perl 、 tcl等,腳本 引擎是處理腳本程序的 COM 組件; (6)ASP 的源程序不會(huì)被傳到客戶瀏覽器,因而可以避免源程序被剽竊,提高了程序的安全性; (7)可使用服務(wù)器端的腳本來(lái)產(chǎn)生客戶端的腳本; Actives 服務(wù)器組件具有無(wú)限可擴(kuò)充性,可以使用 Visual Basic、 Java、 Visual C++、 Cobol等編程語(yǔ)言來(lái)編寫所需的 Actives服務(wù)器組件。 數(shù)據(jù)庫(kù)技術(shù)簡(jiǎn)介 由于本系統(tǒng)涉及到許多數(shù)據(jù)的處理,這就需要有一個(gè)強(qiáng)大的后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng)支持 。目前主要的數(shù)據(jù)庫(kù)有: Access、 DB FoxPro、 Informix、 Oracle、 Sybase、 SQL Server、達(dá)夢(mèng)、虛谷等,其中網(wǎng)絡(luò)型的 SQL Server、 Oracle 產(chǎn)品安全性遠(yuǎn)遠(yuǎn)高于桌面型的 Access、 FoxPro等數(shù)據(jù)庫(kù)。 本系統(tǒng)采用的是微軟公司的 SQL Server 2020。原因如下:第一, SQL Server 與Windows 2020 Server 服務(wù)器緊密集成,而 Windows 2020 Server 服務(wù)器具有很好的安全性,能夠排除所有未經(jīng)授權(quán)的非法用戶的訪問(wèn),確保了 SQL Server 2020服務(wù)器的安全性,符合系統(tǒng)對(duì)安全性的要求;第二,用戶可以使用 Web 瀏覽器查詢存儲(chǔ)在 SQL Server 2020 數(shù)據(jù)庫(kù)中的數(shù)據(jù),符合系統(tǒng)遠(yuǎn)程訪問(wèn)數(shù)據(jù)庫(kù)的要求。第三,容量龐大,每個(gè)數(shù)據(jù)庫(kù)中可創(chuàng)建多達(dá) 20萬(wàn)個(gè)數(shù)據(jù)表,數(shù)據(jù)表中的記錄的行數(shù)只受服務(wù)器硬盤空間的限制,符合系統(tǒng)的考題數(shù)目較多的要求。 ASP 訪問(wèn) Web 數(shù)據(jù)庫(kù) 原理 ASP 是一個(gè)服務(wù)器的腳本環(huán)境,內(nèi)嵌在 HTML 頁(yè)面中的腳本程序在這里運(yùn)行并建立 Web 服務(wù)器應(yīng)用程序。在 ASP 腳本中可以通過(guò)三種方式訪問(wèn)數(shù)據(jù)