版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 畢 業(yè) 設 計 (論 文)</p><p> 信息工程學院 系(院) 軟件技術 專業(yè)</p><p> 畢業(yè)論文題目 在線考試系統(tǒng) </p><p><b> 摘 要</b></p><p> 隨著網絡技術的日益成熟,網絡已經深入到生活的每一個角落,包括教育、購物
2、、咨詢、辦公等等許多領域。在網絡迅速發(fā)展的今天,網頁技術的應用也越來越廣泛。網頁技術的應用對于教育行業(yè)來說優(yōu)勢更加的明顯。教育行業(yè)可以通過網絡進行學生和教職工的管理、組織學生在線考試、在網站上發(fā)布學校相關信息等活動。這樣不僅能增加學校管理的透明度,還提高了學校的管理水平。在線考試還能充分的利用學校的現(xiàn)有資源,大大減輕教師的工作量,把老師從出卷、閱卷等一些繁重中做中解脫出來。 本文重點論述了由于網絡的存在擴大了學校的服務范圍,為
3、學校的管理提供了更多的條件。對此做出了詳細的調查,可行性研究和分析。系統(tǒng)采用了B/S結構,在網絡上建立學校自己的教育網站。系統(tǒng)開發(fā)經歷了系統(tǒng)分析、系統(tǒng)設計和系統(tǒng)實施三個階段。從設計方案的提出,經過詳細的調查,分析了方案的可行性和必要性,通過詳細的系統(tǒng)設計,力圖提高系統(tǒng)的集成性和快捷性;并在系統(tǒng)實施階段收集了大量的實驗數(shù)據(jù),以便測試階段系統(tǒng)的準確性和穩(wěn)定性。 論文整體是基于瀏覽器/服務器,前臺應用ASP.NET(C#)技術,后臺采
4、用SQL Server2008作為數(shù)據(jù)庫與前臺連接</p><p> 關鍵詞:網絡 教育 在線考試 B/S結構 ASP.NET(C#)技術</p><p><b> Abstract</b></p><p> With the network technology grow up, network has become our life
5、everywhere, inducing education, shopping, consultation and work, etc. Today network developed rapidly, the application of web technology become more and more widely. For education industry, web technology application has
6、 obvious advantages. They can use web to manager students and teachers, organize exam on line, and put out some scholastic information by network. It is not only good for increasing diaphaneity of scholastic managem</
7、p><p> The article is mainly talk about network has many advantages for extending service and offering more management condition of school. This article has many particular investigations, feasible research an
8、d analyze. The system use B/S structure, to build education web of school own on internet. There are 3 stages for system development including system analyze, system design and system implement. From bringing forward des
9、ign project to carrying through particular investigation, the article analyzes</p><p> This article based on IE/Server, foregrounding use ASP.NET(C#) technology and Dreamweaver software, background process
10、use SQL Server 2008 as database to connect front ground.</p><p> Keywords : Network, Education, Examination online, B/S structure, ASP.NETtechnology</p><p><b> 目 錄</b></p>&
11、lt;p><b> 摘 要2</b></p><p> Abstract3</p><p><b> 第一章5</b></p><p> 1.1課題背景及意義5</p><p> 1.2考試系統(tǒng)的發(fā)展現(xiàn)狀5</p><p> 第二章 在線考試系統(tǒng)的
12、系統(tǒng)分析7</p><p> 2.1系統(tǒng)結構規(guī)劃7</p><p> 2.2開發(fā)工具的選擇8</p><p> 2.2.1三種動態(tài)網頁制作技術8</p><p> 2.2.2 ASP.NET的優(yōu)越性8</p><p> 2.3數(shù)據(jù)庫管理系統(tǒng)的選擇11</p><p> 2
13、.4在線考試系統(tǒng)的功能分析12</p><p> 2.5在線考試系統(tǒng)的數(shù)據(jù)流程分析12</p><p> 2.6本章小結13</p><p> 第三章 在線考試系統(tǒng)的系統(tǒng)設計14</p><p> 3.1系統(tǒng)目標14</p><p> 3.2系統(tǒng)功能結構14</p><p>
14、; 3.3業(yè)務流程圖16</p><p> 3.4在線考試系統(tǒng)的數(shù)據(jù)庫設計17</p><p> 3.4.1在線考試系統(tǒng)E-R圖17</p><p> 3.4.2 在線考試系統(tǒng)的數(shù)據(jù)庫表結構設計20</p><p> 3.43 數(shù)據(jù)庫的安全性、信息的保密性考慮22</p><p> 第四章
15、在線考試系統(tǒng)的實現(xiàn)24</p><p> 4.1 公共類的設計和實現(xiàn)的功能24</p><p> 4.2登錄和注冊模塊實現(xiàn)過程26</p><p> 4.2.1 登錄模塊26</p><p> 4.2.2 注冊模塊28</p><p> 4.3考試界面實現(xiàn)效果30</p><p
16、> 4.4試題管理模塊實現(xiàn)過程32</p><p> 4.5后臺管理模塊功能實現(xiàn)33</p><p> 4.5.1 管理員后臺模塊33</p><p> 4.5.2 教師后臺管理模塊35</p><p> 第五章 測試運行與維護36</p><p> 5.1網站測試36</p>
17、<p> 5.2網站維護36</p><p><b> 參考文獻38</b></p><p><b> 致 謝39</b></p><p><b> 第一章</b></p><p> 1.1課題背景及意義</p><p>
18、 隨著Internet技術的發(fā)展,開發(fā)基于Web的管理信息系統(tǒng)(MIS)、最大限度利用高?,F(xiàn)有資源、提高教學質量是高等院校教學上的新的研究課題。</p><p> 管理信息系統(tǒng)(MIS)是集計算機網絡技術、通信技術、信息處理技術于一體的一種人機交互的智能化計算機系統(tǒng),對信息進行收集、傳遞、存儲及加工處理,用于輔助決策進行事務管理。MIS的發(fā)展與計算機網絡技術的發(fā)展緊密相關,隨著因特網技術的廣泛應用,MIS的體系
19、結構發(fā)生了很大變化,從以往基于客戶/服務器(Client/Server)模式的數(shù)據(jù)訪問及安全體系發(fā)展到了當前基于瀏覽器/服務器(Browser/Server)模式的結構體系。</p><p> 目前,各高校校園網絡已經建成,通過校園網可以實現(xiàn)點播教程、教師輔導、在線自測、在線考試……。我校校園網已經建成,為了充分利用學校的現(xiàn)有資源,我院準備開發(fā)《聯(lián)大生化學院管理信息系統(tǒng)》,其中在線考試系統(tǒng)為《聯(lián)大生化學院管理信
20、息系統(tǒng)》的子系統(tǒng)之一。</p><p> 該系統(tǒng)擬用微軟Visual Studio.net的集成開發(fā)環(huán)境,使用先進的ASP.NET技術,開發(fā)基于Web的在線考試系統(tǒng)。</p><p> 網絡考試系統(tǒng)將傳統(tǒng)教育理論與基于Web的計算機協(xié)同工作(CSCW)軟件系統(tǒng)有機結合起來,以滿足各種課程的考試需求;該系統(tǒng)將教育理論、經驗和方法引入系統(tǒng)內部,在完成網絡考試任務的同時還獲得了科學的量化指標
21、,可以協(xié)助考試組織機構對考試進行科學的評價和分析;在線考試系統(tǒng)將實現(xiàn)網絡組卷、在線考試、網上判分等各項相關的功能以優(yōu)化傳統(tǒng)考試的運行模式,在確保考試系統(tǒng)安全性的前提下,在線考試系統(tǒng)將極大地提高考試的組織效率,節(jié)約考試成本。</p><p> 1.2考試系統(tǒng)的發(fā)展現(xiàn)狀</p><p> 目前,各類考試系統(tǒng)層出不窮。按照考場所在位置可以分為:局域網環(huán)境的考試系統(tǒng)、基于Web的在線考試系統(tǒng),
22、以及二者都包含的網絡考試系統(tǒng)。開發(fā)基于局域網絡的考試系統(tǒng)可采用VB,VC,Delphi等開發(fā)工具,數(shù)據(jù)庫訪問多采用C/S模式。</p><p> 隨著教育信息化的不斷深入,網絡教育越來越多的運用在教學過程中。遠程教學、在線輔導、在線考試已被越來越多的人所接受。目前,世界上許多國際考試都采用在線考試的方式,比如:微軟認證(微軟公司的MCSE,MCDBA,MCSD等考試),思科認證(Cisco career cer
23、tification),惠普認證(HP-UX),SUN 公司的JAVA認證考試,以及TOFEL,GRE,這些考試都是通過網絡實時進行考試的。國內的許多考試也搬到了網上,如駕照模擬考試系統(tǒng),職業(yè)英語在線考試,以及眾多的遠程教育學院及網絡學院的在線考試。</p><p> 在眾多的線考試系統(tǒng)中,題目類型大多采用單一的選擇題模型,考生只需通過點擊正確的選項即可完成考試,同時系統(tǒng)根據(jù)已存入的正確答案,可迅速計算出學生的
24、成績。這種系統(tǒng)雖然可以實現(xiàn)自動判分,但由于考試的題型形式單一,不能適用各種科目考試的需求。</p><p> 開發(fā)基于Web的在線考試系統(tǒng)可以選擇的技術有ASP,JSP,PHP。其中ASP技術由于其建立在微軟的操作系統(tǒng)之上,使用微軟的開發(fā)工具,結合微軟的SQL Server數(shù)據(jù)庫管理系統(tǒng)可以使系統(tǒng)達到最佳組合,實現(xiàn)無縫連接;使開發(fā)人員輕松自如地開發(fā)出功能強大的應用軟件。而ASP技術中多使用傳統(tǒng)ASP技術,即AS
25、P4.0。由于ASP4.0依賴于嵌入的腳本語言:VBScript和Jscript,使得在語言的使用上受到了限制;同時,腳本語言只得通過解釋執(zhí)行,使得執(zhí)行效率大打折扣……。為了滿足Internet飛速發(fā)展帶來的對于Web應用程序和Web服務的日益提高的開發(fā)需求,微軟創(chuàng)新地推出.NET開發(fā)平臺。.NET框架是微軟面向推出的XML Web服務的新一代計算平臺,它簡化了在高度分布式 Internet 環(huán)境中的應用程序開發(fā)。ASP.NET是微軟開
26、發(fā)的新型體系結構.NET的一部分,它的全新技術架構使它稱為功能強大和靈活多變的最優(yōu)的Web開發(fā)環(huán)境。因此,本在線考試系統(tǒng)將采用ASP.NET技術,使用Visual Studio.NET的集成開發(fā)環(huán)境;選用微軟的SQL Server2008作為數(shù)據(jù)庫系統(tǒng),利</p><p> 第二章 在線考試系統(tǒng)的系統(tǒng)分析</p><p><b> 2.1系統(tǒng)結構規(guī)劃</b><
27、;/p><p> 目前,網絡應用軟件運行的模式主要有兩類:客戶機/服務器(C/S)模式和瀏覽器/服務器(B/S)模式。網絡考試系統(tǒng)的實現(xiàn)技術可以采用傳統(tǒng)的客戶機/服務器型(C/S)的MIS型架構,即數(shù)據(jù)庫(試題庫)內容放在遠程的服務器上,在考試機上安裝考試應用程序和數(shù)據(jù)庫客戶機配置,因此每次考試時要對機器進行安裝、配置,考務工作比較繁瑣。而且考試程序放在客戶機上,安全性也受到一定影響,因此,客戶機/服務器(C/S)
28、模式難于適應當前信息技術與網絡技術發(fā)展的需要。</p><p> 客戶機/服務器(C/S)結構是當前信息管理中采用的主要結構。在C/S結構的信息處理中,配有高性能的服務器,服務器端要安裝數(shù)據(jù)庫軟件,客戶端應用程序以SQL語言向服務器端發(fā)出請求,服務器將處理后的結果傳回客戶端,兩者之間是請求與服務的關系,這樣即提高了速度,又減少了網絡的傳輸量。由于數(shù)據(jù)庫系統(tǒng)軟件運行在高性能的服務器上,大量的數(shù)據(jù)處理任務在服務端完
29、成,客戶端主要提供與用戶的交互功能,因此可以大幅度提高系統(tǒng)的性能。支持C/S結構的數(shù)據(jù)庫系統(tǒng)都具有分布式處理能力,提供分布式計算功能和數(shù)據(jù)處理,形成三級結構,即表現(xiàn)級、功能級和數(shù)據(jù)訪問級。</p><p> 利用Web技術,實現(xiàn)Web服務器與數(shù)據(jù)庫系統(tǒng)的連接,進行對數(shù)據(jù)的處理,用戶也可以通過簡單易學的瀏覽器來處理所需要的數(shù)據(jù)。這種從瀏覽器到服務器的數(shù)據(jù)處理結構就是目前在Internet中十分流行的B/S模式(b
30、rowser/server)。</p><p> B/S(browser/server)與C/S(Client/Server)結構相比較,該結構將數(shù)據(jù)處理功能全部轉移到服務器端,實現(xiàn)了數(shù)據(jù)處理和維護與用戶機的無關性,并可隨時向用戶發(fā)送信息及提供系統(tǒng)未建立的數(shù)據(jù),使網絡的使用和維護更加方便,更快捷。</p><p> 2.2開發(fā)工具的選擇</p><p> 2.
31、2.1三種動態(tài)網頁制作技術</p><p> 目前,開發(fā)基于Web的應用程序,最常用的三種動態(tài)網頁語言有ASP(Active Server Pages),JSP(Java Server Pages),PHP (Hypertext Reprocessor)。</p><p> ASP全名Active Server Pages,是一個WEB服務器端的開發(fā)環(huán)境,利用它可以產生和運行動態(tài)的、交
32、互的、高性能的WEB服務應用程序。ASP采用腳本語言VBScript或JavaScript作為自己的開發(fā)語言。</p><p> PHP是一種跨平臺的服務器端的嵌入式腳本語言。它大量地借用C,Java和Perl語言的語法,并耦合PHP自己的特性,使WEB開發(fā)者能夠快速地寫出動態(tài)生成頁面。它支持目前絕大多數(shù)數(shù)據(jù)庫。還有一點,PHP是完全免費的,你可以從PHP官方站點(http://www.php.net)自由下載
33、。而且可以不受限制地獲得源碼,甚至可以從中加進你自己需要的特色。</p><p> JSP是Sun公司推出的新一代站點開發(fā)語言,他完全解決了只能執(zhí)行腳本級程序的特點,可以使用編譯來執(zhí)行程序。Sun公司借助自己在Java上的不凡造詣,將Java從Java應用程序和JavaApplet之外,又有新的碩果,就是Jsp--Java Server Page。Jsp可以在Serverlet和JavaBean的支持下,完成功
34、能強大的站點程序。</p><p> ASP.NET是新一代的ASP技術,與傳統(tǒng)ASP相比,ASP.NET在許多方面都顯示出更多的優(yōu)越性。使用微軟強大的開發(fā)工具Visual Studio.net,使開發(fā)的應用程序更加方便快捷。</p><p> 2.2.2 ASP.NET的優(yōu)越性</p><p> 開發(fā)基于Web應用程序所使用的ASP.NET技術是創(chuàng)建在微軟的
35、.NET框架之上的。</p><p> .NET框架是一個分布式的、基于標準的、多語言應用程序執(zhí)行環(huán)境,同時處理基本管線雜務,使得部署更容易。它能夠通過提供應用程序執(zhí)行環(huán)境來管理內存和進行版本控制,改善了應用程序的可靠性、可擴展性以及安全性。</p><p> .NET 框架具有兩個主要組件:公共語言運行庫CLR和.NET框架類庫。公共語言運行庫是.NET框架的基礎。我們可以將運行庫看
36、作一個在執(zhí)行時管理代碼的代理,它提供核心服務(如內存管理、線程管理和遠程處理),而且還強制實施嚴格的類型安全以及可確保安全性和可靠性的其他形式的代碼準確性。.NET框架的另一個主要組件是類庫,它是一個綜合性的面向對象的可重用類型集合,可以使用它開發(fā)包含從傳統(tǒng)的命令行或圖形用戶界面(GUI)應用程序,再到基于ASP.NET所提供的最新創(chuàng)新的應用程序(如Web窗體和XML Web services)在內的應用程序。</p>&
37、lt;p> 基于.NET框架的ASP.NET與傳統(tǒng)ASP相比,性能大大提高。表現(xiàn)在以下幾個方面[4]:</p><p><b> 支持多種編程語言</b></p><p> 現(xiàn)在,可以使用.NET支持的語言編寫Web 表單的腳本,不僅限于腳本語言,而且可以使用功能完備的開發(fā)語言,如:VB.net,VC++.net,C#.net,Jscript.net。&l
38、t;/p><p><b> 編譯型代碼</b></p><p> 傳統(tǒng)ASP通過解釋來執(zhí)行,而ASP.NET是通過編譯來執(zhí)行,這意味著頁面的執(zhí)行效率更高。</p><p><b> .NET基類庫</b></p><p> ASP.NET的強大功能和靈活性來自于.NET基類庫(BCL),這些庫提
39、供了各種各樣的功能,從用戶界面類到安全性以及常規(guī)語言支持的函數(shù)。</p><p><b> 高級配置</b></p><p> ASP.NET提供一個配置文件,用于存儲和維護關于環(huán)境的配置信息,還可用于為Web應用程序存儲任何特定應用程序的配置數(shù)據(jù)。</p><p><b> Web表單</b></p>
40、<p> Web表單基本上是一個Web頁,但新增了許多新功能,主要包括事件管理/捕獲、服務器控制創(chuàng)建、用戶控件創(chuàng)建、自定義控件創(chuàng)建以及對所有與.NET兼容的開發(fā)語言的完全支持。</p><p><b> XML Web服務</b></p><p> XML Web服務基本上是一個可通過Web使用的對象,它們主要使用SOAP作為傳輸層,因此不會被防火墻
41、阻斷。</p><p> XML Web服務通常執(zhí)行一個任務或返回數(shù)據(jù),它并不維持狀態(tài)。事實上,除了沒有部署和安全問題,XML Web服務的開發(fā)模式與DCOM(Distributed Component Object Model)的非常相似。</p><p><b> ADO.NET</b></p><p> ADO.NET是新一代的AD
42、O。和ASP.NET一樣,微軟公司也重新設計了它,以便在Web上使用。ADO.NET內部使用XML作為主要存儲格式,傳輸數(shù)據(jù)時使用的也是XML。</p><p><b> 本機XML支持</b></p><p> XML已深入到整個.NET開發(fā)框架中——它被用作ADO.NET和消息接發(fā)服務的主要傳輸格式。.NET基類庫完全支持XML和XML驅動的應用程序開發(fā)。&l
43、t;/p><p><b> 增強的緩存功能</b></p><p> 為提高性能,ASP.NET主要有兩種緩存數(shù)據(jù)的方式:請求緩存和頁面緩存,前者用于提高Web頁代碼的執(zhí)行效率以及在頁面間共享通用數(shù)據(jù),后者用于根據(jù)不同的準則來提高將頁面交付給客戶的性能。</p><p><b> 增強的狀態(tài)管理</b></p>
44、;<p> 以多種方式改進了狀態(tài)管理,其中最著名的是使用了外部“狀態(tài)存儲器”來存儲信息。</p><p><b> 增強的安全性</b></p><p> .NET安全系統(tǒng)讓開發(fā)人員能夠對這樣的用戶進行認證和授權,即希望其應用程序使用不同的技術和技巧的用戶。</p><p><b> 移動設備開發(fā)</b&g
45、t;</p><p> ASP.NET包含一個移動設備的軟件開發(fā)包(SDK),讓程序員能夠編寫可在WAP(Wireless Application Proticol)/WML(Wireless Markup Language)和HDML順應的設備上運行的Web應用程序。</p><p><b> 消息接發(fā)功能-</b></p><p>
46、消息接發(fā)服務類庫封裝了微軟消息隊列(MSMQ)消息接發(fā)服務,讓您能夠在.NET應用程序中支持這種技術。</p><p><b> 目錄服務</b></p><p> 目錄服務封裝了活動目錄服務,讓開發(fā)人員能夠通過ASP.NET應用程序訪問活動目錄服務接口、輕量級目錄訪問協(xié)議和其他目錄服務。</p><p><b> 遷移<
47、/b></p><p> 可以同時運行傳統(tǒng)ASP應用程序和ASP.NET應用程序,而不會有任何問題。</p><p> 2.3數(shù)據(jù)庫管理系統(tǒng)的選擇</p><p> 開發(fā)B/S結構的在線考試系統(tǒng),一定會處理大量的數(shù)據(jù),因此選擇合適的數(shù)據(jù)庫管理系統(tǒng)對系統(tǒng)的性能影響深遠。</p><p> 數(shù)據(jù)庫系統(tǒng)是一個存儲、維護數(shù)據(jù)和為應用系統(tǒng)
48、提供數(shù)據(jù)的軟件系統(tǒng),是存儲介質、處理對象和管理系統(tǒng)的集合體。表是包含數(shù)據(jù)庫中所有數(shù)據(jù)的數(shù)據(jù)庫對象。表定義為列的集合。與電子表格相似,數(shù)據(jù)在表中是按行和列的格式組織排列的。每行代表唯一的一條記錄,而每列代表記錄中的一個域。</p><p> 基于Web的應用系統(tǒng)可選擇的數(shù)據(jù)庫管理系統(tǒng)有:Oracle,MS SQL Server,Mysql,Sybase, MS Access。其中,使用ASP.NET技術開發(fā)的we
49、b應用程序可以Oracle, SQL Server, Access。而微軟推出的MS SQL Server、Access與Windows操作系統(tǒng)同是微軟的產品,可以使軟件開發(fā)達到更好的效果。</p><p> 微軟的SQL Server2008與Windows無縫集成,使得ADO.NET與SQLServer的結合性能非常出色。而Access更適于小型的數(shù)據(jù)庫管理,當網絡數(shù)據(jù)流量達到較大值時,服務器將顯得力不從心
50、。所以,我們選用SQL Server2008作為數(shù)據(jù)庫系統(tǒng)。</p><p> 總之,ASP.NET與Windows Server/Advanced Server的完美組合,為Web模型提供了一個更為穩(wěn)定,高效,安全的運行環(huán)境。采用目前最為先進的可視化開發(fā)系統(tǒng)Microsoft Visual Studio 2010以及最有效的數(shù)據(jù)庫系統(tǒng)Microsoft SQL Server2008進行開發(fā),保證了軟件的功能
51、,提高了開發(fā)的效率。</p><p> 2.4在線考試系統(tǒng)的功能分析</p><p> 在線考試系統(tǒng)分成三個系統(tǒng)功能模塊:學生模塊、教師模塊、管理員模塊。</p><p> 學生通過主頁登錄后,同意考試遵守條款,然后進行考試科目課程選擇,開始進入考試界面,考生需在規(guī)定時間內完成該科目所有試題,系統(tǒng)自動評分,存入后臺數(shù)據(jù)庫,考生安全退出系統(tǒng)。</p>
52、<p> 教師模塊登錄后,教師可以查看試題基本信息,添加該教師所教科目的試題信息、發(fā)布試題,查看學生的考試成績和刪除,還可以修改自己身份的系統(tǒng)登錄密碼。</p><p> 系統(tǒng)管理員具有最高權限,負責學生信息、教師信息、試題信息、科目信息、考試結果的管理,和管理員信息的維護,即管理員密碼的修改功能。</p><p> 整個在線考試系統(tǒng)中,管理員是特定的用戶,老師和學生們
53、,必須通過注冊功能模塊,來完成在系統(tǒng)存在的身份,系統(tǒng)根據(jù)不同的身份信息存儲在相應的表內。</p><p> 2.5在線考試系統(tǒng)的數(shù)據(jù)流程分析</p><p> 數(shù)據(jù)流程圖(DFD)可以幫助開發(fā)者進行數(shù)據(jù)流程的分析,即把數(shù)據(jù)在組織(或原系統(tǒng))內部的流動情況抽象地獨立出來,從數(shù)據(jù)流動過程來考察實際業(yè)務的實際處理模式。</p><p> 在線考試系統(tǒng)中,外部實體包括
54、三個角色,即學生,教師,管理員;數(shù)據(jù)的存儲以數(shù)據(jù)庫中表的形式存儲在數(shù)據(jù)庫中。</p><p><b> 2.6本章小結</b></p><p> 在對在線考試系統(tǒng)的系統(tǒng)分析過程中,本人查閱了大量的在線考試系統(tǒng)的相關資料,對于基于B/S結構的在線考試系統(tǒng)中,幾乎全部使用傳統(tǒng)ASP技術,本系統(tǒng)使用ASP.NET技術,不僅是開發(fā)工具的創(chuàng)新,也使得最后開發(fā)的系統(tǒng)自身帶有先
55、天的優(yōu)越性。同時,使用多種系統(tǒng)分析工具,如:功能模塊圖、數(shù)據(jù)流程圖,使得開發(fā)起來更加科學,更加有效。</p><p> 第三章 在線考試系統(tǒng)的系統(tǒng)設計</p><p><b> 3.1系統(tǒng)目標</b></p><p> 本系統(tǒng)屬于小型的在線考試系統(tǒng),可以從數(shù)據(jù)庫中隨機抽取試題,并且可以自動對考生的答案評分。本系統(tǒng)主要實現(xiàn)一下目標:<
56、/p><p> 系統(tǒng)采用人機交互的方式,界面美觀友好,信息查詢靈活、方便,數(shù)據(jù)存儲安全可靠。</p><p> 實現(xiàn)從數(shù)據(jù)庫中隨機抽取試題。</p><p> 對用戶輸入的數(shù)據(jù),進行嚴格的數(shù)據(jù)檢驗,盡可能地避免認為錯誤。</p><p> 實現(xiàn)對考試結果自動評分。</p><p> 實現(xiàn)教師和后臺管理員對試題信息
57、單獨管理。</p><p> 系統(tǒng)最大限度地實現(xiàn)了易維護性和易操作性。</p><p><b> 3.2系統(tǒng)功能結構</b></p><p> 在線考試系統(tǒng)前臺功能結構圖如圖3-1所示。</p><p><b> 圖3-1</b></p><p> 在線考試系統(tǒng)后臺
58、功能結構圖如圖3-2所示。</p><p><b> 圖3-2</b></p><p><b> 3.3業(yè)務流程圖</b></p><p> 在線考試系統(tǒng)的業(yè)務流程圖如圖3-3所示。</p><p><b> 圖:3-3</b></p><p>
59、 3.4在線考試系統(tǒng)的數(shù)據(jù)庫設計</p><p> 在開發(fā)在線考試系統(tǒng)前,分析了系統(tǒng)的數(shù)據(jù)量,由于在線考試系統(tǒng)中試題及考生信息的數(shù)據(jù)量會很大,因此選擇Microsoft SQL Server 2008數(shù)據(jù)庫存儲數(shù)據(jù)信息,數(shù)據(jù)庫命名為db_ExamOline,在數(shù)據(jù)庫中我們創(chuàng)建了6個數(shù)據(jù)表存儲不同信息。</p><p> 在線考試系統(tǒng)E-R圖</p><p>
60、 管理員信息實體E-R圖,如圖3-4所示。</p><p><b> 圖3-4 </b></p><p> 考試科目信息實體E-R圖,如圖3-5所示。</p><p><b> 圖3-5</b></p><p> 考試記錄信息實體E-R圖,如圖3-6所示。</p><p&
61、gt;<b> 圖:3-6</b></p><p> 考生信息實體E-R圖,如圖3-7所示。</p><p><b> 圖:3-7</b></p><p> 教師信息實體E-R圖,如圖3-8所示。</p><p><b> 圖3-8</b></p>&l
62、t;p> 試題信息實體E-R圖,如圖3-8所示。</p><p><b> 圖3-8</b></p><p> 3.4.2 在線考試系統(tǒng)的數(shù)據(jù)庫表結構設計</p><p> 根據(jù)設計好的E-R圖在數(shù)據(jù)庫中創(chuàng)建各表,系統(tǒng)數(shù)據(jù)庫中各表的結構如下。tb_Admin用于保存所有管理員信息,該表結構如圖3-?所示。</p>
63、<p> 圖3-9 管理員信息表</p><p> tb_Lesson用于保存所有考試科目信息,該表結構如圖3-10所示。</p><p> 圖3-10 考試科目信息表</p><p> tb_ score用于保存所有學生考試成績信息,該表結構如圖3-11所示。</p><p> 圖3-11 考試成績信息表</
64、p><p> tb_ Student用于保存所有學生個人資料信息,該表結構如圖3-12所示。</p><p> 圖3-12學生個人資料信息表</p><p> tb_ Student用于保存所有教師個人資料信息,該表結構如圖3-13所示。</p><p> 圖3-13 教師個人資料信息表</p><p> tb
65、_ test用于保存所有試題信息,該表結構如圖3-14所示。</p><p> 圖3-14 試題信息表</p><p> 3.43 數(shù)據(jù)庫的安全性、信息的保密性考慮</p><p> 數(shù)據(jù)庫的安全性是指保護數(shù)據(jù)庫,是指不合法的使用,以免數(shù)據(jù)庫的泄漏更改或破壞。對數(shù)據(jù)庫不合法的使用,稱為數(shù)據(jù)庫的濫用。為避免數(shù)據(jù)庫的濫用,可以對數(shù)據(jù)庫的數(shù)據(jù)內容設置不同的權限,
66、對于一般學生用戶只有讀的權限:只能查詢數(shù)據(jù)但不能修改數(shù)據(jù)。對于教師用戶有讀、寫的權限及索引的權限:可以插入新的數(shù)據(jù),及修改數(shù)據(jù),也可以索引查詢數(shù)據(jù)庫。</p><p> 由于考試系統(tǒng)的特殊性,數(shù)據(jù)的安全與保密顯得尤為重要。保密性是指用戶在網上的所有信息應有一定的保密度,不同類型的用戶之間的內容是互相保密的。安全性是指用戶參加一次考試是一個過程,對于所有的用戶,服務器都加以跟蹤。為了確保其安全與保密性,</
67、p><p> 一、要確保考生不能聯(lián)網作弊;</p><p> 二、要在試卷上實時加以監(jiān)控;</p><p> 三、要在時間上加以嚴格的控制;</p><p> 四、避免試題的大量泄漏。</p><p> 主要通過兩種途徑予以實現(xiàn):</p><p> 凡進入在線考試的用戶,都要通過用戶身份
68、驗證才能進入。教師用戶按權限進行操作,確保數(shù)據(jù)的公共性與私有性。不允許用戶執(zhí)行非法的操作,防止用戶無意或有意進行的破壞。</p><p> 禁止用戶查看所有試卷的源文件及拷貝功能, 1、禁止使用鼠標右鍵、F5刷新鍵及BackSpace鍵; 2、試卷庫中的試卷將以無下拉菜單及工具欄等的頁面方式呈現(xiàn)在瀏覽者面前,避免考試題的泄漏。</p><p> 以下為禁止使用鼠標右鍵功能的javasc
69、ript腳本語言代碼:</p><p> <script language="javascript" type="text/javascript"></p><p> self.moveTo(0, 0);</p><p> self.resizeTo(screen.availWidth, screen.ava
70、ilHeight); //設置打開窗口大小</p><p> function keydown() {</p><p> if (event.keyCode == 8) //屏蔽BackSpace鍵</p><p><b> {</b></p><p> even
71、t.keyCode = 0;</p><p> event.returnValue = false;</p><p><b> }</b></p><p> if (event.keyCode == 13) //屏蔽Enter鍵</p><p><b> {</b></p&
72、gt;<p> event.keyCode = 0;</p><p> event.returnValue = false;</p><p><b> }</b></p><p> if (event.keyCode == 116)//屏蔽F5刷新鍵</p><p><b>
73、 {</b></p><p> event.keyCode = 0;</p><p> event.returnValue = false;</p><p><b> }</b></p><p><b> }</b></p><p><b>
74、</script></b></p><p> 第四章 在線考試系統(tǒng)的實現(xiàn)</p><p> 4.1 公共類的設計和實現(xiàn)的功能</p><p> 在開發(fā)項目中以類的形式來組織、封裝一些常用的方法和事件,不僅可以提高代碼的重復率,也可以大大方便了代碼的管理。本系統(tǒng)中創(chuàng)建了一個公共類BaseClass類,其中包含DBCon方法、BindDG方
75、法、OperateData方法、CheckStudent方法、CheckAdimn方法,分別用于連接數(shù)據(jù)庫、綁定GridView控件、執(zhí)行SQL語句、判斷考生、教師,管理員登錄。具體代碼如下:</p><p> public class BaseClass</p><p><b> {</b></p><p> public static
76、 SqlConnection DBCon() //建立數(shù)據(jù)庫的公共方法</p><p><b> {</b></p><p> return new SqlConnection("server=.;database=db_ExamOnline;uid=sa;pwd=123");</p><p><b&g
77、t; }</b></p><p> public static void BindDG(GridView dg, string id, string strSql, string Tname) //建立綁定GridView控件方法</p><p><b> {</b></p><p> SqlConnection conn
78、 = DBCon(); //連接數(shù)據(jù)庫</p><p> SqlDataAdapter sda = new SqlDataAdapter(strSql, conn);</p><p> DataSet ds = new DataSet();</p><p> sda.Fill(ds, Tname);</p><p> d
79、g.DataSource = ds.Tables[Tname]; //設置綁定數(shù)據(jù)源</p><p> dg.DataKeyNames = new string[] { id };</p><p> dg.DataBind();//綁定控件</p><p><b> }</b></p><p>
80、; public static void OperateData(string strsql)//創(chuàng)建一個執(zhí)行SQL語句的方法</p><p><b> {</b></p><p> SqlConnection conn = DBCon();</p><p> conn.Open();//打開數(shù)據(jù)庫</p>
81、<p> SqlCommand cmd = new SqlCommand(strsql, conn);</p><p> cmd.ExecuteNonQuery();</p><p> conn.Close();//關閉數(shù)據(jù)庫連接</p><p><b> }</b></p><p>
82、public static bool CheckStudent(string studentNum, string studentPwd) //檢測是否是學生身份登錄</p><p><b> {</b></p><p> SqlConnection conn = DBCon();</p><p> conn.Open();</
83、p><p> SqlCommand cmd = new SqlCommand("select count(*) from tb_Student where StudentNum='" + studentNum + "' and StudentPwd='" + studentPwd + "'", conn);</p>
84、;<p> int i = Convert.ToInt32(cmd.ExecuteScalar());</p><p> if (i > 0)</p><p><b> {</b></p><p> return true;</p><p><b> }</b><
85、/p><p><b> else</b></p><p><b> {</b></p><p> return false;</p><p><b> }</b></p><p> conn.Close();</p><p>
86、;<b> }</b></p><p> public static bool CheckTeacher(string teacherNum, string teacherPwd) //教室登錄檢測</p><p><b> {</b></p><p> SqlConnection conn = DBCon(
87、);</p><p> conn.Open();</p><p> SqlCommand cmd = new SqlCommand("select count(*) from tb_Teacher where TeacherNum='" + teacherNum + "' and TeacherPwd='" + teach
88、erPwd + "'", conn);</p><p> int i = Convert.ToInt32(cmd.ExecuteScalar());</p><p> if (i > 0)</p><p><b> {</b></p><p> return true;</
89、p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> return false;</p><p><b> }</b></p>&l
90、t;p> conn.Close();</p><p><b> }</b></p><p> public static bool CheckAdmin(string adminNum, string adminPwd) //管理員登錄檢測</p><p><b> {</b></p>
91、<p> SqlConnection conn = DBCon();</p><p> conn.Open();</p><p> SqlCommand cmd = new SqlCommand("select count(*) from tb_Admin where AdminNum='" + adminNum + "' an
92、d adminPwd='" + adminPwd + "'", conn);</p><p> int i = Convert.ToInt32(cmd.ExecuteScalar());</p><p> if (i > 0)</p><p><b> {</b></p>
93、<p> return true;</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> return false;</p><p><b>
94、; }</b></p><p> conn.Close();</p><p><b> }</b></p><p><b> }</b></p><p> 4.2登錄和注冊模塊實現(xiàn)過程</p><p> 4.2.1 登錄模塊</p>&l
95、t;p> 登錄模塊的具體步驟如下:</p><p> 新建一個名為Login.aspx的網頁,主要用于實現(xiàn)系統(tǒng)的登錄功能。</p><p> 輸入帳號和密碼信息,選擇相應的身份,同時系統(tǒng)會出現(xiàn)一張驗證碼的圖片,輸入圖片上出現(xiàn)的隨機數(shù)字,登錄成功后,系統(tǒng)會根據(jù)不同的身份,進入不同的頁面。</p><p> 如果是學生和管理員首次進入該系統(tǒng),由于后臺數(shù)據(jù)庫
96、中沒有他們信息,所以要根據(jù)自己的相應情況,選擇注冊功能,成為系統(tǒng)的用戶。</p><p> 系統(tǒng)登錄界面如下圖4-1所示。</p><p><b> 圖:4-1</b></p><p> 登錄界面關鍵代碼如下:</p><p> public partial class Login : System.Web.UI
97、.Page</p><p><b> {</b></p><p> protected void Page_Load(object sender, EventArgs e)</p><p><b> {</b></p><p><b> }</b></p>
98、<p> protected void btnlogin_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (txtCode.Text.Trim() != Session["verify"].ToString())</p><p&g
99、t;<b> {</b></p><p> Response.Write("<script>alert('驗證碼錯誤);location='Login.aspx'</script>");//驗證碼輸錯</p><p><b> }</b></p><p&
100、gt;<b> else</b></p><p><b> {</b></p><p> if (this.ddlstatus.SelectedValue == "學生") //選擇的登錄身份為學生</p><p><b> {</b></p>&l
101、t;p> if (BaseClass.CheckStudent(txtNum.Text.Trim(), txtPwd.Text.Trim())) //驗證登錄帳號和密碼</p><p><b> {</b></p><p> Session["ID"] = txtNum.Text.Trim();</p><p>
102、 Response.Redirect("student/studentexam.aspx");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> Respons
103、e.Write("<script>alert(“您不是學生或者用戶名和密碼錯誤”);location='Login.aspx'</script>");</p><p><b> }</b></p><p><b> }</b></p><p> if (th
104、is.ddlstatus.SelectedValue == "教師")</p><p><b> {</b></p><p> if (BaseClass.CheckTeacher(txtNum.Text.Trim(), txtPwd.Text.Trim()))</p><p><b> {</b>
105、;</p><p> Session["teacher"] = txtNum.Text;</p><p> Response.Redirect("teacher/TeacherManage.aspx");</p><p><b> }</b></p><p><b>
106、; else</b></p><p><b> {</b></p><p> Response.Write("<script>alert(“您不是教師或者用戶名和密碼錯誤”);location='Login.aspx'</script>");</p><p><
107、b> }</b></p><p><b> }</b></p><p> if (this.ddlstatus.SelectedValue == "管理員")</p><p><b> {</b></p><p> if (BaseClass.Chec
108、kAdmin(txtNum.Text.Trim(), txtPwd.Text.Trim()))</p><p><b> {</b></p><p> Session["admin"] = txtNum.Text;</p><p> Response.Redirect("admin/AdminManage.a
109、spx");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> Response.Write("<script>alert(“您不是管理員或者用戶名和
110、密碼錯誤”);location='Login.aspx'</script>");</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b>
111、}</b></p><p> protected void btnconcel_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> RegisterStartupScript("提示", "<script>wind
112、ow.close();</script>");</p><p><b> }</b></p><p> protected void BtnRegister_Click(object sender, EventArgs e)</p><p><b> {</b></p><p
113、> Response.Redirect("Register.aspx");</p><p><b> }</b></p><p><b> }</b></p><p> 4.2.2 注冊模塊</p><p> 下圖4-2為教師和學生注冊功能圖解。</p>
114、;<p><b> 圖:4-2</b></p><p> 學生注冊信息注冊界面如下圖4-3所示:</p><p><b> 圖:4-3</b></p><p> 學生注冊功能部分代碼如下:</p><p> protected void OnBtnConfirm(object
115、 sender, EventArgs e)</p><p><b> {</b></p><p> if (TextNum.Text == "" || TextName.Text == "" || TextPwd1.Text == ""|| TextPwd2.Text == null)</p>
116、<p><b> {</b></p><p> MessageBox.Show("請將信息填寫完整");</p><p><b> return;</b></p><p><b> }</b></p><p><b> el
117、se</b></p><p><b> {</b></p><p> SqlConnection conn = BaseClass.DBCon();</p><p> conn.Open();</p><p> SqlCommand cmd = new SqlCommand("select
118、count(*) from tb_Student where StudentNum='" + TextNum.Text + "'", conn);</p><p> int i = Convert.ToInt32(cmd.ExecuteScalar());</p><p> if (i > 0)</p><p>
119、;<b> {</b></p><p> MessageBox.Show("此學號已經存在");</p><p><b> return;</b></p><p><b> }</b></p><p><b> else</b>
120、;</p><p><b> {</b></p><p> string strsql = "insert into tb_Student(StudentNum,StudentName,StudentPwd,StudentSex) values('" + TextNum.Text.Trim() + "','&q
121、uot; + TextName.Text.Trim() + "','" + TextPwd1.Text + "','" + StudentSex.Text + "')";</p><p> BaseClass.OperateData(strsql);</p><p> MessageBo
122、x.Show("注冊成功");</p><p> Reset(sender, e);</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> 教師信
123、息注冊如下圖4-4所示:</p><p><b> 圖:4-4</b></p><p> 4.3考試界面實現(xiàn)效果</p><p> 當考生進入考試界面時,會出現(xiàn)被選擇的考試科目試題,和一些相關的信息,如,考生資料,并會有規(guī)定的倒計時,必須在允許時間內完成考試。</p><p><b> 部分關鍵代碼如下
124、:</b></p><p> protected void Button2_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> string StuID = Session["ID"].ToString();//考生的編號</p&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 在線考試系統(tǒng)畢業(yè)論文 (2)
- 在線考試系統(tǒng)畢業(yè)論文 (2)
- 在線考試系統(tǒng)畢業(yè)論文 (2)
- 在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——在線考試系統(tǒng)
- 畢業(yè)論文——在線考試系統(tǒng).
- 基于java的在線考試系統(tǒng)——畢業(yè)論文 (2)
- 在線考試系統(tǒng)畢業(yè)論文 (4)
- 網絡在線考試系統(tǒng)畢業(yè)論文
- 在線考試系統(tǒng)畢業(yè)論文 (3)
- 畢業(yè)論文——在線投票系統(tǒng) (2)
- 畢業(yè)論文——在線投票系統(tǒng) (2)
- 畢業(yè)論文---在線考試系統(tǒng)的開發(fā)
評論
0/150
提交評論