數(shù)據(jù)庫試題自動批改系統(tǒng)畢業(yè)設(shè)計_第1頁
已閱讀1頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  論文題目 數(shù)據(jù)庫試題自動批改系統(tǒng)</p><p><b>  姓 名 </b></p><p>  學 院 </p><p>  專 業(yè) 計算機網(wǎng)絡(luò)技術(shù)</p><p>  指導教師 講師</p><p><b> 

2、 備 注</b></p><p>  2011 年 9月6日</p><p>  數(shù)據(jù)庫試題自動批改系統(tǒng)</p><p>  ——題庫、考試子模塊</p><p><b>  2011年9月</b></p><p>  Database Test Automatic Markin

3、g System </p><p>  畢業(yè)設(shè)計(論文)任務(wù)書</p><p>  數(shù)據(jù)庫試題自動批改系統(tǒng)</p><p><b>  摘 要</b></p><p>  隨著計算機和網(wǎng)絡(luò)技術(shù)的發(fā)展,計算機在各行各業(yè)都得到了廣泛的應用。在教學領(lǐng)域,計算機除被大量用于輔助教學以外,還被大量用于輔助測試中。計算機輔助測試涉

4、及各種技術(shù),如隨機抽題、自動組卷、自動批改等。其中自動批改是難點技術(shù)之一,被廣泛關(guān)注。當然針對判斷題、單選題、多選題、具有一個或多個確定答案的填空題的自動批改技術(shù)已相當成熟,被廣泛應用到計算機應用能力考試、高考等大規(guī)模的考試中。而諸如名詞解釋、簡答題、論述題、SQL語句題等主觀題,由于其自動批改涉及人工智能、模式識別和自然語言理解等方面的理論,所以至今仍沒有出現(xiàn)通用的方法,對他們的批改還是靠人工。但人工批改受很多主觀因素的影響,使得批改

5、過程標準不斷變化,而利用計算機進行批改時,標準會始終保持一致,且批改速度快。因此數(shù)據(jù)庫試題自動批改系統(tǒng)的實現(xiàn)具有很重大的現(xiàn)實意義。</p><p>  針對這種現(xiàn)狀,本文設(shè)計并實現(xiàn)數(shù)據(jù)庫試題自動批改系統(tǒng),它可以幫助教師完成數(shù)據(jù)庫學科的一個考試從題目設(shè)計,考試安排,考試實施,考卷批改到分數(shù)統(tǒng)計總結(jié)的所有工作。所有的考試數(shù)據(jù)和其他數(shù)據(jù)需要使用數(shù)據(jù)庫技術(shù)進行存儲和管理,并且具有一定的安全性保障。</p>

6、<p>  本文分以下幾部分:緒論,關(guān)鍵技術(shù),系統(tǒng)分析,系統(tǒng)設(shè)計,系統(tǒng)實現(xiàn),系統(tǒng)測試及結(jié)論。緒論中簡要說明了系統(tǒng)設(shè)計的目的、意義、范圍、研究設(shè)想、方法、選題依據(jù)等;關(guān)鍵技術(shù)介紹了具體實現(xiàn)是需解決的一些技術(shù);系統(tǒng)分析介紹了系統(tǒng)各模塊的功能需求及開發(fā)環(huán)境;系統(tǒng)設(shè)計介紹了系統(tǒng)設(shè)計的指導思想,數(shù)據(jù)庫設(shè)計,系統(tǒng)模塊的設(shè)計。系統(tǒng)實現(xiàn)包括環(huán)境配置、主要界面、程序的流程圖、代碼設(shè)計等;系統(tǒng)測試通過設(shè)計測試方案、測試用例實現(xiàn)對系統(tǒng)的全面測試;總

7、的來說,闡述了基于Struts 2.0框架,使用MySQL數(shù)據(jù)庫,采用MVC設(shè)計模式完成數(shù)據(jù)庫試題自動批改系統(tǒng)題庫、考試子模塊的分析、設(shè)計與實現(xiàn)。</p><p>  關(guān)鍵詞:Struts 2.0框架,MySQL,MVC</p><p>  Database Test Automatic Marking System </p><p><b>  Abst

8、ract</b></p><p>  With the computer and network technology, computer industries have been widely used. In the field of teaching, computer assisted instruction than is used extensively for other, was al

9、so used extensively for secondary testing. Computer Aided Test involve various techniques such as random question, automatic generation, automatic marking, etc.. Of course, for the judge questions, multiple choice, multi

10、ple choice, with one or more answers to fill in the blank to determine the automatic marking tech</p><p>  In view of this situation, this article questions the database is designed and implemented automatic

11、 correction system, which can help teachers to complete the database as a test subject title of the design, examination arrangements, test implementation, test paper marking to score statistical summary of all the work.

12、All the test data and other data need to use database technology to store and manage, and protect the safety of certain.</p><p>  Introduction This paper points the following sections, key technologies, syst

13、em analysis, system design, system implementation, system testing, the conclusion of seven parts. Introduction briefly describes the system design purpose, according to other topics; system designed for guiding the syste

14、m design, database design, system modules. System implementation, the main interface, process flow charts, code and design; Overall, the described Struts2.0 framework, using the MySQL database, using MVC</p><p

15、><b>  .</b></p><p>  Key words: Struts2.0 Framework, MySQL, MVC</p><p><b>  目 錄</b></p><p>  畢業(yè)設(shè)計(論文)任務(wù)書I</p><p><b>  摘 要II</b&g

