版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 畢業(yè)設(shè)計(jì)(論文)</b></p><p> 基于C/S模式的在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 學(xué)院(系): 信息工程學(xué)院 </p><p> 專業(yè)班級(jí): 通信0906 </p><p><b> 目 錄</b>
2、</p><p><b> 摘 要I</b></p><p> AbstractII</p><p><b> 1 緒論1</b></p><p> 1.1 研究背景1</p><p> 1.2 研究的目的與意義2</p><p>
3、; 1.3 實(shí)現(xiàn)技術(shù)2</p><p> 1.4 需求分析3</p><p> 1.5 可行性分析3</p><p> 1.6 論文框架及主要內(nèi)容4</p><p> 2 系統(tǒng)總體設(shè)計(jì)5</p><p> 2.1 系統(tǒng)結(jié)構(gòu)功能5</p><p> 2.1.1 在線考試模
4、塊5</p><p> 2.1.2 后臺(tái)管理模塊5</p><p> 2.2 系統(tǒng)用例6</p><p> 2.2.1 管理員UML用例6</p><p> 2.2.2 學(xué)生UML用例7</p><p> 2.3 系統(tǒng)流程圖7</p><p><b> 3 數(shù)據(jù)
5、庫設(shè)計(jì)9</b></p><p> 3.1 數(shù)據(jù)庫分析9</p><p> 3.2 數(shù)據(jù)庫設(shè)計(jì)步驟9</p><p> 3.3 數(shù)據(jù)庫概念設(shè)計(jì)10</p><p> 3.4 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)12</p><p> 4 客戶端——在線考試系統(tǒng)詳細(xì)設(shè)計(jì)15</p><
6、p> 4.1考生登錄界面15</p><p> 4.2 在線考試系統(tǒng)主界面16</p><p> 4.3 個(gè)人信息維護(hù)界面17</p><p> 4.4 修改密碼界面18</p><p> 4.5 考試協(xié)議界面20</p><p> 4.6 在線考試界面21</p><
7、p> 4.7 成績查詢界面23</p><p> 5 服務(wù)器端——后臺(tái)管理系統(tǒng)詳細(xì)設(shè)計(jì)25</p><p> 5.1 管理員登錄界面25</p><p> 5.2 后臺(tái)管理系統(tǒng)主界面26</p><p> 5.3 個(gè)人信息維護(hù)界面27</p><p> 5.4 修改密碼界面29</p
8、><p> 5.5 試題維護(hù)界面29</p><p> 5.6 考生信息維護(hù)界面31</p><p> 5.7 成績查詢界面33</p><p> 6 結(jié)論和展望35</p><p><b> 6.1 結(jié)論35</b></p><p><b>
9、6.2 展望35</b></p><p><b> 參考文獻(xiàn)37</b></p><p><b> 致 謝38</b></p><p><b> 摘 要</b></p><p> 在線考試系統(tǒng)旨在實(shí)現(xiàn)考試的無紙化管理,對(duì)一些科目的考試可以通過互聯(lián)網(wǎng)
10、或局域網(wǎng)進(jìn)行,方便校方考務(wù)的管理,也方便了考生,尤其適合考生分布廣,不易集中的遠(yuǎn)程教育。</p><p> 本系統(tǒng)采用ASP.NET和Microsoft Access 2003數(shù)據(jù)庫,編程采用C#語言,開發(fā)了基于C/S體系結(jié)構(gòu)的在線考試系統(tǒng)。系統(tǒng)分為兩大模塊:服務(wù)器端后臺(tái)管理模塊和客戶端在線考試模塊。其中服務(wù)器端后臺(tái)管理模塊是進(jìn)行題目的添加、修改和刪除,考生信息的維護(hù),以及考試成績查詢,是系統(tǒng)運(yùn)行的基礎(chǔ);客戶端
11、在線考試模塊是考生通過自己的姓名和密碼登錄系統(tǒng),進(jìn)入考試界面后由系統(tǒng)按照管理員預(yù)先設(shè)置好的試卷結(jié)構(gòu)從題庫中隨機(jī)抽取適合的題目,生成試卷,考生開始答題,交卷后可以查詢考試歷史記錄及成績。</p><p> 本系統(tǒng)改進(jìn)了學(xué)生的考核手段,實(shí)現(xiàn)了由傳統(tǒng)考試方式向網(wǎng)絡(luò)無紙化考試方式的轉(zhuǎn)變。 </p><p> 關(guān)鍵詞: ASP.NET;Access;在線考試系統(tǒng);C#語言</p>
12、<p><b> Abstract</b></p><p> On-line examination system the aim is carry out examination of have no the paper turn a management, can carry on through Internet or bureau area net to some ex
13、aminations of categories, convenient school square test the management of duty, also convenient the examinee is particularly suitable for examinee to distribute widely and not easily concentrated of long range education.
14、</p><p> The system uses ASP.NET and Microsoft Access 2003 database, and C# language, is developed based on C/S system structure examination system. The system is divided into two modules: Background manage
15、ment module on the server and client on-line examination module. The background management module is to add, store and delete questions, student information maintenance and test scores query, is the basis of the system;
16、The on-line examination module is a client module , students can enter the interfac</p><p> The system is to improve the courses teaching quality, improve students' assessment means, achieved by the tra
17、ditional examination way to network paperless examination mode.</p><p> Keywords:ASP.NET ; Access 2003 ; Online Exam System ; C# language</p><p><b> 1 緒論</b></p><p>
18、在現(xiàn)今的生活中相信每個(gè)人都經(jīng)歷過無數(shù)的考試,例如:在學(xué)校階段不僅需要完成各學(xué)科的考試,還要完成英語等級(jí)考試、計(jì)算機(jī)等級(jí)考試等。隨著社會(huì)的發(fā)展,考試也逐漸自動(dòng)化、電子化。使用電子化的考試方式,可以實(shí)現(xiàn)自動(dòng)閱卷,大大減輕了老師的負(fù)擔(dān)。在本文中,就來開發(fā)一個(gè)學(xué)生在線考試、自動(dòng)閱卷的系統(tǒng) [1]。</p><p><b> 1.1 研究背景</b></p><p> 近幾
19、年來,隨著Internet的崛起,遠(yuǎn)程教育開始發(fā)展,普及網(wǎng)絡(luò)教育的呼聲日益高漲,其勢頭不亞于電子商務(wù)[2]。聯(lián)合國教科文組織1998年在其一項(xiàng)調(diào)查報(bào)告中指出:無論是發(fā)達(dá)國家還是發(fā)展中國家,都不同程度存在教育滯后于現(xiàn)實(shí)需要的問題,特別是第三世界國家[3]。而普及遠(yuǎn)程教育,尤其是網(wǎng)絡(luò)教育,不僅是解決這一問題的有效途徑,而且將成為革新傳統(tǒng)教育模式的重要?jiǎng)恿4]。中國的網(wǎng)絡(luò)教育也隨Internet的發(fā)展而同步增長,同時(shí),網(wǎng)絡(luò)教育也為中國的教育
20、事業(yè)開辟了新的天地。</p><p> 對(duì)于網(wǎng)絡(luò)考試系統(tǒng)的前身——計(jì)算機(jī)輔助測驗(yàn)系統(tǒng)的研究,國外很早就開始了,并且在題庫建設(shè)、統(tǒng)計(jì)測量等方面取得很多顯著理論成果。由于互聯(lián)網(wǎng)技術(shù)最近幾年才發(fā)展起來,關(guān)于Internet環(huán)境下的網(wǎng)絡(luò)考試測評(píng)系統(tǒng)的研究目前還處于發(fā)展階段,在設(shè)計(jì)開發(fā)方面缺乏系統(tǒng)的理論指導(dǎo)[5]。關(guān)于網(wǎng)絡(luò)考試測評(píng)系統(tǒng)開發(fā)規(guī)范與標(biāo)準(zhǔn)的研究方面,我國教育部高教司于2000年5月推出了《現(xiàn)代遠(yuǎn)程教育資源建設(shè)技
21、術(shù)規(guī)范》(試行本),其中對(duì)網(wǎng)絡(luò)題庫、考試系統(tǒng)的建設(shè)規(guī)范進(jìn)行了定義。目前這些標(biāo)準(zhǔn)還處于不斷檢驗(yàn)、完善階段,符合這些標(biāo)準(zhǔn)的網(wǎng)絡(luò)考試系統(tǒng)還很少。我國的CELTS標(biāo)準(zhǔn)主要參考IEEE和IMS,目前完成了11項(xiàng)規(guī)范,處于試用階段。目前國內(nèi)的大多數(shù)產(chǎn)品,無論是商業(yè)公司或?qū)W校開發(fā)的網(wǎng)絡(luò)考試系統(tǒng)大都與這些規(guī)范有一定差距。</p><p> 實(shí)踐應(yīng)用計(jì)算機(jī)應(yīng)用于考試源于美國,歷經(jīng)多年,已經(jīng)在國外得到了廣泛的應(yīng)用。國外有許多專門的
22、考試機(jī)構(gòu)采用計(jì)算機(jī)輔助測試對(duì)參加考核的對(duì)象進(jìn)行評(píng)價(jià)。如在信息技術(shù)領(lǐng)域中全球領(lǐng)先的計(jì)算機(jī)公司的授證考試,還有專業(yè)人員的認(rèn)證考試,建筑師和股票經(jīng)紀(jì)人的考試、醫(yī)護(hù)人員的專業(yè)測試、美國飛機(jī)駕駛員(FAA)的考試等。世界上最大的考試機(jī)構(gòu)——美國教育考試服務(wù)中心從1993年開始在GRE(研究生入學(xué)考試)采用自適應(yīng)考試模式,同時(shí)逐步減少紙卷——筆試為基礎(chǔ)的考試。2000年開始,TOEFL考試在中國采用自適應(yīng)考試模式。總的看來,國外的考試特別是技術(shù)資格
23、認(rèn)證的考試,都逐步采用了計(jì)算機(jī)輔助測試的方法,且自適應(yīng)考試的形式開始廣泛運(yùn)用。我國在這方面相對(duì)落后,目前主要是計(jì)算機(jī)題庫的應(yīng)用,只有計(jì)算機(jī)類的考試部分采用了計(jì)算機(jī)輔助測試的方式,如大學(xué)計(jì)算機(jī)初級(jí)考試、高中信息技術(shù)會(huì)考。</p><p> 1.2 研究的目的與意義</p><p> 隨著網(wǎng)絡(luò)的迅速發(fā)展和廣泛普及,網(wǎng)絡(luò)化教育代表了教育改革的一個(gè)發(fā)展方向,已經(jīng)成為現(xiàn)代教育的一個(gè)特征,并對(duì)教育
24、的發(fā)展形成新的推動(dòng)力。遠(yuǎn)程教育成為現(xiàn)代教育技術(shù)未來發(fā)展的重要方向之一,考試測試作為遠(yuǎn)程教育的一個(gè)子系統(tǒng)也成為一個(gè)重要的研究領(lǐng)域[6]。</p><p> 傳統(tǒng)的考試方式一般要經(jīng)過人工出卷、考生考試、人工閱卷等過程。對(duì)于一些課程來說,隨著考生數(shù)量的增加,教師出卷閱卷的工作量將會(huì)越來越大,并且其工作十分煩瑣且容易出錯(cuò)。在線考試系統(tǒng)課題產(chǎn)生的背景是當(dāng)今教育信息化的趨勢及我國高校教育信息化系統(tǒng)的建設(shè),目的是充分利用學(xué)校
25、現(xiàn)有的計(jì)算機(jī)軟、硬件和網(wǎng)絡(luò)資源實(shí)現(xiàn)無紙化考試以避免傳統(tǒng)手工考試的不足[7]。與傳統(tǒng)考試模式相比,網(wǎng)上考試滲入了更多的技術(shù)環(huán)節(jié),對(duì)實(shí)現(xiàn)安全性的途徑、方法也提出了更高的技術(shù)要求。通過計(jì)算機(jī)來實(shí)現(xiàn)網(wǎng)上考試,是現(xiàn)代教育技術(shù)的一個(gè)具體實(shí)現(xiàn),具有很重要的現(xiàn)實(shí)意義[5]??梢詫?shí)現(xiàn)考務(wù)工作的全自動(dòng)化管理,可以有效利用校園網(wǎng)的軟硬件資源,使其發(fā)揮最大效力,更好的為學(xué)校的教學(xué)、科研、管理服務(wù),可以大規(guī)模的實(shí)行考試,實(shí)現(xiàn)考試的客觀性、公證性,自動(dòng)化組卷、閱卷
26、可以減輕教師的工作強(qiáng)度。在線考試系統(tǒng)是傳統(tǒng)考場的延伸,它可以利用網(wǎng)絡(luò)的廣闊空間 ,隨時(shí)隨地的對(duì)學(xué)生進(jìn)行考試,加上數(shù)據(jù)庫技術(shù)的利用,大大簡化了傳統(tǒng)考試的過程[8]。另外考慮到C/S模式的系統(tǒng)能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務(wù)器。對(duì)應(yīng)的優(yōu)點(diǎn)就是客戶端響應(yīng)速度快。</p><p> 此次開發(fā)的網(wǎng)上考試系統(tǒng),旨在探索一種基于C/S模式的計(jì)算機(jī)考試模式。通過這種新的模式,創(chuàng)造一種新的考
27、試環(huán)境,提高考試工作效率和標(biāo)準(zhǔn)化水平,使學(xué)校管理者、教師和學(xué)生可以在任何時(shí)候、任何地點(diǎn)通過計(jì)算機(jī)進(jìn)行考試?;谶@些優(yōu)點(diǎn),我們開始著手開發(fā)在線考試系統(tǒng)。</p><p><b> 1.3 實(shí)現(xiàn)技術(shù)</b></p><p><b> 硬件平臺(tái)</b></p><p> CPU:Intel(R) Core(TM) i3&l
28、t;/p><p><b> 內(nèi)存:2G</b></p><p><b> 硬盤:250G</b></p><p><b> 軟件平臺(tái)</b></p><p> 操作系統(tǒng):Windows 7</p><p> 數(shù)據(jù)庫:Microsoft Office
29、 Access 2003/Microsoft SQL Sever 2005</p><p> 開發(fā)環(huán)境:Microsoft .NET Framework 3.5</p><p> 開發(fā)工具:Microsoft Visual Studio 2010</p><p><b> 開發(fā)語言:C#語言</b></p><p>
30、;<b> 1.4 需求分析</b></p><p> 傳統(tǒng)的學(xué)校教學(xué)中,進(jìn)行一場考試,要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、評(píng)改試卷、講評(píng)試卷和分析試卷,這是一個(gè)繁雜的過程,需要大量人力、物力與時(shí)間的投入,已經(jīng)越來越不適應(yīng)學(xué)校信息化建設(shè)與現(xiàn)代教學(xué)的需要[9]。尤其在遠(yuǎn)程網(wǎng)絡(luò)教學(xué)中,學(xué)生分布廣,不易統(tǒng)一集中安排考試,給校方和學(xué)生帶來了眾多的不便。而在線考試系統(tǒng),正是信息化建設(shè)
31、的產(chǎn)物,它是傳統(tǒng)考場的延伸。它可以利用互聯(lián)網(wǎng)絡(luò)和局域網(wǎng),隨時(shí)隨地的對(duì)學(xué)生進(jìn)行考試,加上數(shù)據(jù)庫技術(shù)的利用大大簡化了傳統(tǒng)考試的過程,因此在線考試是電子化教學(xué)的不可缺少的輔助手段。在當(dāng)今信息時(shí)代,計(jì)算機(jī)技術(shù)與網(wǎng)絡(luò)技術(shù)越來越廣地應(yīng)用于各個(gè)領(lǐng)域,改變著人們的學(xué)習(xí)、工作、生活乃至思維方式,也引起了教育領(lǐng)域的重大變革[10]。將計(jì)算機(jī)與網(wǎng)絡(luò)技術(shù)應(yīng)用于現(xiàn)代高等教育中,是現(xiàn)代高等教育發(fā)展的需要,也是改革教育模式,提高學(xué)校教學(xué)效果和教學(xué)效率、提高科研和管理
32、水平的必要手段。</p><p> 現(xiàn)在很多高校都配備了大量先進(jìn)的計(jì)算機(jī)設(shè)備,聯(lián)通了局域網(wǎng),具備了無紙化在線考試方式的基本條件,硬件上完全具備了計(jì)算機(jī)隨機(jī)抽題、臨時(shí)組卷、自動(dòng)評(píng)分、回收成績的條件,我們著手設(shè)計(jì)開發(fā)一個(gè)基于C\S模式的在線考試系統(tǒng)。</p><p> 本系統(tǒng)開發(fā)的具體目標(biāo)為:①能將考生信息保存在數(shù)據(jù)庫中,并支持考生信息的增刪修改。②管理員事先所擬試題, 亦能保存在數(shù)據(jù)庫中
33、,并支持試題的增刪修改。③考生登錄后,自動(dòng)生成題目,組成試卷。④學(xué)生自點(diǎn)擊開始答題按鈕,即進(jìn)入考試計(jì)時(shí),學(xué)生在計(jì)算機(jī)上完成答題。⑤自動(dòng)控制考試時(shí)間。⑥試后自動(dòng)評(píng)分,計(jì)算考試成績。⑦支持試后考生成績查詢。⑧具有方便、簡單的界面,有較高的安全性和穩(wěn)定性。</p><p><b> 1.5 可行性分析</b></p><p> 可行性分析,是在系統(tǒng)調(diào)查的基礎(chǔ)上,針對(duì)新系
34、統(tǒng)的開發(fā)是否具備必要性和可能性,對(duì)新系統(tǒng)的開發(fā)從技術(shù)、經(jīng)濟(jì)、社會(huì)的方面進(jìn)行分析和研究,以避免投資失誤,保證新系統(tǒng)的開發(fā)成功[11]??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。該系統(tǒng)的可行性分析包括以下幾個(gè)方面的內(nèi)容。</p><p> (1)經(jīng)濟(jì)可行性:主要是對(duì)項(xiàng)目的經(jīng)濟(jì)效益進(jìn)行評(píng)價(jià),本系統(tǒng)作為一個(gè)畢業(yè)設(shè)計(jì),無需開發(fā)經(jīng)費(fèi),所以本系統(tǒng)在經(jīng)濟(jì)上是可行的。</p><
35、p> (2) 技術(shù)上的可行性:技術(shù)上的可行性分析主要分析技術(shù)條件能否順利完成開發(fā)工作,硬、軟件能否滿足開發(fā)者的需要等。該管理系統(tǒng)采用了C/S模式進(jìn)行開發(fā),結(jié)合了Internet技術(shù)。數(shù)據(jù)庫服務(wù)器選用Access數(shù)據(jù)庫,它能夠處理大量數(shù)據(jù),同時(shí)保持?jǐn)?shù)據(jù)的完整性并提供許多高級(jí)管理功能。它的靈活性、安全性和易用性為數(shù)據(jù)庫編程提供了良好的條件。因此,系統(tǒng)的軟件開發(fā)平臺(tái)已成熟可行。硬件方面,科技飛速發(fā)展的今天,硬件更新的速度越來越快,容量
36、越來越大,可靠性越來越高,價(jià)格越來越低,其硬件平臺(tái)完全能滿足此系統(tǒng)的需要。</p><p> (3)時(shí)機(jī)可行性:目前,大學(xué)的校園網(wǎng)絡(luò)覆蓋了教學(xué)區(qū)和學(xué)生區(qū)的主要建筑物及部分家屬宿舍,學(xué)校良好的網(wǎng)絡(luò)設(shè)施為開發(fā)使用網(wǎng)絡(luò)考試系統(tǒng)提供了堅(jiān)實(shí)的基礎(chǔ)。</p><p> (4)管理上的可行性:主要是教務(wù)處管理人員進(jìn)行管理,現(xiàn)有的管理制度和方法科學(xué),規(guī)章制度齊全,為系統(tǒng)的建設(shè)提供了制度保障。 <
37、/p><p> 綜上所述,此系統(tǒng)開發(fā)目標(biāo)已明確,在技術(shù)和經(jīng)濟(jì)等方面都可行,并且投入少、見效快。因此系統(tǒng)的開發(fā)是完全可行的。</p><p> 1.6 論文框架及主要內(nèi)容</p><p> 第一章:緒論。主要包括研究背景、意義、目的,以及實(shí)現(xiàn)技術(shù)、需求分析、可行性分析。</p><p> 第二章:系統(tǒng)總體設(shè)計(jì)。包括系統(tǒng)功能結(jié)構(gòu)分析,用例和系
38、統(tǒng)流程圖。</p><p> 第三章:數(shù)據(jù)庫設(shè)計(jì)。包括數(shù)據(jù)庫分析,數(shù)據(jù)庫概念設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì)。</p><p> 第四章:客戶端——在線考試系統(tǒng)詳細(xì)設(shè)計(jì)。包括考生登錄界面、客戶端主界面、個(gè)人信息維護(hù)界面、密碼修改界面、考試界面、成績查詢界面的窗體設(shè)計(jì)及代碼分析。</p><p> 第五章:服務(wù)器端——后臺(tái)管理系統(tǒng)詳細(xì)設(shè)計(jì)。包括管理員登錄界面、后臺(tái)管理主界面、
39、管理員信息維護(hù)界面、密碼修改界面、試題維護(hù)界面、考生信息維護(hù)界面、成績查詢界面的窗體設(shè)計(jì)及代碼分析。</p><p> 第六章:結(jié)論和展望。包括本次論文的完成結(jié)果分析及改進(jìn)方法。</p><p><b> 2 系統(tǒng)總體設(shè)計(jì)</b></p><p> 2.1 系統(tǒng)結(jié)構(gòu)功能</p><p> 本系統(tǒng)基于C/S模式,即
40、Client/Sever模式,所以本系統(tǒng)主要分為兩大模塊:</p><p> Client端——考試模塊;Sever端——后臺(tái)管理模塊。</p><p> 在線考試系統(tǒng)功能結(jié)構(gòu)如圖2.1所示。</p><p> 圖2.1 系統(tǒng)功能結(jié)構(gòu)圖</p><p> 2.1.1 考試模塊</p><p> 在本模塊中,已
41、登錄的學(xué)生可以先完善個(gè)人資料,再選擇在線考試??荚囘^程中系統(tǒng)自動(dòng)倒計(jì)時(shí),提交試卷答案后自動(dòng)閱卷,同時(shí)把一些相關(guān)信息提交到服務(wù)器端,供以后其它模塊使用。學(xué)生提交答案之后,系統(tǒng)自動(dòng)對(duì)照數(shù)據(jù)庫的正確答案算出分?jǐn)?shù),并將成績提交到數(shù)據(jù)庫??忌鷧⒓油昕荚囈院?,管理員能對(duì)所有成績進(jìn)行查詢,并可以刪除指定紀(jì)錄。學(xué)生只能登錄查看自己的考試記錄和成績。</p><p> 2.1.2 后臺(tái)管理模塊</p><p&
42、gt; 此模塊只對(duì)管理員用戶開放。在此模塊中,管理員用戶可以修改學(xué)生信息、創(chuàng)建試卷、對(duì)試卷進(jìn)行維護(hù)、查詢學(xué)生以往考試成績等功能。因考試系統(tǒng)功能所限,在試卷的維護(hù)過程中只允許錄入選擇、判斷型題目。錄入題目過程中,要求教師同時(shí)給出每題正確答案,并可隨時(shí)對(duì)錄入的試題進(jìn)行修改。教師可以根據(jù)上課的進(jìn)度,隨時(shí)添加新一期的考試。添加完畢后,由系統(tǒng)自動(dòng)從相應(yīng)的題庫中抽取設(shè)定的試題,生成試卷。</p><p> 2.2 系統(tǒng)U
43、ML用例</p><p> 用例圖主要用來描述“用戶、需求、系統(tǒng)功能單元”之間的關(guān)系。它展示了一個(gè)外部用戶能夠觀察到的系統(tǒng)功能模型圖。作用是幫助開發(fā)人員以一種可視化的方式理解系統(tǒng)的功能需求。用例圖包含的主要元素如下:</p><p> 1. 參與者(Actor)</p><p> 表示與應(yīng)用程序或系統(tǒng)進(jìn)行交互的用戶、組織或外部系統(tǒng)。用一個(gè)小人表示。&
44、lt;/p><p> 2. 用例(Use Case)</p><p> 用例就是外部可見的系統(tǒng)功能,對(duì)系統(tǒng)提供的服務(wù)進(jìn)行描述。用橢圓表示。</p><p><b> 3.關(guān)系</b></p><p> 用例圖中涉及的關(guān)系有:關(guān)聯(lián)、泛化、包含、擴(kuò)展。</p><p> 2.2.1 管
45、理員UML用例</p><p> 管理員UML用例如圖2.2所示。</p><p> 圖2.2 管理員用例圖</p><p> 它包括參與者管理員,用小人表示;系統(tǒng)提供的服務(wù),即用例,用橢圓表示;以及參與者與用例之間的關(guān)系,用箭頭表示。該用例圖表明管理員可以參與的系統(tǒng)功能有:登錄,個(gè)人信息維護(hù),學(xué)生信息管理,試題管理,系統(tǒng)管理,考試成績管理。</p>
46、;<p> 2.2.2 學(xué)生UML用例</p><p> 學(xué)生UML用例如圖2.3所示。</p><p> 圖2.3 學(xué)生用例圖</p><p> 它包括參與者學(xué)生,用小人表示;系統(tǒng)提供的服務(wù),即用例,用橢圓表示;以及參與者與用例之間的關(guān)系,用箭頭表示。該用例圖表明學(xué)生可以參與的系統(tǒng)功能有:系統(tǒng)登錄,個(gè)人信息維護(hù),獲取試題,完成答題,查看成績。
47、</p><p><b> 2.3 系統(tǒng)流程圖</b></p><p> 在線考試系統(tǒng)的流程圖如圖2.4所示。</p><p> 用戶登錄,首先進(jìn)行身份識(shí)別,只有合法的用戶才能登錄,身份識(shí)別不合法則重新回到身份識(shí)別模塊。身份識(shí)別合法后接下來判斷身份,學(xué)生進(jìn)入考試系統(tǒng)主界面,管理員進(jìn)入后臺(tái)管理主界面。</p><p>
48、; 考試系統(tǒng)主界面包含三個(gè)模塊:個(gè)人信息維護(hù),在線考試,查看考試成績,在線考試又包含閱讀考試協(xié)議,開始考試,提交試卷三個(gè)模塊。</p><p> 后臺(tái)管理主界面包含四個(gè)模塊:個(gè)人信息維護(hù),考生信息管理,試題信息管理,考生成績管理。</p><p> 圖2.4 系統(tǒng)流程圖</p><p><b> 3 數(shù)據(jù)庫設(shè)計(jì)</b></p>
49、;<p> Access數(shù)據(jù)庫具有強(qiáng)大的數(shù)據(jù)管理與處理能力、具有較高的安全性能、支持遠(yuǎn)程存取等,同時(shí)可做到與ASP.NET前臺(tái)開發(fā)工具的無縫連接[12],符合考試系統(tǒng)的需求,因此選擇Access 2003作為服務(wù)器的后臺(tái)數(shù)據(jù)庫。</p><p><b> 3.1 數(shù)據(jù)庫分析</b></p><p> ASP.NET本身無法存取數(shù)據(jù)庫,必須與ADO.
50、NET配合起來才能存取數(shù)據(jù)庫記錄。ADO.NET對(duì)象可以快速簡單地存取各種數(shù)據(jù),其對(duì)象模型中有六個(gè)主要的組件,分別是OleDbConnection對(duì)象、OleDbCommand對(duì)象、OleDbDataAdapter對(duì)象、DataSet對(duì)象、DataTable對(duì)象以及OleDbDataReader對(duì)象[13]。這些組件中負(fù)責(zé)建立聯(lián)機(jī)和數(shù)據(jù)操作的部分稱為數(shù)據(jù)操作組件(Managed Providers),分別由OleDbConnection
51、對(duì)象、OleDbCommand對(duì)象、OleDbDataAdapter對(duì)象、DataTable對(duì)象以及OleDbDataReader對(duì)象所組成。數(shù)據(jù)操作組件最主要的作用是當(dāng)作DataSet對(duì)象以及數(shù)據(jù)源之間的橋梁,負(fù)責(zé)將數(shù)據(jù)源中的數(shù)據(jù)取出后植入DataSet對(duì)象中以及將數(shù)據(jù)存回?cái)?shù)據(jù)源的工作。各組件主要運(yùn)作方式及功能如下:</p><p> (1)OleDbConnection對(duì)象:建立程序和數(shù)據(jù)源之間的聯(lián)機(jī),以便
52、存取數(shù)據(jù)源內(nèi)的數(shù)據(jù)。</p><p> (2)OleDbCommand對(duì)象:通過OleDbConnection對(duì)象對(duì)數(shù)據(jù)源下達(dá)操作數(shù)據(jù)庫的命令。</p><p> (3)OleDbDataAdapter對(duì)象:用于從數(shù)據(jù)源獲取數(shù)據(jù),填充DataSet中的表和約束,并將OleDbCommand對(duì)象通過OleDbConnection對(duì)象對(duì)數(shù)據(jù)源下指令與數(shù)據(jù)源進(jìn)行互動(dòng)。</p>
53、<p> (4)DataSet對(duì)象:必須結(jié)合OleDbDataAdapter對(duì)象使用,一次讀取所有的數(shù)據(jù),可對(duì)網(wǎng)頁中顯示的數(shù)據(jù)做編輯,也可以在數(shù)據(jù)中任意移動(dòng)。</p><p> (5)DataTable對(duì)象:用于從數(shù)據(jù)庫中讀取數(shù)據(jù)到緩存。</p><p> (6)OleDbDataReader對(duì)象:必須結(jié)合OleDbCommand對(duì)象使用,一次讀取一個(gè)數(shù)據(jù),只讀且數(shù)據(jù)只能單
54、向向前移動(dòng),一般用于單獨(dú)顯示數(shù)據(jù)。</p><p> 3.2 數(shù)據(jù)庫設(shè)計(jì)步驟</p><p> 一個(gè)運(yùn)行良好的系統(tǒng)必須建立在一個(gè)設(shè)計(jì)合理的數(shù)據(jù)庫基礎(chǔ)上,如果沒有一個(gè)設(shè)計(jì)合理的數(shù)據(jù)庫模型,將會(huì)增加客戶端和服務(wù)器端程序的編程和維護(hù)的難度,并且會(huì)影響系統(tǒng)實(shí)際運(yùn)行的性能,使系統(tǒng)的功能不能完全的展現(xiàn)出來??紤]數(shù)據(jù)庫及其應(yīng)用系統(tǒng)開發(fā)全過程,將數(shù)據(jù)庫設(shè)計(jì)分為以下六個(gè)階段:</p>&l
55、t;p> (1)需求分析階段:進(jìn)行數(shù)據(jù)庫設(shè)計(jì)首先必須準(zhǔn)確了解與分析用戶需求,這是整個(gè)設(shè)計(jì)過程的基礎(chǔ)。</p><p> (2)概念結(jié)構(gòu)設(shè)計(jì)階段:是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵,它通過對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立與具體的DBMS的概念模型。</p><p> (3)邏輯結(jié)構(gòu)設(shè)計(jì)階段:邏輯結(jié)構(gòu)設(shè)計(jì)是將概念結(jié)構(gòu)轉(zhuǎn)換為DBMS所支持的數(shù)據(jù)模型,并對(duì)其進(jìn)行優(yōu)化。</p>
56、;<p> (4)數(shù)據(jù)庫物理設(shè)計(jì)階段:數(shù)據(jù)庫物理設(shè)計(jì)是為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)。</p><p> (5)數(shù)據(jù)庫實(shí)施階段:設(shè)計(jì)人員運(yùn)用DBMS提供的數(shù)據(jù)語言及其宿主語言,根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果建立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,并進(jìn)行試運(yùn)行。</p><p> (6)數(shù)據(jù)庫運(yùn)行和維護(hù)階段:數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運(yùn)行后即可投入正式運(yùn)行。
57、</p><p> 3.3 數(shù)據(jù)庫概念設(shè)計(jì)</p><p> 本系統(tǒng)比較復(fù)雜,需要保存的信息很多,所以需要規(guī)劃多個(gè)實(shí)體。本系統(tǒng)中最基本的實(shí)體有管理員登錄信息實(shí)體、考生信息實(shí)體、考試信息詳細(xì)記錄實(shí)體、考試成績實(shí)體、試題信息實(shí)體等。</p><p> ?。?)為了記錄管理員和每個(gè)學(xué)生的姓名,學(xué)號(hào),密碼,成績等信息,需要?jiǎng)?chuàng)建管理員以及學(xué)生信息表。管理員及學(xué)生信息實(shí)體E
58、-R圖如圖3.1,圖3.2所示。</p><p> 圖3.1 管理員信息實(shí)體E-R圖</p><p> 圖3.2 學(xué)生信息實(shí)體E-R圖</p><p> ?。?)為了方便統(tǒng)計(jì)每個(gè)考生每道題的答題及得分情況,需要?jiǎng)?chuàng)建考生成績?cè)敿?xì)記錄表來保存考生每道題的答題及得分結(jié)果信息??忌煽?cè)敿?xì)記錄實(shí)體E-R圖如圖3.3所示:</p><p> 圖3
59、.3 考生成績?cè)敿?xì)記錄實(shí)體E-R圖</p><p> ?。?)每種類型的題目都在發(fā)生變化,管理員需要將失去意義的考題從題庫中刪除,并添加一些新題目。創(chuàng)建試題信息表,用來存儲(chǔ)試題內(nèi)容。試題信息實(shí)體E-R圖如圖3.4所示:</p><p> 圖3.4 試題信息實(shí)體E-R圖</p><p> 3.4 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> Ac
60、cess的對(duì)象包括表、查詢、窗體、報(bào)表、頁、宏和模塊,這些對(duì)象需自行定義[14]。根據(jù)系統(tǒng)的需要本次設(shè)計(jì)的數(shù)據(jù)庫數(shù)據(jù)表包括四個(gè)方面:</p><p> 1.題庫數(shù)據(jù):可以包括判斷題,選擇題,填空題3種類型題目,包括題目的題干,選項(xiàng)和答案。</p><p> 2.管理員和學(xué)生資料信息數(shù)據(jù):包括姓名,密碼,性別,班級(jí)和學(xué)號(hào)等基本信息。</p><p> 3.成績資
61、料表數(shù)據(jù):包括學(xué)生姓名,分?jǐn)?shù),考試日期等基本數(shù)據(jù)。</p><p> 4.考試答題記錄數(shù)據(jù):包括學(xué)生姓名,考試題目,學(xué)生作答結(jié)果,正確答案,是否正確等基本信息。</p><p> 通過對(duì)系統(tǒng)的分析,以及對(duì)所需數(shù)據(jù)的統(tǒng)計(jì),設(shè)計(jì)的數(shù)據(jù)庫中包括的數(shù)據(jù)表和其相應(yīng)的功能如下:</p><p> 表3.1 系統(tǒng)數(shù)據(jù)表及其功能 </p><p>
62、根據(jù)對(duì)考試系統(tǒng)中數(shù)據(jù)的分析,得出數(shù)據(jù)庫中的數(shù)據(jù)表的字段,類型等,具體設(shè)計(jì)由以下五張表組成。</p><p> (1) 管理員信息表admin</p><p> 此表用于存放管理員的基本數(shù)據(jù)信息,包括登錄用戶名和密碼、真實(shí)姓名、身份證號(hào)、聯(lián)系方式、性別、地址。</p><p> 表3.2 管理員信息表</p><p> (2) 學(xué)生信息
63、表student</p><p> 此表用于存放學(xué)生的基本信息,包括登錄用戶名和密碼,學(xué)號(hào)、姓名、班級(jí)、性別、、聯(lián)系方式、地址以及考試狀態(tài)等。</p><p> 表3.3 學(xué)生信息表</p><p> (3)試題信息表Question</p><p> 此表用于存放試題信息,包括試題編號(hào)、試題內(nèi)容、選項(xiàng)及答案。</p>
64、<p> 表3.4 試題信息表</p><p> (4) 考試成績信息表ExamScore</p><p> 此表用于存放考生考試成績的信息,包括學(xué)生編號(hào)、考試記錄編號(hào)、學(xué)生成績、考試日期。</p><p> 表3.5 考試成績信息表</p><p> (4)考生成績?cè)敿?xì)記錄表HisScoreItem</p>
65、<p> 此表用于存放考生考試詳細(xì)記錄,包括考試記錄編號(hào)、題號(hào)、正確答案、是否答對(duì)。</p><p> 表3.6 考試成績?cè)敿?xì)記錄表</p><p> 4 客戶端——在線考試系統(tǒng)詳細(xì)設(shè)計(jì)</p><p><b> 4.1考生登錄界面</b></p><p> 考生登錄界面用于驗(yàn)證考生用戶登錄系統(tǒng)時(shí)輸
66、入的用戶名、密碼是否正確,只有合法的用戶才可以進(jìn)入系統(tǒng),考生登錄界面如圖4.1 所示。</p><p> 圖4.1 考生登錄界面</p><p><b> 核心代碼:</b></p><p> private void btnOK_Click(object sender, EventArgs e)</p><p>
67、<b> {</b></p><p><b> try</b></p><p><b> {</b></p><p> string username = txtUserName.Text.Trim();</p><p> string pwd = txtPwd.Te
68、xt.Trim();</p><p> if (username=="")</p><p><b> {</b></p><p> MsgBox.InfoShow("請(qǐng)輸入用戶名!");</p><p> txtUserName.Focus();</p>&l
69、t;p><b> return;</b></p><p><b> }</b></p><p> if (pwd=="")</p><p><b> {</b></p><p> MsgBox.InfoShow("請(qǐng)輸入密碼!&qu
70、ot;);</p><p> txtPwd.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> if (new Student().Login(username, pwd))</p><p>&l
71、t;b> {</b></p><p> new frmMain().Show();</p><p> this.Hide();</p><p><b> }</b></p><p><b> else</b></p><p><b>
72、{</b></p><p> MsgBox.InfoShow("您輸入的用戶名或密碼不正確!");</p><p> txtUserName.SelectAll();</p><p><b> return;</b></p><p><b> }</b><
73、;/p><p><b> }</b></p><p><b> }</b></p><p> 代碼分析:此段代碼是單擊“登錄”按鈕后的觸發(fā)事件,功能是:①若輸入的用戶名為空,則彈出“請(qǐng)輸入用戶名!”對(duì)話框;②若輸入的密碼為空,則彈出“請(qǐng)輸入密碼!”對(duì)話框;③若用戶名和密碼均輸入,則調(diào)用自定義的Student類中的Logi
74、n()方法,該方法的作用是建立數(shù)據(jù)庫連接,將輸入的用戶名和密碼與數(shù)據(jù)庫學(xué)生表中對(duì)應(yīng)的用戶名、密碼比較,若一致則返回true,打開考試系統(tǒng)主界面;不一致則返回false,彈出“用戶名或密碼不正確!”對(duì)話框。</p><p> 4.2 在線考試系統(tǒng)主界面</p><p> 考生輸入的用戶名、密碼正確后,即可登錄客戶端在線考試系統(tǒng)主界面,如圖4.2所示。在該界面有兩個(gè)菜單項(xiàng)“系統(tǒng)管理->
75、;個(gè)人信息維護(hù),修改密碼,退出”和“考試管理->在線考試,成績查詢”,考生進(jìn)入主界面后,可以對(duì)自己的信息進(jìn)行完善和修改,也可以為了信息安全,修改個(gè)人密碼。然后在開始考試,若已經(jīng)考試過的學(xué)生,可以查看考試記錄。</p><p> 圖4.2 在線考試系統(tǒng)主界面</p><p> 4.3 個(gè)人信息維護(hù)界面</p><p> 考生選擇菜單項(xiàng)“系統(tǒng)管理->個(gè)
76、人信息維護(hù)”后單擊,即可進(jìn)入個(gè)人信息維護(hù)界面,如圖4.3所示。若考生資料不完整,則可以完善個(gè)人資料;若資料已經(jīng)完整,考生可根據(jù)錯(cuò)誤的信息做相應(yīng)的更改。完成后單擊“保存”按鈕,彈出提示“修改成功!”則表明考生個(gè)人信息已更新至數(shù)據(jù)庫,最后單擊“關(guān)閉”按鈕。</p><p> 圖4.3 學(xué)生個(gè)人信息維護(hù)界面</p><p><b> 核心代碼:</b></p>
77、;<p> private void btnOK_Click(object sender, EventArgs e)</p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p>
78、string studentNO = txtNo.Text.Trim();</p><p> string studentName = txtName.Text.Trim();</p><p> string phone = txtPhone.Text.Trim();</p><p> string studentidno = txtCNO.Text.Trim
79、();</p><p> string address = txtAddress.Text.Trim();</p><p> string email = txtEmail.Text.Trim();</p><p> string sex = rbMan.Checked ? "男" : "女";</p>&
80、lt;p> if (studentNO == "")</p><p><b> {</b></p><p> MsgBox.InfoShow("學(xué)號(hào)不能為空!");</p><p> txtNo.Focus();</p><p><b> return;&
81、lt;/b></p><p><b> }</b></p><p> if (studentName == "")</p><p><b> {</b></p><p> MsgBox.InfoShow("姓名不能為空!");</p>
82、<p> txtName.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> student.SaveStudentInfo(Global.loginid,studentno,studentName,phone, studenti
83、dno, address, email, sex);</p><p> MsgBox.InfoShow("修改成功!");</p><p><b> } </b></p><p><b> }</b></p><p> 代碼分析:本段代碼是“保存”按鈕單擊觸發(fā)
84、事件,功能是:①學(xué)號(hào)和姓名為必填項(xiàng),若為空則彈出“請(qǐng)輸入姓名!”“請(qǐng)輸入學(xué)號(hào)!”對(duì)話框;②調(diào)用自定義Student類的SaveStudentInfo()方法,將所填信息保存進(jìn)數(shù)據(jù)庫中的學(xué)生表中。該方法的作用是建立數(shù)據(jù)庫連接,更新Stuent表中l(wèi)oginid所在行的信息。</p><p> 4.4 修改密碼界面</p><p> 考生選擇菜單項(xiàng)“系統(tǒng)管理->修改密碼”后單擊,即可
85、進(jìn)入修改密碼界面,如圖4.4所示,修改好后點(diǎn)擊“保存”按鈕。注意:考生只能修改自己的登錄密碼,登錄用戶名不可更改,只能由管理員事先設(shè)置好。若考試忘記密碼,可以及時(shí)聯(lián)系管理員,對(duì)密碼進(jìn)行重置。</p><p> 圖4.4 修改密碼界面</p><p><b> 核心代碼:</b></p><p> private void btnOK_Cl
86、ick(object sender, EventArgs e)</p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p> string opwd = txtOldpwd.Text.Trim()
87、;</p><p> string pwd = txtPwd.Text.Trim();</p><p> string pwd2 = txtPwd2.Text.Trim();</p><p> if ("" == opwd)</p><p><b> {</b></p><
88、p> MsgBox.InfoShow("請(qǐng)輸入舊密碼! ");</p><p> txtOldpwd.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> if ("" ==
89、 pwd)</p><p><b> {</b></p><p> MsgBox.InfoShow("請(qǐng)輸入新密碼!");</p><p> txtPwd.Focus();</p><p><b> return;</b></p><p><
90、b> }</b></p><p> if ("" == pwd2)</p><p><b> {</b></p><p> MsgBox.InfoShow("請(qǐng)確認(rèn)新密碼! ");</p><p> txtPwd2.Focus();</p>
91、<p><b> return;</b></p><p><b> }</b></p><p> if (pwd != pwd2)</p><p> { MsgBox.InfoShow("兩次輸入的新密碼不一致!");</p><p> txtPw
92、d.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> if (opwd != Global.loginpwd)</p><p> { MsgBox.InfoShow("您輸入的舊密碼不正確!&quo
93、t;);</p><p> txtPwd.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> new Student().UptPwd(pwd);</p><p> Global.loginpw
94、d = pwd;</p><p> MsgBox.InfoShow("修改成功!");</p><p> this.Close();</p><p><b> }</b></p><p> 代碼分析:本段代碼是“確定”按鈕單擊事件,功能是:①確認(rèn)舊密碼,新密碼,確認(rèn)密碼三欄都不能為空;②驗(yàn)證舊
95、密碼正確;③驗(yàn)證新密碼和確認(rèn)密碼相同;④在滿足①②③的條件下,調(diào)用自定義類Student類的UptPwd()方法,建立數(shù)據(jù)庫連接,用新輸入的密碼更新數(shù)據(jù)庫Student表中的相應(yīng)的pwd值。</p><p> 4.5 考試協(xié)議界面</p><p> 考生選擇菜單項(xiàng)“考試管理->在線考試”后單擊,即會(huì)出現(xiàn)考試協(xié)議界面,如圖4.5所示。請(qǐng)考試務(wù)必仔細(xì)閱讀考試協(xié)議的內(nèi)容,在閱讀完畢并且
96、接受考試協(xié)議的前提下,再單擊界面右下方“開始考試”按鈕,進(jìn)入在線考試界面,開始考試。</p><p> 圖4.5 考生須知界面</p><p><b> 核心代碼:</b></p><p> private void btnStart_Click(object sender, EventArgs e)</p><p&g
97、t;<b> {</b></p><p> frmOnline frmonline = new frmOnline(); //定義考試主窗體</p><p> frmonline.ShowDialog(); //顯示考試主窗體</p><p> this.Close();
98、 //關(guān)閉窗體</p><p><b> }</b></p><p> 代碼分析:本段代碼是“開始考試”按鈕單擊事件,功能是打開考試窗體,關(guān)閉當(dāng)前窗體。</p><p> 4.6 在線考試界面</p><p> 考生閱讀完畢考試協(xié)議后,單擊“開始考試”按鈕即可進(jìn)入在線考試界面。如圖4.6所示,該界
99、面主要分為4個(gè)欄:操作導(dǎo)航欄、考試信息欄、試題信息欄、當(dāng)前答案欄。單擊操作導(dǎo)航欄中的“開始考試”按鈕,試題區(qū)即生成試卷,計(jì)時(shí)器開始計(jì)時(shí),此時(shí)考生開始答題,同時(shí)“開始考試”按鈕隱藏,答題完畢單擊“交卷”按鈕,可立即顯示考試成績。在考試信息欄中,管理員可以設(shè)置考試題目的類型分值等說明。試題信息欄顯示當(dāng)前題目的內(nèi)容及選項(xiàng)。當(dāng)前答案欄顯示考生題目作答情況,如未作答則顯示“未作答”,已作答的題目會(huì)顯示考生給出的答案。</p><
100、;p> 圖4.6 在線考試界面</p><p><b> 核心代碼:</b></p><p> private void btnStart_Click_1(object sender, EventArgs e)</p><p> { pnBody.Visible = true;</p><p>
101、 btnSubmit.Visible = true;</p><p> lblTime.Visible = true;</p><p> btnStart.Visible = false;</p><p> lblTime.Text = "";</p><p> label1.ForeColor = Color.G
102、ray;</p><p><b> //獲取題目加載</b></p><p> dt = new Question().GetQuestion("20");</p><p> LoadQuestion(0);</p><p> currQ = 1;</p><p>
103、timer1.Enabled = true;</p><p> timer1.Interval = 1000;</p><p> timer1.Start();</p><p> string strSql = "update student set state= 1 where loginid = '" + Global.logi
104、nid + "'";</p><p> DBHelper.ExecuteNoeQuery(strSql);</p><p><b> }</b></p><p> private void LoadQuestion(int num)</p><p> {
105、</p><p> lblQuestion.Text = "第" + (num + 1) + "題: " + dt.Rows[num]["question"].ToString();</p><p> lblOption_A.Text = "A." + dt.Rows[num]["OptionA&
106、quot;].ToString();</p><p> lblOption_B.Text = "B." + dt.Rows[num]["OptionB"].ToString();</p><p> lblOption_C.Text = "C." + dt.Rows[num]["OptionC"].ToStr
107、ing();</p><p> lblOption_D.Text = "D." + dt.Rows[num]["OptionD"].ToString();</p><p> lblQuestion.ForeColor = Color.Green;</p><p> if (num % 2 == 0)</p>
108、<p><b> {</b></p><p> lblQuestion.ForeColor = Color.Black;</p><p><b> }</b></p><p><b> }</b></p><p> 代碼分析:本段代碼是“開始考試”按鈕單擊
109、事件。功能是:①調(diào)用自定義類Question類的GetQuestion()方法,該方法的作用是建立數(shù)據(jù)庫連接,將數(shù)據(jù)庫Question表中的內(nèi)容放在DataTable對(duì)象dt中,供自定義方法LoadQuestion()使用;②加載第一題到窗體中顯示;③開始倒計(jì)時(shí);④調(diào)用自定義類DBHelper類中的ExecuteNoeQuery()方法,建立數(shù)據(jù)庫連接,將Student表中的State更新為“1”,表示此考生狀態(tài)為正在考試。</p
110、><p> 4.7 成績查詢界面</p><p> 考生選擇菜單項(xiàng)“考試管理->成績查詢”后單擊,即可進(jìn)入成績查詢界面,如圖4.7所示。成績查詢界面分為兩塊,左側(cè)為考生考試記錄,包括記錄編號(hào)、考生姓名、成績、考試日期;右側(cè)為考試情況詳細(xì)記錄,包括試題內(nèi)容、每道題的選擇情況、是否正確等??荚噯螕糇髠?cè)的一條考試記錄,則右側(cè)會(huì)顯示對(duì)應(yīng)的詳細(xì)記錄,如圖4.8所示。</p>&l
111、t;p> 圖4.7 成績查詢界面</p><p><b> 核心代碼:</b></p><p> private void frmScoreSearch_Load(object sender, EventArgs e)</p><p><b> {</b></p><p> Data
112、Table dt = qt.GetQuestionHis(Global.studentid);</p><p> lvHis.GridLines = true;</p><p> lvHis.FullRowSelect = true; </p><p> lvHis.View = View.Details; </p><p> lvH
113、is.Scrollable = true;</p><p> lvHis.MultiSelect = false; </p><p> lvHis.HeaderStyle = ColumnHeaderStyle.Clickable;</p><p> lvHis.Columns.Add("姓名", 55, HorizontalAlignme
114、nt.Center);</p><p> lvHis.Columns.Add("考試時(shí)間", 130, HorizontalAlignment.Center);</p><p> lvHis.Columns.Add("分?jǐn)?shù)", 45, HorizontalAlignment.Right);</p><p> ListVi
115、ewItem itme;</p><p> for (int i = 0; i < dt.Rows.Count; i++)</p><p><b> {</b></p><p> itme = new ListViewItem();</p><p> itme.SubItems.Clear();</p
116、><p> itme.Tag = dt.Rows[i]["hisid"].ToString();</p><p> itme.Text = dt.Rows[i]["studentname"].ToString();</p><p> itme.SubItems.Add(dt.Rows[i]["dateStr&quo
117、t;].ToString());</p><p> itme.SubItems.Add(dt.Rows[i]["score"].ToString());</p><p> lvHis.Items.Add(itme);</p><p><b> }</b></p><p><b> }
118、</b></p><p> 代碼分析:本段代碼是“成績查詢界面”的加載事件。功能是:調(diào)用自定義類Question類的GetQuestionHis()方法,建立數(shù)據(jù)庫連接,獲取該考生的考試歷史記錄詳情表中的信息,并顯示在窗體控件中。</p><p> 5 服務(wù)器端——后臺(tái)管理系統(tǒng)詳細(xì)設(shè)計(jì)</p><p> 5.1 管理員登錄界面</p>
119、<p> 此界面只對(duì)管理員用戶開放。管理員類用戶可以對(duì)試題庫進(jìn)行增加,刪除,修改等操作。檢查系統(tǒng)管理員用戶在登錄的時(shí)候輸入值是否正確,然后給出相應(yīng)的提示,確保只有系統(tǒng)注冊(cè)的管理員才能登錄,保證了系統(tǒng)運(yùn)行的安全性。后臺(tái)管理模塊登錄界面如圖5.1所示。</p><p> 圖5.1 管理員登錄界面</p><p><b> 核心代碼:</b></p&
120、gt;<p> private void btnOK_Click(object sender, EventArgs e)</p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p>
121、 string username = txtUserName.Text.Trim();</p><p> string pwd = txtPwd.Text.Trim();</p><p> if (username=="")</p><p><b> {</b></p><p> MsgBo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于c_s模式下云打印系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于c_s模式的倉庫管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于C-S模式的高校在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于c_s的人事管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)(論文)在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)----基于bs模式的java在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)--在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于B-S模式在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)設(shè)計(jì)--基于javaweb技術(shù)的在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 基于B-S模式的在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 本科畢業(yè)設(shè)計(jì)(論文)-c語言在線考試系統(tǒng)的設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 基于c-s模式的網(wǎng)上考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(圖文)
- 基于c 的酒店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)論文 基于web在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于bs模式的在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 基于B-S模式的網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)論文-基于javaweb的在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
評(píng)論
0/150
提交評(píng)論