![畢業(yè)設計(論文)JSP試卷生成系統(tǒng)的設計與開發(fā)_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/22/ccf127d4-469c-4e09-b1e8-b6f3f70553ee/ccf127d4-469c-4e09-b1e8-b6f3f70553ee1.gif)
![畢業(yè)設計(論文)JSP試卷生成系統(tǒng)的設計與開發(fā)_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/22/ccf127d4-469c-4e09-b1e8-b6f3f70553ee/ccf127d4-469c-4e09-b1e8-b6f3f70553ee2.gif)
![畢業(yè)設計(論文)JSP試卷生成系統(tǒng)的設計與開發(fā)_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/22/ccf127d4-469c-4e09-b1e8-b6f3f70553ee/ccf127d4-469c-4e09-b1e8-b6f3f70553ee3.gif)
![畢業(yè)設計(論文)JSP試卷生成系統(tǒng)的設計與開發(fā)_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/22/ccf127d4-469c-4e09-b1e8-b6f3f70553ee/ccf127d4-469c-4e09-b1e8-b6f3f70553ee4.gif)
![畢業(yè)設計(論文)JSP試卷生成系統(tǒng)的設計與開發(fā)_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-6/22/ccf127d4-469c-4e09-b1e8-b6f3f70553ee/ccf127d4-469c-4e09-b1e8-b6f3f70553ee5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、試卷生成系統(tǒng)的設計與開發(fā)摘要隨著社會的發(fā)展和教育制度的改革,在現(xiàn)代教學領域中,各個學科的信息量越來越大,導致用于考核學生學習效果的試卷生成工作的復雜性也越來越大,傳統(tǒng)手寫出題方式已經(jīng)越來越不能適應現(xiàn)代教育模式的需要。因此,為了減輕教師的工作負擔、提高工作效率,同時使生成的試卷更加公正、客觀地評價學生的學習效果,有必要開發(fā)一個適合教師需求的高效率的試卷生成系統(tǒng)。試卷生成系統(tǒng)可對試題實行科學的管理,利用現(xiàn)代電腦功能強大、運算速度快的優(yōu)點,對試題進行集中、有序、有效的管理,更新方便、查詢快捷、組卷靈活還可在組卷結(jié)束后通過打印機直接打印成試卷,大大降低了勞動強度,需用密碼登錄系統(tǒng),具有一定的安全性。本
2、系統(tǒng)使用 jsp+javabean+servlet技術(shù)實現(xiàn)mvc三層結(jié)構(gòu)設計,并結(jié)合sql server 2008 數(shù)據(jù)庫設計開發(fā)的一個基于b/s架構(gòu)的試卷生成系統(tǒng)。關(guān)鍵詞:b/s架構(gòu) 試卷生成 jsp javabean servletthe design and development of exam paper generation systemabstractwith the development of society and the innovation of education system, in contemporary education areas, there is an
3、 appearance of having more and more information in series of subjects and difficulty in design for testing. these make the conventional method of test paper making system not being suit for contemporary testing model. so, in order to relief the teachers work bear, improve work efficiency, and make t
4、est paper appraise students study impression equitably and objectively, it is necessary to develop a exam paper generation system with the property of being suit for teachers requires and high efficiency.the exam paper system developed in this paper includes modules as follows: papers management, in
5、formation query, system management and help information. among them, papers management includes making papers by hand, questions maintenance, and logging out. the module of information query includes papers query and questions query. system management includes users management and password amending.
6、the system uses three mvc jsp+javabean+servlet design technology, developed by a sql server 2008 database design based on b / s structure of the papers generation system.key words:b/s papers generation jsp javabean servlet目 錄試卷生成系統(tǒng)的設計與開發(fā)i摘要iabstractii1 前 言11.1項目背景11.2 項目開發(fā)意義和目的11.3技術(shù)路線11.3.1 www架構(gòu)11
7、.3.2 web應用程序21.3.3 b/s(browser/server)結(jié)構(gòu)32 需求分析42.1 目標系統(tǒng)要求42.2 系統(tǒng)運行環(huán)境42.3 系統(tǒng)開發(fā)工具42.4 系統(tǒng)的性能要求52.5 系統(tǒng)的功能要求52.6 系統(tǒng)基本業(yè)務流程52.7 系統(tǒng)用例圖62.8 系統(tǒng)類圖72.9 系統(tǒng)時序圖82.9.1錄入試題時序圖82.9.2 修改試題時序圖92.9.3 刪除試題時序圖102.9.4 生成試卷時序圖112.10 詳細功能分析122.10.1 管理員登錄122.10.2 錄入試題132.10.3 生成試卷143 總體設計153.1 系統(tǒng)目標153.2 系統(tǒng)結(jié)構(gòu)設計153.3 系統(tǒng)功能163.4
8、 數(shù)據(jù)庫概念設計163.4.1 物理數(shù)據(jù)模型173.4.2 數(shù)據(jù)庫e-r圖184 詳細設計204.1 數(shù)據(jù)庫的邏輯設計204.1.1 數(shù)據(jù)庫表設計204.2 系統(tǒng)模塊設計214.2.1 登錄模塊214.2.2考題錄入模塊224.2.3 生成試卷模塊224.2.4 考題管理模塊234.2.5 考卷管理模塊235 系統(tǒng)設計的實現(xiàn)245.1 數(shù)據(jù)庫訪問技術(shù)245.1.1數(shù)據(jù)庫訪問類的實現(xiàn)245.2 利用servlet通信246 測 試256.1 單元測試256.1.1 登錄測試256.1.2 數(shù)據(jù)錄入測試266.2 集成測試276.3 系統(tǒng)測試277 總 結(jié)28參考文獻29附錄30謝辭361 前 言
9、1.1項目背景隨著教育機制競爭壓力的增大,各個學校都加強了對學生考核制度的改革,逐步建立了完善的考試系統(tǒng)。為了給學生提供更多的測試培訓機會,需要提供不同類型的試卷,但這卻增加了教師在出卷過程中的工作負擔。因此,為了減輕了教師及教務部門的工作量,提高工作效率,開發(fā)試卷生成系統(tǒng)來滿足這些條件是非常有必要的?,F(xiàn)在,各種網(wǎng)上教育系統(tǒng)也日趨成熟,這就給試卷生成系統(tǒng)提出了更高的要求,使得其不但要具有組卷生成的功能,還得使試卷生成系統(tǒng)具有完善的題庫管理及應用功能,使其方便實用、操作簡單等等。這些主要體現(xiàn)在題庫的靈活多變,考題可以隨機抽取,并能自動組卷,從而方便了教師進行試卷的排版處理及打印。1.2 項目開發(fā)
10、意義和目的計算機作為數(shù)據(jù)處理系統(tǒng),已逐漸成為試卷編輯的重要手段。特別是隨著internet的快速發(fā)展,以及word在文檔排版工作中的廣泛應用,使得這些技術(shù)在試卷編輯管理中發(fā)揮著重要的作用。試卷生成系統(tǒng)有助于實現(xiàn)“考教分離”,客觀公正地評價學生的學習狀況,它不僅可以減輕教師的重復勞動, 提高工作效率, 而且避免了人工組卷時出錯,使試卷生成過程可以輕松進行。它更是學校實現(xiàn)考務自動化, 管理數(shù)字化、信息化的標志,有助于對試卷進行統(tǒng)一管理,方便對試卷的分析,進一步提高教學質(zhì)量。1.3技術(shù)路線本系統(tǒng)選用 java語言與sql server 2008數(shù)據(jù)庫相結(jié)合,借助功能強大的myeclipise開發(fā)平臺
11、開發(fā)的一個基于b/s模式的試卷生成系統(tǒng)。系統(tǒng)前臺是通過 jsp+javabean+servlet 技術(shù)來實現(xiàn),系統(tǒng)后臺數(shù)據(jù)庫是用sql server2008作為服務器,通過java web整合技術(shù)進行系統(tǒng)的設計與開發(fā)。1.3.1 www架構(gòu)www的架構(gòu)非常簡單,主要分為兩部分,一是服務器端,即信息的提供者,也就是存放網(wǎng)頁供使用者瀏覽的網(wǎng)站;二是客戶端,即信息的接收者,客戶端是瀏覽網(wǎng)頁的計算機和使用者的總稱,而實際執(zhí)行于計算機上供使用者操作、瀏覽網(wǎng)頁的軟件為瀏覽器,目前常見的有microsoft的internet explorer(簡稱ie)和netscape的navigator。網(wǎng)頁的瀏覽過程
12、是:首先由客戶端(web瀏覽器)向服務器端(web服務器)發(fā)送瀏覽網(wǎng)頁的請求,web服務器響應這種請求,將其所請求的頁面或文檔傳送給web瀏覽器,瀏覽器負責解析此網(wǎng)頁并呈現(xiàn)給使用者。如圖1所示。服務器傳回請求網(wǎng)頁瀏覽器請求瀏覽網(wǎng)頁web瀏覽器web服務器圖1-1 www結(jié)構(gòu)圖web瀏覽器與web服務器之間通過http(hyper text transfer protocol,超文本傳輸協(xié)議)進行通訊。也就是說,如果要使用www服務,用戶只要在標準瀏覽器中輸入統(tǒng)一資源定位器(url)就可以訪問分布在各個web服務器上的信息,而這種web瀏覽器與web服務器之間交換信息的實現(xiàn)是基于超文本傳輸協(xié)議(
13、http)的。1.3.2 web應用程序用html所構(gòu)建的網(wǎng)頁只能單純的顯示網(wǎng)頁內(nèi)容,而無法實時對不同的網(wǎng)頁瀏覽狀況作出響應,如:不同的瀏覽者、不同的瀏覽行為或不同的瀏覽時間等。這類單純的由html所構(gòu)建的無法與使用者產(chǎn)生互動的網(wǎng)頁,被稱為靜態(tài)網(wǎng)頁。隨著internet的飛速發(fā)展,靜態(tài)網(wǎng)頁已經(jīng)不能滿足需求,人們更需要動態(tài)的、交互的網(wǎng)頁。為了讓網(wǎng)頁能依照不同的情況做出動態(tài)的響應,在網(wǎng)頁中加入程序建立動態(tài)響應的機制,成了網(wǎng)頁制作技術(shù)的主要發(fā)展方向。所謂web應用程序就是網(wǎng)頁中的這些可以提供動態(tài)響應機制的程序。web應用程序提供動態(tài)信息,而不是靜態(tài)的html文件,用戶的輸入或身份等都可以決定瀏覽器的
14、顯示內(nèi)容。若依照程序執(zhí)行位置的不同可以將web應用程序分為客戶端和服務器端兩類。執(zhí)行于客戶端web應用程序的執(zhí)行過程是從服務器端下載網(wǎng)頁到客戶端,有瀏覽器負責解譯并執(zhí)行,最后將執(zhí)行后的網(wǎng)頁顯示出來。目前編寫客戶端web應用程序所采用的主要技術(shù)是dhtml技術(shù),dhtml(dynamic html)并不是一種獨立的語言,它是html、css和腳本語言的一種集成。除了具備傳統(tǒng)的html所有的功能之外,dhtml還具有動畫、多媒體以及動態(tài)交互能力。在服務端執(zhí)行的web應用程序,最主要的用途是處理從客戶端到服務器端的數(shù)據(jù)。此類web應用程序的體系結(jié)構(gòu)采用三層或多層的b/s(browser/server
15、)結(jié)構(gòu),所采用的技術(shù)多種多樣,目前比較流行的有asp、jsp、php、asp.net等。1.3.3 b/s(browser/server)結(jié)構(gòu)瀏覽器/服務器b/s(browser/server)結(jié)構(gòu)是在www方式下實現(xiàn)信息訪問和共享的一種體系結(jié)構(gòu)。這里的服務器通常指web服務器(比如microsoft的iis)和數(shù)據(jù)庫服務器,所有的應用程序都存儲在web服務器上,利用數(shù)據(jù)庫服務器對分布在web服務器上的大量信息進行動態(tài)管理,從而使得所發(fā)布的信息具有交互性、動態(tài)性和實時性。這種三層b/s體系結(jié)構(gòu)的示意圖如圖2所示。服務器端服務器傳回請求網(wǎng)頁瀏覽器請求瀏覽網(wǎng)頁web瀏覽器web服務器數(shù)據(jù)庫服務器圖
16、1-2 三層b/s體系結(jié)構(gòu)工作原理: web瀏覽器發(fā)出請求要求訪問web服務器的某一網(wǎng)頁,web服務器檢查文件的擴展名是不是服務器端程序要處理的網(wǎng)頁,即非html文件,如果是,web服務器就會做響應的處理。如果應用程序需要訪問數(shù)據(jù)庫,則web服務器會利用相應的數(shù)據(jù)庫訪問技術(shù)來存取數(shù)據(jù)庫服務器上的數(shù)據(jù)。如果有數(shù)據(jù)必須顯示在瀏覽器上,則應用程序會形成動態(tài)的html文檔,然后由web服務器傳送給前端的客戶瀏覽器。三層b/s體系結(jié)構(gòu)的優(yōu)點是: 1 簡化了客戶端。對于遠程的前端用戶來講,不再需要特殊設置與軟件安裝,僅需要有能夠支持html文檔的瀏覽器(如ie等)即可,這樣大大降低學習障礙與培訓成本。2
17、可跨平臺操作各種平臺上的用戶都可以通過瀏覽器訪問相應的信息,無需為不同的軟硬件環(huán)境等開發(fā)不同的版本。3 集中化管理與維護對于web開發(fā)者而言,所有的應用程序都集中在服務器端開發(fā)管理,那么當web開發(fā)者進行軟件改變或升級時,僅需在服務端進行變動,而無需在遠程的前端用戶進行任何的操作,對于遠程的前端用戶來講程序的升級幾乎是透明的,這樣大大減少了系統(tǒng)管理和維護的工作量和成本。2 需求分析2.1 目標系統(tǒng)要求本系統(tǒng)由教師根據(jù)教學資料錄入試題,并對其進行分類。待需要考試時,設定好一定的條件,系統(tǒng)就從題庫中選取試題自動生成統(tǒng)一格式的考試試卷。從教師的使用角度出發(fā),本著以簡單方便、提高工作效率的原則,系統(tǒng)應
18、具有以下特點: 確保系統(tǒng)具有良好的系統(tǒng)性能,友好的用戶界面。 簡單快捷的自動組卷方式。 試卷的保密性要求,只有授權(quán)人員才能生成和查閱試卷。 生成的試卷按照規(guī)定的模板輸出。 較高的處理效率,便于使用和維護。 采用成熟技術(shù)開發(fā),使系統(tǒng)具有較高的技術(shù)水平和較長的生命周期。 系統(tǒng)盡可能簡化使用者的重復工作,提高工作效率。2.2 系統(tǒng)運行環(huán)境1.瀏覽器版本:internet explorer6.0或以上。2.分辨率:最佳效果1024*768像素。3.操作系統(tǒng):windows xp4.服務器:tomcat 6.0或以上5.數(shù)據(jù)庫:sql server2005或以上6.cpu:p4 1.8ghz7.內(nèi)存:2
19、g以上2.3 系統(tǒng)開發(fā)工具1. sql server2008:是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),擁有其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點。 2. myeclipse 6.5: 是一款功能強大的javaee集成開發(fā)環(huán)境,支持完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持html, struts, jsp, css, javascript, sql, hibernate。3.tomcat 6.0: 是一個小型的輕量級應用服務器, 是開發(fā)和調(diào)試jsp 程序的首選。運行時占用的系統(tǒng)資源小,擴展性好,支持負載平衡與郵件服務等開發(fā)應用系統(tǒng)常用的功能。2.4 系統(tǒng)的性能要求(1)保證系統(tǒng)數(shù)據(jù)的準確
20、性。(2)要求系統(tǒng)能快速響應用戶的操作。(3)系統(tǒng)界面友好,使用簡單,容易掌握2.5 系統(tǒng)的功能要求(1)登錄系統(tǒng),管理員進入相應權(quán)限的子系統(tǒng)。(2)試題錄入:試題庫按專業(yè)分別建立,試題錄入過程中可方便的編輯、增刪試題。(3)試題修改:試題錄入后,可以方便的查看試題,并進行修改。 (4)試卷生成:按照出題數(shù)量自動生成試卷。(5)后臺管理員管理信息:登錄、添加新管理員、刪除管理員等。(6)成功退出系統(tǒng),保證系統(tǒng)安全。 2.6 系統(tǒng)基本業(yè)務流程面向管理員用戶,流程圖如圖2. 6所示:圖2-1 系統(tǒng)基本業(yè)務流程圖2.7 系統(tǒng)用例圖uml提供了用例圖表示法,用來描述系統(tǒng)的功能、用例名稱和參與者及其之間
21、的關(guān)系。用例圖如圖2-2圖所示。圖2-2 系統(tǒng)用例圖2.8 系統(tǒng)類圖本系統(tǒng)由考題管理模塊、試卷生成模塊、試卷管理模塊等,這里主要列出了系統(tǒng)主要模塊的類圖,如圖2-3所示:圖2-3 系統(tǒng)類圖2.9 系統(tǒng)時序圖時序圖和協(xié)作圖是兩個描述系統(tǒng)交互的圖,它們描述的是同一個交互過程,只是不同的角度(不同的視圖)來進行分析。2.9.1 錄入試題時序圖1. 管理員添加試題編號等相關(guān)信息2添加界面取得添加的相關(guān)信息3添加機制往數(shù)據(jù)庫中插入數(shù)據(jù)4. 添加機制顯示添加成功信息至添加結(jié)果界面圖2-4 錄入試題時序圖2.9.2 修改試題時序圖1. 管理員修改試題編號等相關(guān)信息2. 修改界面取得修改后的相關(guān)信息3. 修改
22、機制往數(shù)據(jù)庫中更新數(shù)據(jù)4. 修改機制顯示修改成功信息至修改結(jié)果界面圖2-5 修改試題時序圖2.9.3 刪除試題時序圖1. 管理員點擊相應試題的刪除按鈕2. 試題管理界面獲取要刪除的試題的試題編號3. 刪除機制在數(shù)據(jù)庫中刪除這條記錄4. 刪除機制顯示刪除成功至刪除結(jié)果界面圖2-6 刪除試題時序圖2.9.4 生成試卷時序圖1. 用戶選擇考試的試卷類型2. 按試題數(shù)目選擇界面取得試卷類型3生成試卷機制搜索數(shù)據(jù)庫創(chuàng)建匹配的試題信息表4. 生成試卷機制顯示匹配的試題至試卷界面圖2-7 生成試卷時序圖2.10 詳細功能分析分別對系統(tǒng)的不同用戶進行分析,分析主要使用用例圖、活動圖和需求描述。2.10.1 管
23、理員登錄(1)用例圖和活動圖圖2-8 管理員登錄用例圖和活動圖(2)需求描述1管理員登錄1.1 簡單描述 : 本用例用于用戶登錄系統(tǒng)。1.2 前置條件 : 無。1.3 后置條件 : 用例成功后,用戶登錄進入系統(tǒng)。1.4 事件流1.4.1 基流當用戶提出登錄進入系統(tǒng)請求時,用例啟動。(1)系統(tǒng)轉(zhuǎn)到用戶登錄頁面,提示用戶輸入用戶名和密碼。(2)用戶填寫用戶名和密碼信息。(3)系統(tǒng)驗證輸入的用戶名和密碼,若正確(e-1),則轉(zhuǎn)到首頁,系統(tǒng)激活這一用戶。1.4.2 替代流e-1:如果輸入無效的用戶名和(/或)密碼,系統(tǒng)顯示錯誤信息,用戶可以選擇返回基硫的起始點,重新輸入正確的用戶名和(/或)密碼;或者
24、取消登錄,用例結(jié)束。2.10.2 錄入試題(1)用例圖和活動圖圖2-9 錄入試題用例圖和活動圖(2)需求描述1錄入試題1.1 簡單描述 :本用例用于管理員錄入試題。1.2 前置條件 :管理員必須登錄系統(tǒng);1.3 后置條件 :用例成功后,管理員輸入試題相關(guān)信息。1.4 事件流 1.4.1 基流 : 當用戶提出錄入試題時,用例啟動。 (1)系統(tǒng)轉(zhuǎn)到試題錄入頁面,提示管理員輸入相關(guān)信息。(2)管理員輸入相關(guān)信息。(3)系統(tǒng)驗證輸入的相關(guān)信息,若正確(e-1),則管理員進行確定錄入并保存到數(shù)據(jù)庫。 1.4.2 替代流 e-1:如果輸入無效的信息,系統(tǒng)顯示錯誤信息,用戶可以選擇返回基硫的起始點,重新輸入
25、正確的信息,該用例結(jié)束。2.10.3 生成試卷(1)用例圖和活動圖圖2-10 生成試卷用例圖和活動圖(2)需求描述1生成試卷1.1 簡單描述 :本用例用于管理員生成試卷。1.2 前置條件 :管理員必須登錄系統(tǒng);1.3 后置條件 :用例成功后,管理員輸入試卷題數(shù)相關(guān)信息。1.4 事件流 1.4.1 基流 : 當用戶提出生成試卷時,用例啟動。 (1)系統(tǒng)轉(zhuǎn)到試卷生成頁面,提示管理員輸入相關(guān)信息。(2)管理員輸入相關(guān)信息。(3)系統(tǒng)驗證輸入的相關(guān)信息,若正確(e-1),則管理員進行確定錄入并保存到數(shù)據(jù)庫。 1.4.2 替代流 e-1:如果輸入無效的信息,系統(tǒng)顯示錯誤信息,用戶可以選擇返回基硫的起始點
26、,重新輸入正確的信息,該用例結(jié)束。3 總體設計3.1 系統(tǒng)目標1 確保系統(tǒng)具有良好的系統(tǒng)性能,友好的用戶界面。2 簡單快捷的自動組卷方式。 3 試卷的保密性要求,只有授權(quán)人員才能生成和查閱試卷。4 生成的試卷按照規(guī)定的模板輸出。5 較高的處理效率,便于使用和維護。6 采用成熟技術(shù)開發(fā),使系統(tǒng)具有較高的技術(shù)水平和較長的生命周期。7 系統(tǒng)盡可能簡化使用者的重復工作,提高工作效率。3.2 系統(tǒng)結(jié)構(gòu)設計本項目采用的是mvc三層結(jié)構(gòu),分別為表示層,業(yè)務邏輯層,數(shù)據(jù)訪問層,此模型使項目的結(jié)構(gòu)更加清楚,分工更明確,有利于后期的更新升級和維護。(1)表示層:為客戶端提供對應用程序的訪問,也叫界面層。本系統(tǒng)表示
27、層通過index.jsp來實現(xiàn)統(tǒng)一的界面模板,整個頁面簡潔,操作方便以及提高系統(tǒng)安全性以及瀏覽速度。(2)業(yè)務邏輯層:為實現(xiàn)業(yè)務應用程序的邏輯功能,核心部分,本系統(tǒng)通過servlet來實現(xiàn)業(yè)務邏輯。(3)數(shù)據(jù)訪問層:為表示層或業(yè)務邏輯層提供數(shù)據(jù)服務。3.3 系統(tǒng)功能該系統(tǒng)主要面向的是管理員用戶。功能可劃分為用戶管理、題目管理、試卷管理等功能。結(jié)構(gòu)圖如3-2所示。圖3-1 系統(tǒng)功能模塊圖3.4 數(shù)據(jù)庫概念設計概念模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎。由于各個機器上實現(xiàn)的dbms軟件都是基于某種數(shù)據(jù)模型的,但是在具體機器上實現(xiàn)的模型都有許多嚴格的限制。而現(xiàn)實應用環(huán)境是復雜多變的,如果把實現(xiàn)世界中的事物直接
28、轉(zhuǎn)換為機器中的對象,就非常不方便。因此,人們研究把現(xiàn)實世界中的事物抽象為不依賴與具體機器的信息結(jié)構(gòu),又接近人們的思維,并具有豐富語義的概念模型,然后再把概念模型轉(zhuǎn)換為具體的機器上dbms支持的物理數(shù)據(jù)模型。概念模型的描述工具通常是使用e-r模型圖。該模型不依賴于具體的硬件環(huán)境和dbms。概念結(jié)構(gòu)是對現(xiàn)實世界的一種抽象。所謂抽象是對實際的人、物、事和概念進行人為處理,抽取所關(guān)心的共同特性,忽略非本質(zhì)的細節(jié),并把這些特性用各種概念精確的加以描述,這些概念組成了某種模型。通過概念設計得到的概念模型是從現(xiàn)實世界的角度對所要解決的問題的描述,不依賴于具體的硬件環(huán)境和dbms。3.4.1 物理數(shù)據(jù)模型在數(shù)
29、據(jù)庫概念設計中已經(jīng)分析了本系統(tǒng)中主要的數(shù)據(jù)對象,通過這數(shù)據(jù)對象可以得出數(shù)據(jù)表結(jié)構(gòu)的基本模型,最終實施到數(shù)據(jù)庫中,形成完整的數(shù)據(jù)結(jié)構(gòu)。下面本系統(tǒng)的物理數(shù)據(jù)模型。如圖3-4所示:圖3-2 物理數(shù)據(jù)模型圖3.4.2 數(shù)據(jù)庫e-r圖1考題信息實體不同的考題會有不同的考題信息。對這些考題信息進行詳細的記錄,方便考題的分類和查詢??碱}信息實體,用于存儲所有考題的相關(guān)信息。考題信息實體e-r圖如圖3-5所示。圖3-3 考題信息實體e-r圖2. 試卷信息實體試卷信息實體,用于存儲自動生成試卷的相關(guān)信息,方便用戶查詢。試卷信息實體e-r圖如圖3-6所示。圖3-4 試卷信息實體e-r圖3. 管理員信息實體管理員登
30、錄試卷生成系統(tǒng)時,需要通過登錄窗口驗證才能進入系統(tǒng)主頁。管理員信息實體用于存儲管理員的登錄名稱、登錄密碼和所擁有的權(quán)限。管理員信息實體e-r圖如圖3-12所示。圖3-5 管理員信息實體e-r圖4 詳細設計在基于概要設計的設計結(jié)果上,我們將進行進一步的設計詳細設計。詳細設計階段的根本目標是確定應該怎樣具體地實現(xiàn)所要求的系統(tǒng),也就是說,經(jīng)過這個階段地設計工作,應該得出對目標系統(tǒng)地精確描述,從而在編碼階段可以把這個描述直接翻譯成用某種程序設計語言書寫的程序。4.1 數(shù)據(jù)庫的邏輯設計在設計數(shù)據(jù)庫實體e-r圖之后,需要根據(jù)實體e-r圖設計數(shù)據(jù)表結(jié)構(gòu)。4.1.1 數(shù)據(jù)庫表設計1.1 管理員表 tb_she
31、lf#數(shù)據(jù)項數(shù)據(jù)類型是否為空數(shù)據(jù)項描述注釋admin_idintno#管理員編號主鍵admin_namevarchar(50)no#管理員名稱admin_pwdvarchar(50)no#管理員密碼1.2試題表 test#數(shù)據(jù)項數(shù)據(jù)類型是否為空數(shù)據(jù)項描述注釋test_idintno#試題編號主鍵test_themetextno#試題題目test_resulttextno#試題答案test_scoreintno試題分數(shù)test_typechar(1)no試題類型test_avarchar(50)選項a內(nèi)容test_bvarchar(50)選項b內(nèi)容test_cvarchar(50)選項c內(nèi)容te
32、st_dvarchar(50)選項d內(nèi)容1.3 試卷表 tests#數(shù)據(jù)項數(shù)據(jù)類型是否為空數(shù)據(jù)項描述注釋tests_idintno#試卷編號tests_timevarchar(14)no#出卷時間主鍵tests_pathvarchar(50)no#試卷存儲位置主鍵4.2 系統(tǒng)模塊設計4.2.1 登錄模塊該系統(tǒng)面向游客和管理員,所以進入該頁面時,不同權(quán)限用戶選擇登錄系統(tǒng)時,進入的操作界面不相同,普通讀者用戶只能進行一些普通、簡單的操作如修改個人信息、相關(guān)查詢等功能,而管理員可以進行一系列復雜的操作。該登錄模塊實現(xiàn)兩個功能:權(quán)限選擇和用戶名及密碼驗證。登錄模塊頁面如圖4-1所示。圖4-1 登錄頁面
33、4.2.2考題錄入模塊該模塊主要是對試題進行錄入操作,默認錄入單選題,分數(shù)為1分。用戶需要分別輸入題目以及各個選項內(nèi)容,若輸入各項均正確,則考題錄入成功。考題錄入頁面效果如圖圖4-2 考題錄入頁面4.2.3 生成試卷模塊該模塊主要是對試題進行隨機抽取,按照輸入的題目數(shù)量自動生成試卷。默認單選題為60道,簡答題4道。試卷生成頁面效果如圖圖4-3 試卷生成頁面4.2.4 考題管理模塊該模塊是對輸入的試題進行管理,包括編輯和刪除??碱}管理模塊頁面效果如圖圖4-4 考題管理頁面4.2.5 考卷管理模塊該模塊是對生成的試卷進行管理和查看,如果不想要哪份試卷,可以直接點擊刪除。若要查看試卷,點擊試卷名即可
34、查看。考試管理模塊頁面如圖圖4-5 考卷管理頁面5 系統(tǒng)設計的實現(xiàn)5.1 數(shù)據(jù)庫訪問技術(shù)connection: 與特定數(shù)據(jù)庫的連接(會話)。在連接上下文中執(zhí)行 sql 語句并返回結(jié)果。drivermanager:管理一組 jdbc 驅(qū)動程序的基本服務。resultset: 表示數(shù)據(jù)庫結(jié)果集的數(shù)據(jù)表,通常通過執(zhí)行查詢數(shù)據(jù)庫的語句生成。statement: 對象表示基本語句,其中將單個方法應用于某一目標和一組參數(shù),以返回結(jié)果。5.1.1數(shù)據(jù)庫訪問類的實現(xiàn)本系統(tǒng)采用jsp+javabean+servlet技術(shù)進行開發(fā),為了更好地進行對數(shù)據(jù)庫的相關(guān)操作,這里定義一個databean類負責數(shù)據(jù)庫的連接、
35、sql語句的執(zhí)行等工作。本系統(tǒng)采用數(shù)據(jù)庫連接池進行數(shù)據(jù)庫的統(tǒng)一管理,同時在數(shù)據(jù)庫的操作上進行了封裝,方便程序開發(fā)時與數(shù)據(jù)庫的交互。5.2 利用servlet通信servlet通信是指在servlet和jsp之間、servlet和servlet間傳遞信息,servlet程序從數(shù)據(jù)庫獲得數(shù)據(jù)后,傳遞給jsp頁面顯示。本系統(tǒng)利用jsp的request作用范圍變量作為數(shù)據(jù)傳遞方法來實現(xiàn),servlet程序把屬性值通過request.setattribute()方法寫入request作用范圍中,通過request轉(zhuǎn)發(fā)跳轉(zhuǎn)至目標頁面后,在目標頁面中用request.getattribute()讀取作用范圍
36、變量。6 測 試軟件測試是一個為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,其動機是通過一些有效的方法,捕捉軟件中的錯誤,從而達到保證軟件內(nèi)在質(zhì)量的目的。6.1 單元測試單元測試又稱模塊測試,是針對軟件設計的最小單位-程序模塊,進行正確性檢驗的測試工作。其目的在于發(fā)現(xiàn)各模塊內(nèi)部可能存在的各種差錯。在本系統(tǒng)中,很多模塊的邏輯功能相似,因此對功能相似的模塊的測試情況作統(tǒng)一說明。在此測試中主要對系統(tǒng)查找、增加、刪除進行測試。6.1.1 登錄測試(1)該測試案例是以一個b/s結(jié)構(gòu)的登錄功能點為被測對象,假設用戶使用的瀏覽器為ie6.0。(2)功能描述如下:1. 用戶在地址欄輸入相應地址,要求顯示登錄界面。2. 輸入用
37、戶名和密碼,按登錄按鈕,系統(tǒng)開始校驗數(shù)據(jù),并給出相應提示信息。 3. 如果用戶名或者密碼任一信息未輸入,登錄后系統(tǒng)給出相應提示信息。(3)測試用例如表6-1和表6-2所示表6-1 系統(tǒng)登錄測試用例表用例id001用例名稱系統(tǒng)登錄用例描述用戶名存在、密碼正確的情況下,進入系統(tǒng)。頁面信息包含:頁面背景顯示用戶名和密碼錄入接口,輸入數(shù)據(jù)后的登入系統(tǒng)接口。用例入口打開ie,在地址欄輸入登錄頁面地址,進入登錄界面。表6-2 管理員登錄測試步驟表測試用例編號場景測試步驟預期結(jié)果tc1初始頁面顯示在ie地址欄輸入登錄界面地址。頁面元素完整,正常顯示。tc2用戶名輸入輸入admin輸入成功tc3密碼輸入輸入與
38、用戶名并聯(lián)的數(shù)據(jù)admin輸入成功tc4系統(tǒng)登錄成功tc2,tc3,登錄按鈕登錄成功tc5用戶名、密碼完整性校驗不輸入任何數(shù)據(jù),直接按登錄按鈕登錄失敗,彈出提示窗口:請輸入用戶名。tc6密碼驗證輸入用戶名,不輸入密碼,點擊登錄按鈕。登錄失敗,彈出提示窗口:請輸入密碼。tc7密碼有效性認證輸入用戶名,輸入和用戶名不并聯(lián)的密碼,點擊登錄按鈕彈出提示窗口:登錄失敗6.1.2 數(shù)據(jù)錄入測試(1)在該測試中以錄入考題內(nèi)容測試實例。(2)功能描述如下:1. 輸入題目以及abcd選項內(nèi)容,如果正確輸入,則數(shù)據(jù)提交到數(shù)據(jù)庫,系統(tǒng)刷新頁面,返回考題錄入頁面。2.如果輸入分數(shù)格式錯誤,則提交按鈕失效。3若輸入數(shù)據(jù)
39、不完整,系統(tǒng)彈出提示窗口。(3)測試用例如表6-3和表6-4所示表6-3 錄入考題測試用例表用例id002用例名稱錄入考題內(nèi)容用例描述當輸入完整的及正確的數(shù)據(jù)后,系統(tǒng)提交數(shù)據(jù),否則系統(tǒng)會顯示信息提示。用例入口用戶通過點擊錄入按鈕,提示錄入信息。表6-4錄入考題測試步驟表測試用例編號場景測試步驟預期結(jié)果tc8初始頁面顯示點擊錄入考題鏈接,進入考題錄入頁面。頁面元素完整,正常顯示。tc9題目輸入輸入:數(shù)據(jù)庫的概念是什么?輸入成功tc10輸入分數(shù)輸入:2輸入成功tc11輸入abcd選項內(nèi)容分別輸入:保存、讀取、刪除、查找輸入成功tc12輸入答案內(nèi)容輸入:a輸入成功tc13數(shù)據(jù)提交成功tc9,tc10
40、,tc11,tc12點擊錄入按鈕系統(tǒng)提示錄入成功tc14考題分數(shù)完整性驗證輸入數(shù)據(jù)庫的概念,點擊提交按鈕系統(tǒng)彈出提示窗口tc15選項空值驗證不輸入任何數(shù)據(jù),直接點擊提交按鈕系統(tǒng)彈出提示窗口tc16答案空值驗證不輸入任何數(shù)據(jù),直接點擊提交按鈕系統(tǒng)彈出提示窗口6.2 集成測試集成測試是根據(jù)實際情況對程序模塊采用適當?shù)募蓽y試策略組裝起來,對系統(tǒng)接口以及集成后的功能進行正確性驗證的測試工作。所以它是把經(jīng)過單元測試的模塊放在一起形成一個子系統(tǒng)來測試。在子系統(tǒng)中對數(shù)據(jù)的增、刪、改、查找測試正常。6.3 系統(tǒng)測試系統(tǒng)測試就是將已經(jīng)集成好的軟件系統(tǒng),作為整個計算機系統(tǒng)的一個元素,與計算機硬件、外設、某些支持
41、軟件、數(shù)據(jù)和人員等其他元素結(jié)合在一起,在實際運行環(huán)境下,對計算機系統(tǒng)進行一系列的組裝測試和確認測試。對該系統(tǒng)進行系統(tǒng)測試:輸入網(wǎng)址進入該系統(tǒng)登錄界面,登錄成功后,能正常顯示主頁面,各個模塊運行正常。7 總 結(jié)本系統(tǒng)是基于b/s結(jié)構(gòu)的試卷生成系統(tǒng),開發(fā)本系統(tǒng)的目的是為了解決教師手動出題效率低且浪費時間的現(xiàn)象。系統(tǒng)的完成不僅節(jié)約了很多的人力和物力,而且還提高了出題效率和考試的可靠性,減少老師的工作強度,節(jié)約了大量的時間。試卷生成系統(tǒng)在功能上比較完善,主要包括試題錄入、試題管理、試卷生成、試卷管理等模塊。根據(jù)各個模塊的功能需求,設計編寫了功能完善的javabean組件,使得整個系統(tǒng)界面和功能的設計思
42、路非常清晰,而且易于維護和擴展。封裝了數(shù)據(jù)庫作為類databean.java,使在編寫javabean時可以方便地調(diào)用。操作流程清晰,通過使用流程來貫穿整個設計過程。參考文獻1 周桓:jsp項目開發(fā)全程實錄m,清華大學出版社2008年版,第1-160頁。2 計磊:精通j2ee-整合應用案例m,人民郵電出版社2006版,第133-166頁。3 craig larman:uml和模式應用m,機械工業(yè)出版社2007年版,第1-250頁。4 何玉潔:數(shù)據(jù)庫原理與應用m,機械工業(yè)出版社2007年版,第1-200頁。5 張亞飛:javascript開發(fā)王m,電子工業(yè)出版社2007年版,第1-300頁。6
43、劉萬軍:java程序設計m,清華大學出版社2006年版,第1-400頁。7 孫鑫:servlet/jsp深入詳解m,電子工業(yè)出版社2008年版,第1-300頁。8 (美)弗里曼:head first 設計模式(中文版)m,中國電力出版社2007年版,第100-400頁。9 王麗菊:jsp動態(tài)網(wǎng)頁編程m,北京理工大學出版2009年版,第1-300頁。10 曲朝陽:軟件測試技術(shù)m,中國水電出版社2006年版,第1-300頁。11 劉中兵:java 高手真經(jīng)(網(wǎng)絡開發(fā)卷):java web 核心技術(shù)(web基礎+數(shù)據(jù)庫+jsp/javabean/servlet+jsf)m,電子工業(yè)出版社2008年版
44、,第1-300頁。12 孫衛(wèi)琴:java面向?qū)ο缶幊蘭,電子工業(yè)出版社2006年版,第1-500頁。13 彭一明:挑戰(zhàn)jsp&servlet web2.0應用開發(fā)m,機械工業(yè)出版社2007年版,第1-200頁。14 孫衛(wèi)琴:tomcat與java web開發(fā)技術(shù)詳解m,電子工業(yè)出版社2009年版,第1-500頁。15 張洪偉:java開發(fā)利器:tomcat web開發(fā)及整合應用(珍藏版)m,清華大學出版社2006年版,第1-500頁。16 張峰:java web 2.0架構(gòu)開發(fā)與項目實戰(zhàn)m,清華大學出版社2009年版,第1-500頁。附錄1 錄入試題代碼:package com.zhbit.s
45、ervlet.admin;import javax.servlet.*;import javax.servlet.http.*;import java.io.*;import java.util.*;import com.zhbit.bean.*;import com.zhbit.bean.db.*;public class inserttest extends httpservlet private static final string content_type = text/html; charset=gbk; /initialize global variables public vo
46、id init() throws servletexception /process the http get request public void doget(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception databean db=new databean(); testbean tb=new testbean(); tb.settest_result(request.getparameter(test_result); tb.settest_sco
47、re(integer.parseint(request.getparameter(test_score); tb.settest_theme(request.getparameter(test_theme); tb.settest_type(request.getparameter(test_type); if(tb.gettest_type().equals(1) tb.settest_a(request.getparameter(a); tb.settest_b(request.getparameter(b); tb.settest_c(request.getparameter(c); t
48、b.settest_d(request.getparameter(d); boolean ok=db.inserttest(tb); system.out.println(ok); if(ok) request.setattribute(alert,alert(錄入成功); else request.setattribute(alert,alert(錄入失敗); db.close(); request.getrequestdispatcher(index.jsp?action=1).forward(request, response); /process the http post reque
49、st public void dopost(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception doget(request, response); /clean up resources public void destroy() 2 編輯試題代碼:package com.zhbit.servlet.admin;import javax.servlet.*;import javax.servlet.http.*;import java.io.*;import
50、 java.util.*;import com.zhbit.bean.testbean;import com.zhbit.bean.db.*;public class updatetest extends httpservlet private static final string content_type = text/html; charset=gbk; /initialize global variables public void init() throws servletexception /process the http get request public void doge
51、t(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception testbean tb=new testbean(); databean db=new databean(); tb.settest_a(request.getparameter(a); tb.settest_b(request.getparameter(b); tb.settest_c(request.getparameter(c); tb.settest_d(request.getparameter(d); tb.settes
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年五年級語文上冊教學總結(jié)樣本(二篇)
- 2025年個人商鋪租房合同標準版本(三篇)
- 醫(yī)藥行業(yè)物流運輸合同范文
- 加油站裝修項目居間協(xié)議
- 城市道路監(jiān)理居間合同
- 乳制品低溫運輸托運協(xié)議
- 醫(yī)療器械無菌運輸管理合同
- 海鮮冷鏈物流代理合同
- 酒泉灰色燒結(jié)磚施工方案
- 市政項目渣土清理運輸協(xié)議
- 呆死帳的發(fā)生與預防課件
- 10000中國普通人名大全
- 導數(shù)常見函數(shù)圖像
- 起重機械安裝吊裝危險源辨識、風險評價表
- 華北理工兒童口腔醫(yī)學教案06兒童咬合誘導
- 中國建筑項目管理表格
- 高一3班第一次月考總結(jié)班會課件
- 公共政策分析導論教學課件匯總完整版電子教案
- 我國油菜生產(chǎn)機械化技術(shù)(-119)
- 大跨度斜拉橋上部結(jié)構(gòu)施工技術(shù)(圖文并茂)
- 論人口模型論文計劃生育政策調(diào)整對人口數(shù)量結(jié)構(gòu)及其影響
評論
0/150
提交評論