16、t;</p><p>  AbstractIII</p><p>  第1章 緒 論1</p><p>  1.1論文研究主要內(nèi)容1</p><p>  1.2 國內(nèi)外現(xiàn)狀1</p><p>  第2章 關(guān)鍵技術(shù)介紹3</p><p>  2.1 Struts2框架技術(shù)3</

17、p><p>  2.1.1 MVC簡介3</p><p>  第3章 系統(tǒng)分析4</p><p><b>  3.1框架概述4</b></p><p>  3.2系統(tǒng)功能概述4</p><p>  3.2.1用戶角色分配4</p><p>  3.2.2模塊功能描述

18、5</p><p><b>  3.3系統(tǒng)環(huán)境7</b></p><p>  3.3.1 開發(fā)環(huán)境7</p><p>  第4章 系統(tǒng)設(shè)計8</p><p>  4.1 設(shè)計指導思想和原則8</p><p>  4.1.1 指導思想8</p><p>  4.1.

19、2 軟件設(shè)計原則8</p><p>  4.2系統(tǒng)的功能結(jié)構(gòu)設(shè)計9</p><p>  4.2.1 系統(tǒng)的功能模塊劃分9</p><p>  第5章 系統(tǒng)實現(xiàn)11</p><p>  5.1 環(huán)境配置11</p><p>  5.1.1 web.xml文件配置11</p><p> 

20、 5.1.2 Struts.xml文件配置11</p><p>  5.1.3 Struts.properties文件配置11</p><p>  5.2 數(shù)據(jù)庫試題自動批改系統(tǒng)題庫管理子模塊界面12</p><p>  5.2.1 題目添加12</p><p>  5.2.2 題目修改13</p><p>

21、  5.2.3 題目刪除15</p><p>  第6章 系統(tǒng)測試16</p><p>  6.1 測試目標16</p><p>  6.2 測試環(huán)境16</p><p>  6.3 測試流程16</p><p>  6.4 測試結(jié)論17</p><p>  第7章 結(jié) 論18&l

22、t;/p><p><b>  參考文獻19</b></p><p><b>  致 謝20</b></p><p><b>  第1章 緒 論</b></p><p>  現(xiàn)階段,學校與社會上各種考試大都采用傳統(tǒng)的考試方式,在此方式下,組織一次考試至少要經(jīng)過五個步驟,即人工

23、出卷,考生考試,人工閱卷,成績評估和試卷分析。顯然,隨著考試類型的不斷增加及考試要求的不斷提高,教師的工作量會越來越大,并且其工作將是一件十分繁瑣和非常容易出錯的事情,可以傳統(tǒng)的考試方式已經(jīng)不能適應現(xiàn)代考試的需要。</p><p>  隨著計算機應用的迅猛發(fā)展,網(wǎng)絡(luò)應用不斷擴大,且這些應用正逐步深入到千家萬戶。人們迫切的要求利用這些技術(shù)來進行在線考試,以減輕教師的工作負擔及提高工作效率,與此同時也提高了考試的質(zhì)量

24、,從而使考試更趨于公正、客觀、更加激發(fā)學生的學習興趣。</p><p>  選擇該題目的目的是利用計算機的準確性和高效性,來實現(xiàn)在線考試,在線批改。同時針對題目的選擇也有一個突破,多角度,多策略,多選擇的出題方式,一改以往傳統(tǒng)的固定出題模式,這樣更加的靈活。該系統(tǒng)就是為了更加方便、高效率的進行數(shù)據(jù)庫測試及批改。</p><p>  數(shù)據(jù)庫試題自動批改系統(tǒng)是一個根據(jù)現(xiàn)有的考試系統(tǒng)的狀況,沒有

25、達到的功能需求,進一步完善、提升數(shù)據(jù)庫試題自動批改系統(tǒng)的功能而設(shè)計的系統(tǒng)。希望該系統(tǒng)能夠應用到學校的數(shù)據(jù)庫課程中去,為老師和同學帶來更多的方便。</p><p>  1.1論文研究主要內(nèi)容</p><p>  數(shù)據(jù)庫試題自動批改系統(tǒng)旨在實現(xiàn)考試的無紙化管理,對數(shù)據(jù)庫考試可以通過互聯(lián)網(wǎng)絡(luò)或局域網(wǎng)進行,方便老師的管理,也方便了考生,我主要負責題庫考試子模塊,包括試題的管理,試題的添加,試題的刪

26、除,試題的修改,試題的查詢;考試管理,答題基本信息設(shè)置,學生試題信息顯示,學生試題的批改及打分并顯示考試的結(jié)果信息。本論文主要介紹了對數(shù)據(jù)庫試題自動批改系統(tǒng)題庫、考試子模塊的分析、設(shè)計和開發(fā)的全過程,運用面向?qū)ο蟮姆治雠c設(shè)計方法進行了詳細說明并予以實現(xiàn)。</p><p><b>  1.2 國內(nèi)外現(xiàn)狀</b></p><p>  國外很早就廣泛的應用了客觀題的自動批改

27、系統(tǒng),同時開始對主觀題自動批改這個難題展開了廣泛的研究,取得了一些成果,并開發(fā)出Project Essay Grade(PEG),Latent Semantic Analysis(LSA),E-rater,其中有的已進入使用階段,并取得了較好的批改效果。</p><p>  國外對于主觀題的自動批改技術(shù)的研究可以分為兩大類:一是對于任意文本答案即文章寫作類的主觀題的自動批改,一般采用抽取答案中的淺層結(jié)構(gòu)信息或語義

28、信息,根據(jù)學生的遣詞造句情況給以得分,或設(shè)置若干可接受答案模板和不可接受答案模板,將學生的答案與模板進行匹配,根據(jù)兩者的匹配程度計算出得分。二是對簡短文字的自動批改,一般是先將參考答案進行適應的表示,然后計算學生答案與參考答案之間的匹配程度給出得分。</p><p>  國內(nèi)對主觀題自動批改技術(shù)的研究起步較晚,成熟的技術(shù)也不多,由于漢語不同于英語等歐式語言,沒有形態(tài)時態(tài)的變化,詞與詞之間也沒有天然的分隔標記,因此

29、,對漢語的自然語言理解和處理面臨更多困難。目前已有的研究都是針對簡單類主管題如填空題、簡答題等的自動批改,且沒有使用的系統(tǒng)出臺。這些研究主要有:湘潭大學信息工程學院的李輝陽等研究了有限領(lǐng)域簡述文字的自動判讀問題,提出以基于關(guān)系的帶權(quán)匹配技術(shù)實現(xiàn)簡單論述正誤的判定;南京大學計算機軟件新技術(shù)國家重點實驗室的高思丹等提出利用基于動態(tài)規(guī)劃的語句相似度計算方法實現(xiàn)文字類主觀題的自動批改;南京大學計算機軟件新技術(shù)國家重點實驗室的黃康等提出一種基于帶

30、權(quán)概念網(wǎng)絡(luò)進行分層語義相似度計算的主觀題自動批改方案。</p><p>  國內(nèi)的這些主觀題自動批改實驗系統(tǒng)為特定領(lǐng)域的特定類型題目的自動批改提供了一定的解決途徑,達到了一定的批改效果,但是這些系統(tǒng)仍存在一些問題和不足之處。對參考答案填寫要求過高,出題者的任務(wù)過重;只能用于特定類型題目特定句式答案的自動批改;在進行語句相似度計算時,沒有考慮到語句中各個單詞在語句中所處位置以及所起作用,也沒有考慮單詞之間的順序。&

31、lt;/p><p>  針對以上情況,在數(shù)據(jù)庫這個特定領(lǐng)域設(shè)計并實現(xiàn)一套自動考試批改系統(tǒng)是非常有必要,也能夠?qū)崿F(xiàn)的。</p><p>  第2章 關(guān)鍵技術(shù)介紹</p><p>  2.1 Struts2框架技術(shù)</p><p>  Struts2其實并不是一個陌生的Web框架,Struts2是以Webwork的設(shè)計思想為核心,吸收了Struts1

32、的優(yōu)點,因此,可以認為Struts2是Struts1和Webwork結(jié)合的產(chǎn)物。</p><p>  2.1.1 MVC簡介</p><p>  Struts2一個兼容Struts1和WebWork的MVC框架,既然,提到了MVC框架,就不得不對MVC框架做一個簡單介紹,其實,Java目前出現(xiàn)的這些框架而言,其最終目的都是為了接觸耦合,不論是Spring、Hibernate或MVC框架,目

33、的都是為了接觸耦合增加復用。MVC接觸的是View和Model間的耦合。</p><p>  MVC包含三個基礎(chǔ)部分:Model、View和Controller,這三個部分以最小的耦合協(xié)同工作,以增加程序的可擴展性和可維護性。各個部分的實現(xiàn)技術(shù)可以總結(jié)如下:</p><p> ?。?)Model:JavaBean、EJB的EntityBean。</p><p>  

34、(2)View:JSP、Struts的TagLib。</p><p>  (3) Controller:Struts的ActionServlet、Action。</p><p><b>  第3章 系統(tǒng)分析</b></p><p><b>  3.1框架概述</b></p><p>  本系統(tǒng)采用

35、Struts2框架和B/S結(jié)構(gòu),雖然Struts2號稱是一個全新的框架,但這僅僅是相對Struts 1而言。Struts 2 與Struts 1相比,確實有很多革命性的改進,但它并不是新發(fā)布的新框架,而是在另一個赫赫有名的框架WebWork基礎(chǔ)上發(fā)展起來的,穩(wěn)定性、性能等各方面都有很好的保證,而且吸收了Struts 1和WebWork兩者的優(yōu)勢。Struts2是一個優(yōu)雅的,可擴展的JAVA EE web框架??蚣茉O(shè)計的目標貫穿整個開發(fā)周

36、期,從開發(fā)到發(fā)布,包括維護的整個過程。B/S結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu),用戶工作界面是通過WWW瀏覽器來實現(xiàn),極少部分事務(wù)邏輯在前端實現(xiàn),形成所謂B/S三層機構(gòu)。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本。</p><p><b>  3.2系統(tǒng)功能概述</b></p><p>  數(shù)據(jù)庫試題自動批改系統(tǒng)涉及到題庫管理、試卷

37、管理、考試管理、用戶管理四個功能模塊。根據(jù)系統(tǒng)的實際需要和具體情況,能夠?qū)崿F(xiàn)系統(tǒng)的保密性及時性以及學生、老師和管理員對應不同的操作。該系統(tǒng)在分析階段,我們對整個系統(tǒng)中的不同身份的用戶進行權(quán)限的分配,整個系統(tǒng)中的操作都是針對這三類用戶進行的。</p><p>  學生用戶的權(quán)限是進行考試、試卷查詢、分數(shù)查詢等學生相關(guān)操作。教師用戶的權(quán)限是組卷、查詢系統(tǒng)信息、考試信息的設(shè)置、題庫的管理操作:題目的添加、刪除、修改、查

38、詢操作等。管理員用戶的權(quán)限是針對該系統(tǒng)的所有操作均可以進行。</p><p>  我們將數(shù)據(jù)庫試題自動批改系統(tǒng)分為兩部分進行設(shè)計,一部分由我的搭檔進行分析設(shè)計,模塊是試卷管理和用戶管理;另一部分有我進行分析設(shè)計,模塊是題庫管理和考試管理。最終,我們共同合作努力完成該系統(tǒng)的功能實現(xiàn)。</p><p>  3.2.1用戶角色分配</p><p><b>  。

39、</b></p><p>  表3.1系統(tǒng)用戶角色分配</p><p>  3.2.2模塊功能描述</p><p>  系統(tǒng)的模塊功能描述這部分,我將對我所負責的題庫管理模塊和考試管理模塊進行描述。系統(tǒng)用戶的用例圖如圖3.1所示。</p><p>  圖3.1 系統(tǒng)用例圖</p><p><b>

40、  題庫管理模塊</b></p><p><b>  題目添加功能</b></p><p>  用戶通過正確的用戶名和密碼登錄系統(tǒng),并且擁有對題目操作的權(quán)限,首先頁面顯示題目類型分類,選擇想要添加的類型,顯示對應類型的題目列表,選擇添加,則顯示添加題目的頁面,需要輸入題目的內(nèi)容、選項、答案、難度級別、所屬章節(jié)、分值、預計完成時間、添加時間、添加教師。點擊“

41、添加”按鈕,如果添加成功,頁面將跳轉(zhuǎn)到成功頁面;如果添加失敗,則提示“添加失敗”信息,返回上一頁。</p><p><b>  題目修改功能</b></p><p>  用戶選擇修改的題目,系統(tǒng)從數(shù)據(jù)庫得出相應的該題目的相關(guān)信息,用戶可以進行修改。點擊“提交”按鈕,如果修改成功,頁面將跳轉(zhuǎn)到成功頁面;如果修改失敗,則提交“修改失敗”信息,返回上一頁。</p&g

42、t;<p><b>  題目刪除功能</b></p><p>  用戶選擇刪除的題目,系統(tǒng)從數(shù)據(jù)庫中查找要修改的題目,如果該題目可以刪除,再次提示是否刪除該題目的對話框。點擊“確定”按鈕,則刪除該題目,顯示試題列表;如果刪除失敗,則提示“刪除失敗”信息,返回上一頁。</p><p><b>  題目查找功能</b></p>

43、;<p>  用戶選擇或者輸入要查找的題目的相關(guān)內(nèi)容信息,系統(tǒng)從數(shù)據(jù)庫中查找,如果有該題目存在,則顯示該題目的內(nèi)容信息;如果查找的題目不存在,則顯示“此題目不存在,請重新查找?!毙畔?,返回上一頁。</p><p><b>  考試管理模塊</b></p><p><b>  試卷列表功能</b></p><p&g

44、t;  當學生登錄系統(tǒng)后,選擇“試卷列表”選項,顯示學生所對應的考試信息,系統(tǒng)從數(shù)據(jù)庫中查找該學生的考試信息,顯示都頁面上。</p><p><b>  顯示試題功能</b></p><p>  當學生選擇某試卷時,點擊“開始答題”,此時考試正式開始,在學生答題開始后,中途不能退出系統(tǒng),如果退出,則按照退出時題目的數(shù)量及答案批閱,系統(tǒng)默認學生已經(jīng)提交試卷。說明:每套試

45、卷每名學生只能答一次。但是可以多次查看自己試卷的分數(shù)及對錯情況。</p><p>  記錄學生考試答案功能</p><p>  當學生點擊“開始答題”按鈕時,系統(tǒng)將復制該套試題的所有信息到臨時表,并且添加學生答案列和得分列。頁面每次顯示一道題目,每當學生進入下一題或者上一題,系統(tǒng)將取出數(shù)據(jù)庫的時間,提醒用戶該次考試還剩多少時間,并且將學生的答案記錄到數(shù)據(jù)庫。</p><

46、p><b>  系統(tǒng)自動批改功能</b></p><p>  在學生答題過程中,系統(tǒng)已經(jīng)將學生的答案記錄到臨時試卷答題表中,當學生進入下一題或上一題時,系統(tǒng)將對學生上一步所答試題的答案與標準答案進行比對,同時給出相應的分數(shù),記錄在分數(shù)列中。如果學生點擊“上一題”按鈕,系統(tǒng)將從數(shù)據(jù)庫中查找出學生上一次的答案,以便學生的修改。當學生點擊“提交試卷”按鈕時,系統(tǒng)將會核算學生的得分,以及各類型

47、題目的得分,并顯示到頁面上。如果學生想要查看詳細的批改信息,顯示學生該試卷的所有批改信息。</p><p><b>  3.3系統(tǒng)環(huán)境</b></p><p>  3.3.1 開發(fā)環(huán)境</p><p>  主機類型:Compaq nx6330,2.5G內(nèi)存</p><p>  存儲器容量:80G硬盤</p>

48、<p>  操作系統(tǒng):Windows XP</p><p>  開發(fā)語言:JAVA語言</p><p>  開發(fā)工具:Eclipse</p><p><b>  第4章  系統(tǒng)設(shè)計</b></p><p>  4.1 設(shè)計指導思想和原則</p><p>  4.1.1 指導思想<

49、/p><p>  面向?qū)ο蟮南到y(tǒng)的分析和設(shè)計實際上就是追求兩點:一是高內(nèi)聚,一是低耦合。如果開發(fā)讓老師、學生都滿意的系統(tǒng),就要充分的了解他們的需求,因此我們在開發(fā)系統(tǒng)前對可能應用到該系統(tǒng)的人群進行了充分的調(diào)研。故本系統(tǒng)基本包括了用戶的權(quán)限分配、試卷的自動組卷、題目的增刪改查、學生考試分數(shù)的快速評定等進行了方方面面,以最簡便的操作提供最強大的功能。</p><p>  4.1.2 軟件設(shè)計原則&

50、lt;/p><p>  軟件設(shè)計既是過程又是模型。設(shè)計過程是一些列迭代的步驟,它們使設(shè)計者能夠描述要構(gòu)造的軟件系統(tǒng)的特征。軟件設(shè)計與其他所有設(shè)計活動一樣,是由創(chuàng)造性的技能、以往的設(shè)計經(jīng)驗和良好的設(shè)計靈感,以及對質(zhì)量的深刻理解等一些關(guān)鍵因素影響的。</p><p><b>  (1)多樣化設(shè)計。</b></p><p>  一名好的設(shè)計師應該考慮設(shè)計

51、的替代方案,通常應該提供多種可供評審和選擇的設(shè)計方案。</p><p> ?。?)設(shè)計對于分析模型應該是可跟蹤的。</p><p>  因為設(shè)計模型中的一個軟件元素可能會涉及到多個需求上,也可能一個需求由多個軟件元素實現(xiàn)。為了使得設(shè)計出的軟件滿足需求,要求設(shè)計模型一定要具有可回溯性。</p><p> ?。?)設(shè)計不應該從頭做起。</p><p&

52、gt;  軟件系統(tǒng)是使用一系列設(shè)計模式構(gòu)造的,很多模式可能在以前就遇到過,這些模式通常被稱為可復用設(shè)計構(gòu)件。應該盡可能使用已有的設(shè)計構(gòu)件減少設(shè)計的工作量,而且也可以保證設(shè)計的質(zhì)量。</p><p>  (4)軟件設(shè)計應該盡可能縮短軟件和現(xiàn)實世界的距離。</p><p>  也就是說,軟件設(shè)計的結(jié)構(gòu)應該盡可能模擬問題域的結(jié)構(gòu)。</p><p>  (5)設(shè)計應該表現(xiàn)出

53、一致性和規(guī)范性。</p><p>  在設(shè)計開始之前,設(shè)計小組應該定義設(shè)計風格和設(shè)計規(guī)范,保證不同的設(shè)計人員設(shè)計出風格一致的軟件。</p><p> ?。?)設(shè)計的易修改性。</p><p>  軟件開發(fā)的整個過程中都存在著變化,變化是永恒的,因此,設(shè)計軟件時必須要考慮到設(shè)計的易修改性。</p><p><b> ?。?)容錯性設(shè)計

54、。</b></p><p>  不管多么完善的軟件,都可能存在問題,所以設(shè)計人員應該為軟件進行容錯性設(shè)計,當遇到異常數(shù)據(jù)、事件或操作時,軟件不至于徹底崩潰。</p><p> ?。?)設(shè)計的粒度要適當。</p><p>  設(shè)計不是編碼,即使在詳細設(shè)計階段,設(shè)計模型的抽象級別也比源代碼要高。詳細設(shè)計是設(shè)計實現(xiàn)的算法和具體的數(shù)據(jù)結(jié)構(gòu)。</p>

55、<p> ?。?)在設(shè)計時就要開始評估軟件的質(zhì)量。</p><p>  軟件的質(zhì)量屬性需要在設(shè)計時考慮如何實現(xiàn),在設(shè)計過程中要不斷評估軟件質(zhì)量,不要等全部設(shè)計結(jié)束之后再考慮。</p><p>  (10)要復審設(shè)計,減少設(shè)計引入的錯誤。</p><p>  本系統(tǒng)分為四個代表模塊,我們分別對這四個模塊的設(shè)計和實現(xiàn)做了詳細的描述。從這四個模塊中,可以清晰地

56、感受到給系統(tǒng)的設(shè)計遵循的一貫原則,就是從智能化、人性化的角度出發(fā),取之于人、服務(wù)于人。</p><p>  4.2系統(tǒng)的功能結(jié)構(gòu)設(shè)計</p><p>  4.2.1 系統(tǒng)的功能模塊劃分</p><p>  圖4.1 系統(tǒng)結(jié)構(gòu)圖</p><p>  教師登錄系統(tǒng)后,可以對題庫中的題目進行添加、刪除、修改、查詢操作,針對每一步的操作,系統(tǒng)都會給出

57、相應的判斷和顯示。該模塊的基本流程圖見圖4.2所示。數(shù)據(jù)庫試題自動批改系統(tǒng)主要分為四大模塊:題庫管理、試卷管理、考試管理、用戶管理。下面主要介紹一下我所負責的題庫管理和考試管理兩大模塊的功能。</p><p><b> ?。?)題庫管理模塊</b></p><p>  圖4.2 題庫管理模塊基本流程圖</p><p><b>  第5

58、章 系統(tǒng)實現(xiàn)</b></p><p><b>  5.1 環(huán)境配置</b></p><p>  5.1.1 web.xml文件配置</p><p>  <!-- spring params --></p><p>  <context-param></p><p&g

59、t;  <param-name>contextConfigLocation</param-name></p><p>  <param-value>classpath*:spring/*.xml</param-value></p><p>  </context-param></p><p>  <!

60、-- struts core filter --></p><p><b>  <filter></b></p><p>  <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispa

61、tcher</p><p>  </filter-class></p><p><b>  </filter></b></p><p>  <!-- spring context loader --></p><p>  <listener></p><

62、p>  <listener-class>org.springframework.web.context.ContextLoaderListener</p><p>  </listener-class></p><p>  </listener></p><p>  <!-- struts core filter ma

63、pping --></p><p>  <filter-mapping></p><p>  <filter-name>struts2</filter-name></p><p>  <url-pattern>*.action</url-pattern></p><p>  &

64、lt;/filter-mapping></p><p>  <!-- FreeMarker Servlet --></p><p><b>  <servlet></b></p><p>  <servlet-name>freemarker</servlet-name></p>

65、<p>  <servlet-class>org.apache.struts2.views.freemarker.FreemarkerServlet</p><p>  </servlet-class></p><p>  <load-on-startup>2</load-on-startup></p><p&

66、gt;  </servlet></p><p>  5.1.2 Struts.xml文件配置</p><p><b>  <struts></b></p><p>  <bean class="org.apache.struts2.views.freemarker.FreemarkerServlet&qu

67、ot; static="true" optional="true" /></p><p>  <include file="neo-default.xml" /></p><p>  <include file="struts/training-default.xml" /><

68、;/p><p><b>  </struts></b></p><p>  5.1.3 Struts.properties文件配置</p><p>  struts.i18n.encoding=UTF-8</p><p>  struts.multipart.parser=jakarta</p>&

69、lt;p>  struts.multipart.maxSize=10485760</p><p>  5.2 數(shù)據(jù)庫試題自動批改系統(tǒng)題庫管理子模塊界面</p><p>  5.2.1 題目添加</p><p>  當教師登錄后,進入題庫管理頁面,對題目進行添加操作??梢蕴砑有碌念}目編號、題目內(nèi)容、題目選項、答案、難度級別、章節(jié)、分值、預計完成時間,其中添加題目

70、的時間系統(tǒng)會自動的從數(shù)據(jù)庫中得到添加該題目時的時間保存到數(shù)據(jù)庫中相應的字段中;教師登錄系統(tǒng)是會記錄教師的姓名和編號,當教師添加題目時,系統(tǒng)會自動在添加本題教師項中填入該教師的姓名。題目添加頁面如圖5.1所示。</p><p>  圖5.1 題目添加頁面</p><p>  當教師點擊“添加”按鈕,系統(tǒng)將判斷該題目的編號是否存在,若存在,則提示“該題目編號存在,請修改后再添加,謝謝!”,并返

71、回題目添加頁面;若編號不存在,且所有必填數(shù)據(jù)填寫完整,符合規(guī)定的格式,系統(tǒng)將保存該題目到數(shù)據(jù)庫,提示“題目添加成功!”,并返回題目列表頁面;若編號不存在,但是題目必填項沒有填寫或填寫不合法,則提示“添加試題失敗,請檢查題目信息是否填寫完整并且合法!”,并返回添加頁面,顯示教師填寫的題目信息,以便其檢查。</p><p>  5.2.2 題目修改</p><p>  當教師點擊“修改單選題信

72、息”時,系統(tǒng)將從數(shù)據(jù)庫中查找出該題目,并顯示出來如圖5.2所示,教師可以對其進行修改,但是該題目的添加時間、添加教師、修改時間、修改教師是無法更改的,系統(tǒng)會根據(jù)添加和修改的時間自動的獲取當前時間,并且獲取添加和修改的教師姓名。</p><p>  圖5.2 題目修改頁面</p><p>  在Java文件ExamTopicService中,從數(shù)據(jù)庫中查找單選題信息,將結(jié)果返回。主要代碼如下

73、:</p><p>  /*************************** 顯示要修改的單選題信息*********************/</p><p>  private static final String SQL_EXAMTOPIC_Single_EDIT=</p><p>  "select * from t_single_choos

74、e where SCId=?";</p><p>  public Map getExamtopicSingleEdit(Long SCId){</p><p>  return jt.queryForMap(SQL_EXAMTOPIC_Single_EDIT, new Object[]{SCId});</p><p><b>  }</b

75、></p><p>  private static final String SQL_EXAMTOPIC_Single_UPDATE=</p><p>  "update t_single_choose set sccontent=?,scselect1=?," +</p><p>  "scselect2=?,scselect

76、3=?,scselect4=?,scanswer=?," +</p><p>  "scdifficultyid=?,scchapterid=?,scmark=?,sctime=? " +</p><p>  "where SCId=?";</p><p>  在Java文件ExamTopicAction中,調(diào)用se

77、rvice中的方法,得到結(jié)果的返回值。主要代碼如下:</p><p>  /*************************** 顯示要修改的單選題信息*********************/</p><p>  public String edit() throws Exception{</p><p>  examtopic=getServMgr().ge

78、tExamTopicService().getExamtopicSingleEdit(SCId);</p><p>  return "edit";</p><p><b>  }</b></p><p>  當修改完畢,點擊“修改”按鈕時,若修改信息合法,系統(tǒng)將像是操作完成的對話框并提示返回試題頁面如圖5.3所示。<

79、/p><p>  圖5.3 修改結(jié)束反饋頁面</p><p>  在Java文件ExamTopicService中,從數(shù)據(jù)庫中查找單選題信息,將結(jié)果返回。</p><p>  /*************************** 修改單選題信息*********************/</p><p>  public void EXAMT

80、OPICSingleUpdate(Map m){</p><p>  Object[] param=</p><p>  MapUtil.getObjectArrayFromMap</p><p>  (m,"sccontent,scselect1,scselect2,scselect3,</p><p>  scselect4,s

81、canswer,scdifficultyid,scchapterid,</p><p>  scmark,sctime,SCId");</p><p>  jt.update(SQL_EXAMTOPIC_Single_UPDATE, param);</p><p><b>  }</b></p><p>  在

82、Java文件ExamTopicAction中,主要代碼如下:</p><p>  /*************************** 修改單選題信息*********************/</p><p>  public String update() throws Exception{</p><p><b>  try{</b>

83、</p><p>  getServMgr().getExamTopicService().</p><p>  EXAMTOPICSingleUpdate(this.getParameters());</p><p>  addMessage("修改成功!");</p><p>  addRedirURL("返

84、回試題頁面","examtopic/examSingle!list.action");</p><p>  }catch(Exception e){</p><p>  setResult(ERROR);</p><p>  addMessage("修改失敗");</p><p>  addR

85、edirURL("修改","@back");</p><p><b>  }</b></p><p>  return EXECUTE_RESULT;</p><p><b>  }</b></p><p>  5.2.3 題目刪除</p>&l

86、t;p>  當教師點擊“刪除”操作時,將彈出是否刪除的確認對話框如圖5.4所示,如果點擊“確定”,系統(tǒng)將刪除該題目,如果點擊“取消”,系統(tǒng)將取消該操作,顯示剛才的頁面。</p><p>  圖5.4 題目刪除頁面</p><p><b>  第6章 系統(tǒng)測試</b></p><p><b>  6.1 測試目標</b>

87、;</p><p>  測試該數(shù)據(jù)庫試題自動批改系統(tǒng)功能是否達到設(shè)計目標,各個功能模塊是否得到預期運行結(jié)果。各項具體測試目標如下:</p><p>  題庫管理子模塊測試。測試本子模塊能否正常運行,能否實現(xiàn)題目的增加、刪除、修改、查詢功能。</p><p>  考試管理子模塊測試。測試本子模塊能否正常運行,能夠?qū)崿F(xiàn)試卷的列表,能否顯示具體一份試卷的題目,能否完成自動

88、批改試卷的任務(wù)。</p><p><b>  6.2 測試環(huán)境</b></p><p>  硬件環(huán)境:Compaq nx6330筆記本電腦</p><p>  軟件環(huán)境:Windows XP</p><p><b>  6.3 測試流程</b></p><p>  測試工作主

89、要包括對數(shù)據(jù)庫試題自動批改系統(tǒng)中題庫管理子模塊測試和考試管理子模塊測試。當然,如果想讓這兩個子模塊正常的運行在系統(tǒng)中,那么必然要保證用戶管理模塊和試卷管理模塊要能夠正常的運行,在這里我只對題庫管理和考試管理子模塊進行測試。如表6.1所示。</p><p><b>  表6.1 模塊測試</b></p><p>  續(xù)表6.1 模塊測試</p><p

90、><b>  6.4 測試結(jié)論</b></p><p>  通過對數(shù)據(jù)庫試題自動批改系統(tǒng)中題庫管理和考試管理模塊的測試可以發(fā)現(xiàn),該系統(tǒng)的主要功能已經(jīng)基本實現(xiàn),達到使用的基本要求。</p><p>  該系統(tǒng)的頁面清晰,邏輯性強、方便操作。</p><p><b>  第7章 結(jié) 論</b></p>&l

91、t;p>  當今許多高校都非常關(guān)注無紙化網(wǎng)絡(luò)考試及自動批改系統(tǒng)的開發(fā)與應用,通過大學期間的相關(guān)認證考試以及老師在網(wǎng)絡(luò)上布置的作業(yè)中可以發(fā)現(xiàn),對于主觀題的批改沒有很完善的解決辦法,要么全是選擇題,由系統(tǒng)自動的批改,顯示成績;要么是客觀題和主觀題并存,由系統(tǒng)批改客觀題,而主觀題則由老師進行批改,這樣一方面不能讓學生立刻發(fā)現(xiàn)得知自己那部分知識點出現(xiàn)了問題,另一方面老師需要花費大量的時間進行網(wǎng)上試卷的批改,這樣會浪費很多不必要的資源和時間

92、。針對這一現(xiàn)象,我們通過數(shù)據(jù)庫試題的自動批改方面進行嘗試,試著運用一些簡單易懂的方法,去實現(xiàn)簡單主觀題系統(tǒng)的自動批改,實踐證明,該系統(tǒng)是可行的。</p><p>  數(shù)據(jù)庫試題自動批改系統(tǒng)試卷中擁有單選題、多選題、判斷題、填空題、簡答題和SQL語句題,該系統(tǒng)的特色列舉如下:教師組卷的方式有兩種一種是自己添加需要的試題,我們稱之為“手動組卷”;另一種則是針對想要組卷的知識點范圍進行一定的篩選,然后系統(tǒng)隨機的挑選符合

93、考試范圍的試題組成試卷,這稱之為“自動組卷”。針對主觀題的批改進行了一定的構(gòu)思,基本上實現(xiàn)了對主觀題的自動批改。數(shù)據(jù)庫創(chuàng)建表時,創(chuàng)建了多個關(guān)系表,這樣既提高的效率,又節(jié)省了空間。</p><p>  綜上所述,基于Struts2框架技術(shù)的考試系統(tǒng)易用、靈活,也具有良好的安全性,本系統(tǒng)試卷庫的基礎(chǔ)上進一步做成試題庫,在表中添加若干字段,一個字段記錄章節(jié),一個字段記錄分值,試卷的編號,建立試卷和試題的鏈接,在生成試卷

94、頁面時按照一定的規(guī)則、算法(知識點、分值)從表中取出相應的記錄,這樣考試系統(tǒng)就能上一個臺階。系統(tǒng)的界面友好、功能完善,生成的統(tǒng)計圖直觀、正確,可以為教師的命題、教學提供有益的參考。</p><p>  當然,還可以在本系統(tǒng)的基礎(chǔ)上進一步完善。該系統(tǒng)采用了MySQL數(shù)據(jù)庫不是大型的數(shù)據(jù)庫,這樣試題、答案的安全性沒有很好的保障。若將數(shù)據(jù)庫改為Oracle或者DB2這樣的大型數(shù)據(jù)庫,那樣會大大的提高數(shù)據(jù)的安全性;此外,

95、雖然系統(tǒng)實現(xiàn)了自動批改功能,但是僅針對SQL這種特定的主觀題,對于類似簡答題、問答題之類的主觀題,如何自動批改,仍然需要進一步探索。</p><p><b>  參考文獻</b></p><p>  [1] 李鋼. Struts2權(quán)威指南-基于Web Work核心德MVC開發(fā)[D], 北京: 電子工業(yè)出版社, 2007.9.</p><p> 

96、 [2] 許育誠. 軟件測試與質(zhì)量管理[D], 上海: 海事大學, 2004.6.</p><p>  [3] 賀松平. 基于MVC模式的B/S架構(gòu)的研究及應用[D], 武漢: 華中科技大學, 2005.7.</p><p>  [4] 陳紹英, 戴金龍. 軟件測試案例分析[J], 測試員, 2005.8: 23-25.</p><p>  [5] 耿祥義, 張躍平

97、. JSP實用教程[M], 清華大學出版社, 2003.5: 1-354.</p><p>  [6] 柳永坡, 劉雪梅, 趙長海. JSP應用開發(fā)技術(shù)[M], 北京: 人民郵電出版社, 2005: 30-32.</p><p>  [7] 孫衛(wèi)琴, 李洪成. Tomcat與Java Web開發(fā)技術(shù)詳解[M], 北京: 電子工業(yè)出版社, 2004: 73-78.</p>&l

98、t;p>  [8] 孫衛(wèi)琴. 精通Struts:基于MVC的Java Web設(shè)計與開發(fā)[M], 北京: 電子工業(yè)出版社, 2004: 1-9.</p><p>  [9] 胡百敬, 姚巧玫. SQL Server 2005 數(shù)據(jù)庫開發(fā)詳解[M], 北京: 電子工業(yè)出版社, 2006: 9-125.</p><p>  [10] Wendy Boggs, Michael Boggs.

99、UML與Rational Rose 2002從入門到精通[M], 北京: 電子工業(yè)出版社, 2002.7: 213-378.</p><p>  [11] Sun. Microsystems.Inc.JavaTM 2 SDK,Standard Edition Documentation Version 1.4.1 [EB/OL], Sun Microsystems.Inc, 2002.1.</p>

100、<p>  [12] 軟件設(shè)計模式. [EB/OL], www.itisedu.com/軟件設(shè)計模式.htm, 2004.3.</p><p><b>  致 謝</b></p><p>  通過這一階段的努力,我的畢業(yè)論文《數(shù)據(jù)庫試題自動批改系統(tǒng)——題庫、考試子模塊》暫告收尾,這也意味著我在xx學院四年的學習生活既將結(jié)束?;厥准韧?,自己一生最寶貴的時光能

101、于這樣的校園之中,能在眾多學富五車、才華橫溢的老師們的熏陶下度過,實是榮幸之極。在這四年的時間里,我在學習上和思想上都受益非淺。這除了自身努力外,與各位老師、同學和朋友的關(guān)心、支持和鼓勵是分不開的。論文的寫作是枯燥艱辛而又富有挑戰(zhàn)的。試卷的自動批改是一直探討的熱門話題,老師的諄諄誘導、同學的出謀劃策及家長的支持鼓勵,是我堅持完成論文的動力源泉。</p><p>  我特別要感謝我的導師xx副教授。導師淵博的專業(yè)知

102、識,嚴謹?shù)闹螌W態(tài)度,精益求精的工作作風,誨人不倦的高尚師德,嚴以律己、寬以待人的崇高風范,樸實無華、平易近人的人格魅力對我影響深遠。不僅使我樹立了遠大的學術(shù)目標、掌握了基本的研究方法,還使我明白了許多待人接物與為人處世的道理。從選題到開題報告,從寫作提綱,到一遍又一遍地指出每稿中的具體問題,從文獻的采集、框架的設(shè)計、結(jié)構(gòu)的布局到最終的論文定稿,從內(nèi)容到格式,從標題到標點,嚴格把關(guān),循循善誘,他都費盡心血,在此我表示衷心感謝。沒有xx老師

103、的辛勤栽培、孜孜教誨,就沒有我論文的順利完成。</p><p>  為了指導我們的畢業(yè)論文,老師們放棄了自己的休息時間,他們的這種無私奉獻的敬業(yè)精神令人欽佩,在此我向他們表示我誠摯的謝意。同時,感謝所有任課老師在這四年來給自己的指導和幫助,是他們教會了我專業(yè)知識,教會了我如何學習,教會了我如何做人。正是由于他們,我才能在各方面取得顯著的進步,在此向他們表示我由衷的謝意,并祝所有的老師培養(yǎng)出越來越多的優(yōu)秀人才,桃李

溫馨提示

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

最新文檔

評論

0/150

提交評論