網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第1頁
網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第2頁
網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第3頁
網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第4頁
網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、哈 爾 濱 理 工 大 學(xué) 畢 業(yè) 設(shè) 計 題 目: 網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn) 院、 系: 榮成學(xué)院 軟件工程系 姓 名: SSSSS 指導(dǎo)教師: SSSS 系 主 任: SSS 2014 年 6 月 21 日哈爾濱理工大學(xué)畢業(yè)設(shè)計(論文)評語學(xué)生姓名:SSSS 學(xué)號:10300SSSSS學(xué) 院:SSSSS 專業(yè):軟件工程任務(wù)起止時間:2013 年 9 月 10 日至 2014 年 6 月 21 日畢業(yè)設(shè)計(論文)題目:網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn)指導(dǎo)教師對畢業(yè)設(shè)計(論文)的評語: 指導(dǎo)教師簽名: 指導(dǎo)教師職稱: 評閱教師對畢業(yè)設(shè)計(論文)的評語:評閱教師簽名: 評閱教師職稱: 答辯委員會

2、對畢業(yè)設(shè)計(論文)的評語:答辯委員會評定,該生畢業(yè)設(shè)計(論文)成績?yōu)椋?答辯委員會主席簽名: 職稱: 年 月 日教務(wù)處制表哈爾濱理工大學(xué)畢業(yè)設(shè)計(論文)任務(wù)書學(xué)生姓名:SSSS 學(xué)號:1030SSSSS學(xué) 院:SSSSS 專業(yè):軟件工程任務(wù)起止時間:2013 年 9 月 10 日至 2014 年 6 月 21 日畢業(yè)設(shè)計(論文)題目:網(wǎng)絡(luò)在線考試系統(tǒng)的設(shè)計與實(shí)現(xiàn)畢業(yè)設(shè)計工作內(nèi)容: 在線考試系統(tǒng)旨在實(shí)現(xiàn)考試的無紙化管理,對一些科目的考試可以通過互聯(lián)網(wǎng)絡(luò)或局域網(wǎng)進(jìn)行,方便校方考務(wù)的管理,也方便了考生,尤其適合考生分布廣,不易集中的遠(yuǎn)程教育。主要開發(fā)系統(tǒng)的后臺管理系統(tǒng)JAVA在線考試管理子系統(tǒng),系統(tǒng)

3、包括試題管理、考生管理、在線制作試卷、控制學(xué)生考試的設(shè)置、試卷審批等功能。本論文主要介紹JAVA在線考試管理子系統(tǒng)的分析、設(shè)計和開發(fā)的全部過程。運(yùn)用程序流程圖等對在線管理子系統(tǒng)的設(shè)計過程進(jìn)行詳細(xì)的說明。資料:1 滕佳東.管理信息系統(tǒng).東北財經(jīng)大學(xué)出版社,2008.2. 2 薛鶴娟.基于WEB的大學(xué)選課系統(tǒng)分析.希望月報(上半月),2007年11期.3 甘仞初,顏志軍,龍 虹.信息系統(tǒng)分析與設(shè)計.北京:高等教育出版社,2003.4 劉永勤.成人高校教學(xué)檔案開發(fā)利用的現(xiàn)實(shí)意義.中文期刊.2008年3期.5 張海藩.軟件工程導(dǎo)論(第五版)學(xué)習(xí)輔導(dǎo).清華大學(xué)出版社,2008年9期. 指導(dǎo)教師意見:簽名

4、:年 月 日系主任意見:簽名:年 月 日教務(wù)處制表網(wǎng)絡(luò)在線考試系統(tǒng)摘 要隨著計算機(jī)技術(shù)的飛速發(fā)展,學(xué)校也已進(jìn)入信息化時代。為了使學(xué)考試管理更高效、更科學(xué),決定開發(fā)基于JSP技術(shù)的在線考試系統(tǒng)。本文采用自頂向下的結(jié)構(gòu)化的系統(tǒng)分析方法,闡述了一個功能全面的在線考試系統(tǒng)的開發(fā)過程、操作流程及其一些核心的技術(shù)。本文首先進(jìn)行了項目概述,簡單介紹了項目開發(fā)的背景、項目開發(fā)的目的和項目開發(fā)的意義;接下來是系統(tǒng)規(guī)劃階段,通過實(shí)際的業(yè)務(wù)流程調(diào)研,分析了系統(tǒng)的組織結(jié)構(gòu),具體完成了在線考試系統(tǒng)的需求分析、可行性分析、現(xiàn)行業(yè)務(wù)流程分析,并通過對現(xiàn)行業(yè)務(wù)流程的優(yōu)化,得出了系統(tǒng)的業(yè)務(wù)流程;之后是系統(tǒng)分析,具體完成了數(shù)據(jù)流

5、分析和數(shù)據(jù)字典;系統(tǒng)設(shè)計階段主要完成了功能模塊的劃分、數(shù)據(jù)庫的設(shè)計和系統(tǒng)界面設(shè)計。該階段對各個模塊的功能進(jìn)行了詳細(xì)設(shè)計,形成了本系統(tǒng)的功能模塊圖,在此基礎(chǔ)上選擇了合適的開發(fā)模式;數(shù)據(jù)庫的設(shè)計先進(jìn)行了概念結(jié)構(gòu)設(shè)計,之后進(jìn)行了邏輯結(jié)構(gòu)設(shè)計,最后完成了數(shù)據(jù)庫表的設(shè)計。本系統(tǒng)是在線考試系統(tǒng)的基礎(chǔ)上,用JSP和SQL2008數(shù)據(jù)庫設(shè)計并完成在線考試系統(tǒng)。通過系統(tǒng)調(diào)試結(jié)果顯示,本系統(tǒng)基本完成了功能需求。在整個設(shè)計過程中,采用瀑布模型和結(jié)構(gòu)化的設(shè)計方法。本系統(tǒng)界面美觀友好,操作方便,做出了自己的特色。但由于時間倉促加上缺乏系統(tǒng)開發(fā)經(jīng)驗(yàn),系統(tǒng)在設(shè)計過程中不可避免地遇到了各種各樣的問題本系統(tǒng)在設(shè)計方面采用B/S

6、模式,同時使用JSP技術(shù)進(jìn)行基本頁面的設(shè)計與功能實(shí)現(xiàn),后臺數(shù)據(jù)庫選用SQL Server 2008數(shù)據(jù)庫。本系統(tǒng)的設(shè)計實(shí)施為在線考試系統(tǒng)的運(yùn)行做基礎(chǔ),為在線考試系統(tǒng)提供良好的條件。關(guān)鍵詞 在線考試;JSP;B/S模式Internet Online Exam SystemAbstractWith the rapid development of computer technology, the school also has entered the information age. To make the school exam management more efficient, more s

7、cientific, decided to develop online examination system based on JSP technology.In this paper, the top-down structured systems analysis approach, elaborated the development process of a full-featured online examination system, operating procedures and some of the core technology. Firstly, an overvie

8、w of the project conducted a brief introduction to the project development background, purpose and significance of the project to develop the project development; followed by the system planning stage, the actual business processes through research, analysis of the organizational structure of the sy

9、stem, specifically the completion of an online examination system needs analysis, feasibility analysis, analysis of existing business processes, and through the optimization of existing business processes, business process system obtained; followed by a systematic analysis of specific data flow anal

10、ysis and complete data dictionary; system design phase completed a major division of functional modules, database design and system interface design. This phase of the function of each module were designed in detail, forming a functional block diagram of the system, on this basis, choose the right d

11、evelopment model; design of the database structure design concepts were first, followed by the logical structure of the design, and finally complete database table design.This system is the basis of online examination system based on the design and SQL2008 data base using JSP and complete the online

12、 examination system.Through the system debugging results show that the system is basically completed the functional requirements.Throughout the design process,using the waterfall mode land structured design methods.The system is friendly and beautiful interface, easy operation, made its own characte

13、ristics . However, due to time constraint sand lack of experience in systems development,systems design process inevitably en count era variety of problems.The system design uses B/S mode, using JSP technology for the design an d realization of the basic functions of the page,choose the background d

14、atabase SQL Server 2008 database.Design and implementation of the system as a foundation for the operation of the online examination system, providing o od conditions for online examination system.Key Words online;JSP;B/S Mode 目 錄摘 要IAbstractII第一章 緒論11.1 項目開發(fā)的背景11.2 項目開發(fā)的意義1第二章 需求分析32.1 可行性分析3 2.1.1

15、 技術(shù)可行性3 2.1.2 經(jīng)濟(jì)可行性4 2.1.3 社會可行性42.2 總體設(shè)計原則42.3 小結(jié)5第三章 系統(tǒng)分析63.1 業(yè)務(wù)流程分析63.2 數(shù)據(jù)流圖7第四章 系統(tǒng)設(shè)計84.1 系統(tǒng)功能設(shè)計84.2 系統(tǒng)數(shù)據(jù)庫設(shè)計9 4.2.1 概念結(jié)構(gòu)設(shè)計9 4.2.2 數(shù)據(jù)庫表設(shè)計144.3 系統(tǒng)開發(fā)工具與開發(fā)模式的選擇16 4.3.1 系統(tǒng)開發(fā)工具16 4.3.2 系統(tǒng)設(shè)計模式174.4后臺總體架構(gòu)介紹184.5 小結(jié)19第五章 系統(tǒng)實(shí)現(xiàn)205.1 系統(tǒng)管理員登錄模塊20 5.1.1 登錄20 5.1.2 課程管理界面22 5.1.3 題庫管理界面22 5.1.4 試卷管理界面22 5.1.5

16、添加考生界面23 5.1.6 評分老師管理界面23 5.1.7 修改密碼界面235.2 考生模塊245.3 評分教師模塊24第六章 軟件測試與分析256.1 軟件測試的重要性256.2 測試實(shí)例的研究與選擇256.3 測試環(huán)境與測試條件266.4 系統(tǒng)運(yùn)行情況266.5 系統(tǒng)評價26結(jié) 論27致 謝28參考文獻(xiàn)29第一章 緒論1.1 項目開發(fā)的背景隨著計算機(jī)產(chǎn)業(yè)的迅速發(fā)展,電子計算機(jī)已廣泛的應(yīng)用于信息管理、文字處理、輔助設(shè)計、輔助教學(xué)及人們的日常生活中。在線考試系統(tǒng)主要是針對學(xué)校涉及學(xué)生考試的一系列相關(guān)工作的管理,本系統(tǒng)的建立使學(xué)校在線考試的管理更加規(guī)范化、系統(tǒng)化,查詢手段更加便捷化。同時,在

17、線考試系統(tǒng)也是實(shí)現(xiàn)學(xué)??荚嚬芾憩F(xiàn)代化和信息化的重要內(nèi)容1。近年來,隨著學(xué)校學(xué)生的數(shù)量逐漸增加,人工書寫數(shù)據(jù)已經(jīng)不能夠處理如此龐大的數(shù)據(jù)。為了更好的適應(yīng)信息時代的高效性,一個利用計算機(jī)來實(shí)現(xiàn)學(xué)校在線考試的系統(tǒng)將必然誕生。基于這一點(diǎn),設(shè)計了一個在線考試系統(tǒng),用來就學(xué)生在線考試進(jìn)行管理,以便在最短的時間內(nèi),高效準(zhǔn)確的完成整個在線考試的過程。基于對上述的認(rèn)識,收集相關(guān)資料和數(shù)據(jù),查閱有關(guān)文獻(xiàn)及技術(shù)參數(shù),對學(xué)校在線考試的實(shí)際需求等方面進(jìn)行了調(diào)研,發(fā)現(xiàn)目前所采用的手工記錄的方法進(jìn)行管理存在以下幾個方面的弊端:對象范圍廣,數(shù)據(jù)存儲不易;填寫的數(shù)據(jù)多,內(nèi)容相當(dāng)復(fù)雜,且大量數(shù)據(jù)重復(fù);不易存檔,成千上萬的信息和堆

18、積如山的單據(jù)對管理人員來說是一個負(fù)擔(dān),需要大量的文檔資料。鑒于以上種種原因,在線考試的管理急需一種軟件來代替手工操作來管理數(shù)據(jù)資料。計算機(jī)技術(shù)在現(xiàn)代管理中的應(yīng)用,使計算機(jī)成為領(lǐng)導(dǎo)者和管理人員應(yīng)用現(xiàn)代技術(shù)的重要工具1。計算機(jī)輔助學(xué)校管理活動,可以極大地增強(qiáng)管理者采集、處理信息的能力,從而有利于管理者及時決策。計算機(jī)系統(tǒng)能根據(jù)管理過程的變化情況,將原始數(shù)據(jù)、資料等進(jìn)行加工、保存,管理人員可以在解決具體問題需要信息資料時,隨時進(jìn)行檢索查詢,了解整個在線考試系統(tǒng)的動態(tài)情況,進(jìn)行動態(tài)管理,從而有效的處理學(xué)校在線考試的管理工作,實(shí)現(xiàn)學(xué)校對題庫信息管理的自動化,提高辦學(xué)效率。1.2 項目開發(fā)的意義在線考試系

19、統(tǒng)的開發(fā)目的是使在線考試模式從手工記錄轉(zhuǎn)變成信息管理,為在線考試人員提供方便條件。對在線考試的實(shí)際情況進(jìn)行調(diào)研之后,進(jìn)行詳細(xì)的需求分析,對現(xiàn)有的管理模式進(jìn)行改進(jìn),開發(fā)出一套新型的管理系統(tǒng),從中領(lǐng)悟系統(tǒng)開發(fā)的思想,掌握系統(tǒng)開發(fā)的流程和方法。隨著學(xué)校信息系統(tǒng)的不斷完善,學(xué)校的管理將越來越依賴于信息化的管理。所以系統(tǒng)開發(fā)將圍繞在線考試工作的實(shí)際情況,使之能迅速適應(yīng)學(xué)??荚嚨男枰?。在線考試系統(tǒng)的實(shí)施的現(xiàn)實(shí)意義:減少管理考試的工作人員;管理人員可以隨時瀏覽查看,而且更加直觀;改變了以前工資手工記錄的方式,電腦錄入更加方便快捷;實(shí)現(xiàn)了在線考試的計算機(jī)化。第二章 需求分析2.1 可行性分析可行性分析也稱為可

20、行性研究,是在調(diào)查的基礎(chǔ)上,針對新系統(tǒng)的開發(fā)是否具備必要性和可能性,對新系統(tǒng)的開發(fā)從技術(shù)、經(jīng)濟(jì)、社會等方面進(jìn)行分析和研究,以避免投資失誤,保證新系統(tǒng)的開發(fā)成功2。可行性研究的目的就是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。本系統(tǒng)采用JSP作為開發(fā)工具,本系統(tǒng)具有以下特性JSP(Java Server Pages)是由Sun Microsystem公司于1999/6推出的新技術(shù),是基于Java Servlet以及整個Java體系的Web開發(fā)技術(shù)。JSP頁面是由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁面被客戶端請求以后對這些Java代碼進(jìn)行處理,然后將生成的HTML頁面返

21、回給客戶端的瀏覽器。利用這一技術(shù)可以建立先進(jìn)、安全和跨平臺的動態(tài)網(wǎng)站。JSP的優(yōu)點(diǎn):一次編寫,到處運(yùn)行。系統(tǒng)的多平臺支持?;旧峡梢栽谒衅脚_上的任意環(huán)境中開發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。從只有一個小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺Applications進(jìn)行事務(wù)處理、消息處理,一臺服務(wù)器到無數(shù)臺服務(wù)器,Java顯示了一下巨大的生命力。多樣化和功能強(qiáng)大的開發(fā)工具支持。JSP的缺點(diǎn):正是由于跨平臺的功能,為了極度的伸縮能力,所以極大地增加了產(chǎn)品的復(fù)雜性。Java的運(yùn)行速度是用class常駐內(nèi)存來完成的,所以它在一些情況下所使

22、用的內(nèi)存比用戶數(shù)量來說是“最低性能價格比。JSP技術(shù)基于強(qiáng)大的Java語言,具有良好的伸縮性,與JavaEnterprise API緊密地集成在一起,在網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用開發(fā)領(lǐng)域具有得天獨(dú)厚的優(yōu)勢,基于Java平臺構(gòu)建網(wǎng)絡(luò)程序已經(jīng)被越來越多的人認(rèn)為是最有發(fā)展前途的技術(shù)。下面將分別從技術(shù)、經(jīng)濟(jì)、社會三個方面對在線考試系統(tǒng)的建設(shè)進(jìn)行分析和研究。2.1.1 技術(shù)可行性根據(jù)學(xué)校提出的系統(tǒng)功能、性能及實(shí)現(xiàn)系統(tǒng)的各種約束條件,根據(jù)新系統(tǒng)目標(biāo)來衡量所需的技術(shù)是否具備,本系統(tǒng)是一個數(shù)據(jù)庫管理和查詢的系統(tǒng),現(xiàn)有的技術(shù)已較為成熟,硬件、軟件的性能要求、環(huán)境條件等各項條件良好,估計利用現(xiàn)有技術(shù)條件應(yīng)完全可以達(dá)到該系統(tǒng)的

23、功能目標(biāo)。同時,考慮給予的開發(fā)期限也較為充裕,預(yù)計系統(tǒng)是可以在規(guī)定期限內(nèi)完成開發(fā)的。基于瀏覽器的在線考試,關(guān)鍵技術(shù)在于網(wǎng)頁的動態(tài)顯示和管理,即從數(shù)據(jù)庫中取得相應(yīng)的試卷數(shù)據(jù),并收集用戶輸入數(shù)據(jù)能夠?qū)荚囘^程進(jìn)行控制。采用最新的JSP與SQL技術(shù)開發(fā),管理端和考生界面全部采用B/S模式構(gòu)建,系統(tǒng)的部署、應(yīng)用、維護(hù)更加方便。同時,大型數(shù)據(jù)庫SQL Server 2008提供了數(shù)據(jù)庫管理的能力,因此技術(shù)方案是成熟的和可行的。由以上分析可知,在線考試系統(tǒng)的開發(fā)在技術(shù)上是可行的。2.1.2 經(jīng)濟(jì)可行性學(xué)校具有信息化的處理設(shè)施,并且擁有支持本系統(tǒng)的應(yīng)用平臺。因此無需再投入資金購買其他設(shè)施。系統(tǒng)的開發(fā)基于本人

24、對程序開發(fā)的實(shí)踐學(xué)習(xí)而來,學(xué)校無需資金投入,并且軟件開發(fā)過程投入的成本不高,因此開發(fā)經(jīng)費(fèi)完全可以接受。軟件開發(fā)周期一般為23個月,開發(fā)所需硬件軟件設(shè)施目前大多數(shù)PC機(jī)系統(tǒng)能夠承擔(dān),開發(fā)費(fèi)用不高。目前,大多數(shù)單位都擁有高性能微機(jī)和局域網(wǎng),該軟件系統(tǒng)的安裝、部署、運(yùn)行和維護(hù),都不會給單位增加太高的費(fèi)用。所以該系統(tǒng)在經(jīng)濟(jì)上是可行的。由以上分析可知,在線考試系統(tǒng)在經(jīng)濟(jì)上是可行的。2.1.3 社會可行性本系統(tǒng)的社會可行性主要從法律因素、用戶使用可行性兩方面進(jìn)行研究。法律因素:本系統(tǒng)是根據(jù)在線考試系統(tǒng)的實(shí)際情況開發(fā)研制的,是通過大量的調(diào)研得出的,系統(tǒng)的軟件設(shè)計是在獨(dú)立的環(huán)境下完成的,無可供抄襲的軟件產(chǎn)品。

25、用戶使用可行性:本系統(tǒng)對用戶的要求,除了需要具備在Microsoft Windows平臺上使用個人電腦的知識外,并不需要特別的技術(shù)能力。使用系統(tǒng)的管理員,需要具備對Tomcat服務(wù)器的使用能力,在投入使用前,無需對操作系統(tǒng)的人員進(jìn)行培訓(xùn)。這樣既減少投入成本又簡化了操作環(huán)節(jié)。目前,大多數(shù)PC機(jī)和局域網(wǎng)能夠運(yùn)行該系統(tǒng),該系統(tǒng)的安裝、調(diào)試、運(yùn)行不會改變原計算機(jī)系統(tǒng)的設(shè)置和網(wǎng)絡(luò)的布局,并且大多數(shù)用戶幾乎不用做任何培訓(xùn)都能夠方便的操作系統(tǒng)。因此從操作可行性的角度來衡量,本系統(tǒng)的開發(fā)方案也是可行的。由以上分析可知,本系統(tǒng)具有社會可行性。2.2 總體設(shè)計原則本系統(tǒng)為了設(shè)計、實(shí)現(xiàn)和后期維護(hù)的方便,以及系統(tǒng)用戶

26、使用的便利,所以必須采取一定的設(shè)計原則3。其主要設(shè)計原則有:簡單性:在實(shí)現(xiàn)系統(tǒng)的功能的同時,盡量讓系統(tǒng)操作簡單易懂,這對于一個系統(tǒng)來說是非常重要的。針對性:本系統(tǒng)設(shè)計是針對在線考試的需求定向開發(fā)設(shè)計,所以具有專業(yè)突出和很強(qiáng)的針對性。實(shí)用性:要求本系統(tǒng)能夠滿足學(xué)校在線考試的需求,因此具有良好的實(shí)用性。一致性:頁面整體設(shè)計風(fēng)格以及命名規(guī)則的一致性:整體頁面布局和用圖用色風(fēng)格及變量、類名和其他元素的命名規(guī)則保持一致。功能一致性:完成同樣的功能應(yīng)該盡量使用同樣的元素。 元素風(fēng)格一致性:界面元素的美觀風(fēng)格、擺放位置在同一個界面和不同界面之間都應(yīng)該是一致的。變量命名規(guī)則的一致性:變量應(yīng)該用統(tǒng)一的規(guī)則進(jìn)行命

27、名,做到任意變量均能從上下文推斷其義。先進(jìn)性:本系統(tǒng)采用JSP技術(shù)、SQL Server2008等被廣泛采用系統(tǒng)開發(fā)技術(shù)和數(shù)據(jù)庫,因此本設(shè)計具有良好的先進(jìn)性,具體表現(xiàn)在其具有良好的可擴(kuò)展性,可開發(fā)性。2.3 小結(jié) 本章主要是對本系統(tǒng)設(shè)計的一些基本知識進(jìn)行介紹。由于本系統(tǒng)是使用JSP技術(shù)實(shí)現(xiàn)的,所以對JSP技術(shù)做了一個詳細(xì)的介紹,包括其工作原理、功能以及使用JSP技術(shù)的優(yōu)點(diǎn)。本章還介紹了SQL Server的特點(diǎn),它是一個可伸縮的高性能的關(guān)系數(shù)據(jù)庫管理系統(tǒng);接著介紹了它的安全性,因?yàn)樵陂_發(fā)數(shù)據(jù)庫系統(tǒng)是,安全性是設(shè)計師開發(fā)者不能回避的重要環(huán)節(jié);在本章,介紹了系統(tǒng)運(yùn)行過程中數(shù)據(jù)庫的管理維護(hù),確保系統(tǒng)

28、中的數(shù)據(jù)完整有效。最后,介紹了技術(shù)及其工作原理等。 第三章 系統(tǒng)分析3.1 業(yè)務(wù)流程分析在進(jìn)行業(yè)務(wù)流程分析時,需要按照原有信息流動過程,逐個地調(diào)查分析所有環(huán)節(jié)的處理業(yè)務(wù)、處理內(nèi)容、處理順序和對處理時間的要求,弄清各個環(huán)節(jié)需要的信息、信息來源、流經(jīng)去向、處理方法、計算方法、提供信息的時間和信息形態(tài)(報告、報單、屏幕顯示)等4。業(yè)務(wù)流程分析可以幫助開發(fā)者了解該業(yè)務(wù)處理過程,發(fā)現(xiàn)和處理系統(tǒng)調(diào)查工作中的錯誤和疏漏。業(yè)務(wù)流程分析是通過業(yè)務(wù)流程圖來進(jìn)行,即用一些規(guī)定的符號及連線來表示某個具體業(yè)務(wù)處理過程5。具體業(yè)務(wù)流程如圖3-1所示。圖3-1業(yè)務(wù)流程圖3.2 數(shù)據(jù)流圖數(shù)據(jù)流程是指數(shù)據(jù)在系統(tǒng)中產(chǎn)生、傳輸、加

29、工處理、使用、存儲的過程6。數(shù)據(jù)流程分析是把數(shù)據(jù)在現(xiàn)行系統(tǒng)內(nèi)部的流動抽象的獨(dú)立起來,舍去了具體組織機(jī)構(gòu)、信息載體、處理工具、物質(zhì)、材料等,單從數(shù)據(jù)流動過程來考查實(shí)際業(yè)務(wù)的數(shù)據(jù)處理模式。數(shù)據(jù)流程與數(shù)據(jù)流程分析是今后建立數(shù)據(jù)庫系統(tǒng)和設(shè)計功能模塊處理過程的基礎(chǔ)。描述數(shù)據(jù)流程的工具是數(shù)據(jù)流程圖以及其附帶的數(shù)據(jù)字典、處理邏輯等圖表。其中數(shù)據(jù)流程圖是描述系統(tǒng)邏輯模型的主要工具,它以少數(shù)幾種符號綜合地反映出信息在系統(tǒng)中的流動、存儲和傳遞7。在業(yè)務(wù)流程分析的基礎(chǔ)上,對數(shù)據(jù)流進(jìn)行了分析,從數(shù)據(jù)流動過程考察了實(shí)際業(yè)務(wù)的數(shù)據(jù)處理模式。該系統(tǒng)的數(shù)據(jù)流圖分為頂層、一層、二層?,F(xiàn)行的頂層數(shù)據(jù)流圖如圖3-2所示。圖3-2頂

30、層數(shù)據(jù)流圖第四章 系統(tǒng)設(shè)計4.1 系統(tǒng)功能設(shè)計系統(tǒng)設(shè)計是一個把軟件需求轉(zhuǎn)換成用軟件系統(tǒng)表示的過程9。通過對目標(biāo)系統(tǒng)的分析和研究,做出了在線考試系統(tǒng)的總體規(guī)劃,這是全面開發(fā)系統(tǒng)的重要基礎(chǔ)。在對在線考試系統(tǒng)全面分析調(diào)查的基礎(chǔ)上,制定出在線考試系統(tǒng)的總體規(guī)劃。系統(tǒng)設(shè)計包括系統(tǒng)總體設(shè)計、系統(tǒng)詳細(xì)設(shè)計、系統(tǒng)數(shù)據(jù)庫設(shè)計、系統(tǒng)開發(fā)工具、開發(fā)技術(shù)和開發(fā)模式等。從數(shù)據(jù)流圖出發(fā),對數(shù)據(jù)流圖進(jìn)行分析,得出的層次化的模塊結(jié)構(gòu)圖。老師和學(xué)生功能模塊圖如圖4-1所示?;贘SP的在線考試系統(tǒng)前臺學(xué)生登錄模塊教師登錄模塊分?jǐn)?shù)查詢開始閱卷開始考試圖4-1 老師和學(xué)生功能模塊圖管理員功能模塊圖如圖4-2所示?;贘SP的在線考

31、試系統(tǒng)后臺評分老師管理考生管理試卷管理基本操作系統(tǒng)課程管理成績統(tǒng)計題庫管理圖4-2 在線考試系統(tǒng)后臺功能模塊圖4.2 系統(tǒng)數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫是本系統(tǒng)的核心和基礎(chǔ)10。它設(shè)計的好壞直接影響著整個系統(tǒng)的質(zhì)量。數(shù)據(jù)是一切系統(tǒng)設(shè)計的基礎(chǔ),通俗地說,數(shù)據(jù)庫設(shè)計就像高樓大廈的根基一樣,如果設(shè)計的不合理、不完善,將在系統(tǒng)開發(fā)過程中,甚至到后期的系統(tǒng)維護(hù)、功能變更和功能擴(kuò)充時,引起較多問題,嚴(yán)重時甚至要重新設(shè)計,重做大量已完成工作。4.2.1 概念結(jié)構(gòu)設(shè)計用戶名從數(shù)據(jù)需求分析中得出系統(tǒng)的實(shí)體屬性圖。管理員實(shí)體屬性圖如圖4-3所示。密碼管理員編號管理員圖4-3管理員實(shí)體屬性圖課程實(shí)體屬性圖如圖4-4所示。學(xué)時名稱

32、備注編號課程圖4-4課程實(shí)體屬性圖分?jǐn)?shù)實(shí)體屬性圖如圖4-5所示。學(xué)生編號試題編號分?jǐn)?shù)編號分?jǐn)?shù)圖4-5分?jǐn)?shù)實(shí)體屬性圖試題實(shí)體屬性圖如圖4-6所示。介紹時間名稱備注編號試題圖4-6試題實(shí)體屬性圖學(xué)生實(shí)體屬性圖如圖4-7所示。年齡密碼姓名用戶名性別學(xué)號出生地編號學(xué)生圖4-7學(xué)生實(shí)體屬性圖教師實(shí)體屬性圖如圖4-8所示。姓名登錄名教師號性別編號密碼教師圖4-8教師實(shí)體屬性圖題目實(shí)體屬性圖如圖4-9所示。BCAD題目類型答案題目名稱分?jǐn)?shù)編號課程編號題目圖4-9題目實(shí)體屬性圖E-R模型的組成元素有:實(shí)體、屬性、聯(lián)系。E-R模型用E-R圖表示。實(shí)體是用戶工作環(huán)境中所涉及的事務(wù),屬性是對實(shí)體特征的描述11。模型

33、中的實(shí)體相當(dāng)于實(shí)體集、一個表,而不是單個實(shí)體或表中的一行。實(shí)體用矩形框表示,實(shí)體名稱標(biāo)注在矩形框內(nèi)。用菱形表示實(shí)體間的聯(lián)系,菱形框內(nèi)寫上聯(lián)系名,用無向邊把菱形分別與有關(guān)實(shí)體相連接,在無向邊旁標(biāo)上聯(lián)系的類型12。屬性是實(shí)體的性質(zhì)。用橢圓框表示,與實(shí)體之間用一條線相連表的主碼是關(guān)鍵屬性,關(guān)鍵屬性項加下劃線。各子系統(tǒng)模塊中主鍵相同的字段之間存在著相互關(guān)聯(lián)的關(guān)系。在程序中實(shí)現(xiàn)對他們的完整性和一致性控制。 從數(shù)據(jù)需求分析中得出系統(tǒng)的實(shí)體屬性圖,遵循三范式原則,對實(shí)體之間的依賴關(guān)系進(jìn)行了整合,得出系統(tǒng)E-R圖,如圖4-10所示。圖4-10系統(tǒng)E-R圖說明:圖中用矩形表示實(shí)體。實(shí)體之間的關(guān)系用菱形表示,用無

34、向邊把菱形與有關(guān)實(shí)體連接,在邊上標(biāo)明聯(lián)系的類型。實(shí)體的屬性用橢圓表示,并用無向邊把實(shí)體與屬性聯(lián)系起來。4.2.2 數(shù)據(jù)庫表設(shè)計表4-1管理員信息表字段名類型長度說明idInt4管理員編號(主鍵)namevarchar30用戶名pwdvarchar20用戶密碼說明:用戶表用于存放管理員的信息。表4-2課程信息表字段名類型長度說明idInt4編號(主鍵)namevarchar20名稱XueshiInt4學(xué)時Beizhuvarchar50備注說明:用于存放課程的基本信息。表4-3分?jǐn)?shù)信息表字段名類型長度說明idInt4分?jǐn)?shù)編號(主鍵)shiti_idInt4試題編號(外鍵)Stu-idInt4考生編

35、號(外鍵)GradeInt4分?jǐn)?shù)說明:分?jǐn)?shù)信息表用來存放分?jǐn)?shù)的基本信息。表4-4試題信息表字段名數(shù)據(jù)類型長度功能描述idInt4編號(主鍵)Namevarchar20試題名稱Jieshaovarchar100介紹TimeDatetime8時間說明:試題信息表用來存放試題的基本信息。表4-5學(xué)生信息表字段名數(shù)據(jù)類型長度功能描述idInt4編號(主鍵)Stu-idInt4學(xué)號namevarchar20登錄名AgeInt4年齡truenamevarchar8姓名sexvarchar2性別Passwordvarchar30密碼Addvarchar20出生地說明:學(xué)生信息表用來存放學(xué)生的基本信息的。表4

36、-6教師信息表字段名數(shù)據(jù)類型長度功能描述idInt4編號(主鍵)namevarchar20登錄名Tea-idInt4教師號truenamevarchar8姓名sexvarchar2性別Passwordvarchar30密碼說明:教師信息表用來存放教師的基本信息的。表4-7題目信息表字段名數(shù)據(jù)類型長度功能描述idInt4題目編號(主鍵)name varchar20題目名稱Leixing varchar20題目類型A varchar50AB varchar50BC varchar50CD varchar50DDaan varchar200答案fenshuInt4分?jǐn)?shù)Kecheng-idInt4課程

37、編號(外鍵) 說明:題目信息表用于存放題目的信息。4.3 系統(tǒng)開發(fā)工具與開發(fā)模式的選擇4.3.1 系統(tǒng)開發(fā)工具 本系統(tǒng)主要使用JSP技術(shù)對系統(tǒng)進(jìn)行設(shè)計和開發(fā)。JSP擁有Java程序設(shè)計語言“一次編寫,各處執(zhí)行”、“安全性、保密性高”等的特點(diǎn)13;Struts框架為開放者提供了一個統(tǒng)一的標(biāo)準(zhǔn)框架,通過使用Struts作為基礎(chǔ),開發(fā)者能夠更專注于應(yīng)用程序的商業(yè)邏輯,JSP能充分滿足應(yīng)用開發(fā)的需求,簡單易用,敏捷迅速。JSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。J

38、SP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計和顯示分離,支持可重用的基于組件的設(shè)計,使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。 Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實(shí)現(xiàn)建立動態(tài)網(wǎng)頁所需要的功能。 JSP與Java Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給客戶端的就是一個HTML文本,因此客戶端只要有瀏覽器就能瀏覽。 JSP的1.0規(guī)范的最后版本是1999年9月推出的,12月又推出了1.1規(guī)范。目前較新的是JSP1.2規(guī)范,JSP2.0規(guī)范的征求意見稿也已出臺。J

39、SP頁面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁面被客戶端請求以后對這些Java代碼進(jìn)行處理,然后將生成的HTML頁面返回給客戶端的瀏覽器。Java Servlet 是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡單易用,完全的面向?qū)ο?,具有平臺無關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。自JSP推出后,眾多大學(xué)校都支持JSP技術(shù)的服務(wù)器,如IBM、Oracle、Bea學(xué)校等,所以JSP迅速成為商業(yè)應(yīng)用的服務(wù)器端語言。使用Microsoft SQL Server 2008數(shù)據(jù)庫作為后臺數(shù)據(jù)庫,SQL

40、 Server 2008系統(tǒng)具有強(qiáng)大的網(wǎng)上功能,可以在互聯(lián)網(wǎng)上發(fā)布數(shù)據(jù)庫中的數(shù)據(jù)。在SQL Server 2008系統(tǒng)中,允許用戶簡單的使用一些向?qū)Ш凸ぞ甙褦?shù)據(jù)庫的數(shù)據(jù)發(fā)布到網(wǎng)絡(luò)上,并且可以根據(jù)需要來調(diào)度修改已經(jīng)發(fā)布的數(shù)據(jù)。在大家所了解數(shù)據(jù)庫系統(tǒng)中,Microsoft SQL Server 2008,經(jīng)過三十多年的發(fā)展,已經(jīng)成為最重要的數(shù)據(jù)處理技術(shù),被廣泛應(yīng)用到多種項目的開發(fā)與設(shè)計中,決定采用此數(shù)據(jù)庫系統(tǒng)來完成系統(tǒng)的設(shè)計。4.3.2 系統(tǒng)設(shè)計模式B/S結(jié)構(gòu),即Browser/Server(瀏覽器/服務(wù)器)結(jié)構(gòu),是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下

41、,用戶界面完全通過WWW瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),形成所謂3-tier結(jié)構(gòu)。B/S結(jié)構(gòu),主要是利用了不斷成熟的WWW瀏覽器技術(shù),結(jié)合瀏覽器的多種Script語言(VBScript、JavaScript)和ActiveX技術(shù),用通用瀏覽器就實(shí)現(xiàn)了原來需要復(fù)雜專用軟件才能實(shí)現(xiàn)的強(qiáng)大功能,并節(jié)約了開發(fā)成本,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。隨著Windows XP/Windows 7將瀏覽器技術(shù)植入操作系統(tǒng)內(nèi)部,這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。顯然B/S結(jié)構(gòu)應(yīng)用程序相對于傳統(tǒng)的C/S結(jié)構(gòu)應(yīng)用程序?qū)⑹蔷薮蟮倪M(jìn)步。B/S結(jié)構(gòu)采用星形拓?fù)浣Y(jié)構(gòu)建立企業(yè)內(nèi)部通

42、信網(wǎng)絡(luò)或利用Internet虛擬專網(wǎng)(VPN)。前者的特點(diǎn)是安全、快捷、準(zhǔn)確。后者則具有節(jié)省投資、跨地域廣的優(yōu)點(diǎn)。須視企業(yè)規(guī)模和地理分布確定。企業(yè)內(nèi)部通過防火墻接入Internet,再整個網(wǎng)絡(luò)采TCP/IP協(xié)議。圖4-11C/S 與 B/S 區(qū)別:Client/Server是建立在局域網(wǎng)的基礎(chǔ)上的。Browser/Server是建立在廣域網(wǎng)的基礎(chǔ)上的。1硬件環(huán)境不同:C/S 一般建立在專用的網(wǎng)絡(luò)上,小范圍里的網(wǎng)絡(luò)環(huán)境,局域網(wǎng)之間再通過專門服務(wù)器提供連接和數(shù)據(jù)交換服務(wù)B/S 建立在廣域網(wǎng)之上的,不必是專門的網(wǎng)絡(luò)硬件環(huán)境,例與電話上網(wǎng),租用設(shè)備。信息自己管理。有比C/S更強(qiáng)的適應(yīng)范圍, 一般只要有

43、操作系統(tǒng)和瀏覽器就行。2對安全要求不同 C/S 一般面向相對固定的用戶群, 對信息安全的控制能力很強(qiáng)。一般高度機(jī)密的信息系統(tǒng)采用C/S 結(jié)構(gòu)適宜??梢酝ㄟ^B/S發(fā)布部分可公開信息B/S 建立在廣域網(wǎng)之上,對安全的控制能力相對弱,面向是不可知的用戶群。3對程序架構(gòu)不同 C/S 程序可以更加注重流程, 可以對權(quán)限多層次校驗(yàn), 對系統(tǒng)運(yùn)行速度可以較少考慮B/S 對安全以及訪問速度的多重的考慮,建立在需要更加優(yōu)化的基礎(chǔ)之上。比C/S有更高的要求 B/S結(jié)構(gòu)的程序架構(gòu)是發(fā)展的趨勢,從MS的.Net系列的BizTalk 2000 Exchange 2000等,全面支持網(wǎng)絡(luò)的構(gòu)件搭建的系統(tǒng)SUN 和IBM推

44、的JavaBean 構(gòu)件技術(shù)等,使 B/S更加成熟。4軟件重用不同 C/S 程序可以不可避免的整體性考慮,構(gòu)件的重用性不如在B/S要求下的構(gòu)件的重用性好.B/S 對的多重結(jié)構(gòu),要求構(gòu)件相對獨(dú)立的功能.。能夠相對較好的重用.就入買來的餐桌可以再利用,而不是做在墻上的石頭桌子。5系統(tǒng)維護(hù)不同系統(tǒng)維護(hù)是軟件生存周期中,開銷大, -重要C/S 程序由于整體性,必須整體考察,處理出現(xiàn)的問題以及系統(tǒng)升級.。升級難.,可能是再做一個全新的系統(tǒng)B/S 構(gòu)件組成,方面構(gòu)件個別的更換,實(shí)現(xiàn)系統(tǒng)的無縫升級。系統(tǒng)維護(hù)開銷減到最小用戶從網(wǎng)上自己下載安裝就可以實(shí)現(xiàn)升級。6處理問題不同 C/S 程序可以處理用戶面固定,并且

45、在相同區(qū)域,安全要求高需求,與操作系統(tǒng)相關(guān)。應(yīng)該都是相同的系統(tǒng)B/S 建立在廣域網(wǎng)上, 面向不同的用戶群, 分散地域,這是C/S無法作到的,與操作系統(tǒng)平臺關(guān)系最小。7用戶接口不同 C/S 多是建立的Window平臺上,表現(xiàn)方法有限,對程序員普遍要求較高B/S 建立在瀏覽器上,有更加豐富和生動的表現(xiàn)方式與用戶交流. 并且大部分難度減低,減低開發(fā)成本。8信息流不同C/S 程序一般是典型的中央集權(quán)的機(jī)械式處理,交互性相對低B/S 信息流向可變化, B-B B-C B-G等信息、流向的變化,更像交易中心。4.4后臺總體架構(gòu)介紹考生、教師用戶或管理員輸入自己的用戶賬號、密碼,通過身份驗(yàn)證后可以進(jìn)入相應(yīng)的

46、管理界面首頁。考生管理頁面分為考試列表、成績查詢、我的錯題、我的信息、公告列表5個模塊。教師管理頁面共分為考試設(shè)計、考試管理、統(tǒng)計分、信息發(fā)布管理、我的信息管理5個模塊。管理員管理頁面分為信息管理、考試管理、我的信息和信息發(fā)布4個模塊。考生管理模塊:考試列表模塊,羅列該考生可參加的考試,考生可選擇任一考試進(jìn)入,開始考試,若無主觀題則會在考試束后由系統(tǒng)自動評分。成績查詢模塊,考生可對自己參加過的考試進(jìn)行成績查詢。我的錯題,考生可對自己的錯題進(jìn)行查詢。我的信息模塊,考生可對本人信息進(jìn)行修改。公告列表,考生可對公告進(jìn)行查詢。 教師管理模塊:考試設(shè)計模塊,是教師用來對題庫試題、試卷庫試卷進(jìn)行添加、刪除

47、以及對現(xiàn)有題庫中的題目進(jìn)行修改的操作平臺。教師可以根據(jù)實(shí)際試題或試卷需要情況,方便地利用多功能查詢操作,也可以添加或修改、刪除,對題庫及試卷庫進(jìn)行高效率管理。考試管理模塊,是教師用來添加、刪除修改考試信息的操作平臺,并且其中的人工評卷子模塊可用來對主觀題進(jìn)行人工評卷成績管理模塊,教師正常登錄后可以進(jìn)入此頁面查看測試的所有考生成績及成績分布。信息發(fā)布管理模塊,教師可對公告進(jìn)行添加、刪除、修改,并可對公告狀態(tài)進(jìn)行修改。我的信息管理模塊,教師可對本人信息進(jìn)行修改。 管理員模塊:信息管理模塊,管理員可對考生、教師、管理員、課程、專業(yè)進(jìn)行添加、刪除、修改,并可對課程開設(shè)進(jìn)行設(shè)置??荚嚬芾砟K,管理員可對

48、試題、試卷、考試進(jìn)行添加、刪除、修改。信息發(fā)布管理模塊,管理員可對公告進(jìn)行添加、刪除、修改,并可對公告狀態(tài)進(jìn)行修改。我的信息管理模塊,管理員可對本人信息進(jìn)行修改。4.5 小結(jié)本章主要介紹了考試系統(tǒng)的設(shè)計工作,首先對系統(tǒng)的需求進(jìn)行了分析,進(jìn)行了系統(tǒng)的可行性分析和功能分析;其次對系統(tǒng)的總體設(shè)計做了介紹,給出了系統(tǒng)體系結(jié)構(gòu)、用例圖和在線考試模塊流程;最后,介紹了系統(tǒng)的詳細(xì)設(shè)計,包括各個模塊的流程圖。 第五章 系統(tǒng)實(shí)現(xiàn)5.1 系統(tǒng)管理員登錄模塊5.1.1 登錄登錄模塊:此模塊主要功能是用于登錄本系統(tǒng),不同權(quán)限的用戶登錄本系統(tǒng)會進(jìn)入不同的管理模塊界面,因?yàn)樵诤笈_對該用戶進(jìn)行的判斷,首先將從前臺頁面提交的

49、用戶名和密碼進(jìn)行接受,之后在后臺進(jìn)行處理,按照用戶名在數(shù)據(jù)庫中進(jìn)行查詢?nèi)绻榈皆撚脩魟t將該用戶的權(quán)限和密碼全都取出來分別賦給兩個字符串變量,判斷從數(shù)據(jù)庫中讀出的密碼與登錄時輸入的密碼是否配比上,若兩個密碼相同則根據(jù)權(quán)限的值進(jìn)入相應(yīng)的頁面,否則輸出密碼錯誤。若用戶未被管理員分配好權(quán)限那么也是無法登錄本系統(tǒng)的。如圖5-1所示。圖5-1 登錄界面2程序流程圖5-2登錄程序流程圖5.1.2 課程管理界面系統(tǒng)管理員登錄本系統(tǒng)后可以管理課程信息。如圖5-3所示。圖5-3課程管理界面5.1.3 題庫管理界面系統(tǒng)管理員登登錄本系統(tǒng)后,可以管理題庫信息。如圖5-4所示。圖5-4題庫管理界面5.1.4 試卷管理界

50、面系統(tǒng)管理員登錄本系統(tǒng)后,可以對試卷進(jìn)行管理。如圖5-5所示。圖5-5試卷管理界面5.1.5 添加考生界面系統(tǒng)管理員登錄本系統(tǒng)后,可以添加考生信息。如圖5-6所示。圖5-6添加考生界面5.1.6 評分老師管理界面系統(tǒng)管理員登錄本系統(tǒng)后,可以管理評分老師信息。如圖5-7所示。圖5-7評分老師管理界面5.1.7 修改密碼界面系統(tǒng)管理員登錄本系統(tǒng)后,可以修改登錄密碼信息。如圖5-8所示。圖5-8修改密碼界面5.2 考生模塊學(xué)生登錄本系統(tǒng)后,可以進(jìn)行考試,如圖5-9所示。圖5-9考試界面5.3 評分教師模塊評分教師登錄本系統(tǒng)后,可以開始閱卷。如圖5-10所示。圖5-10開始閱卷界面第六章 軟件測試與分

51、析測試是開發(fā)時期最后一個階段,是保證軟件質(zhì)量的重要手段。軟件測試就是在受控制的條件下對系統(tǒng)或應(yīng)用程序進(jìn)行操作并評價操作結(jié)果的過程,所謂控制條件應(yīng)包括正常條件與非正常條件。軟件測試過程中應(yīng)該故意地去促使錯誤的發(fā)生,也就是事情在不該出現(xiàn)的時候出現(xiàn)或者在應(yīng)該出現(xiàn)的時候沒有出現(xiàn)。從本質(zhì)上說,軟件測試是探測,在“探測”中發(fā)現(xiàn)軟件的毛病。6.1 軟件測試的重要性軟件測試在軟件生命周期中占據(jù)重要的地位,在傳統(tǒng)的瀑布模型中,軟件測試學(xué)僅處于運(yùn)行維護(hù)階段之前,是軟件產(chǎn)品交付用戶使用之前保證軟件質(zhì)量的重要手段。近來,軟件工程界趨向于一種新的觀點(diǎn),即認(rèn)為軟件生命周期每一階段中都應(yīng)包含測試,從而檢驗(yàn)本階段的成果是否接

52、近預(yù)期的目標(biāo),盡可能早的發(fā)現(xiàn)錯誤并加以修正,如果不在早期階段進(jìn)行測試,錯誤的延時擴(kuò)散常常會導(dǎo)致最后成品測試的巨大困難。 事實(shí)上,對于軟件來講,不論采用什么技術(shù)和什么方法,軟件中仍然會有錯。采用新的語言、先進(jìn)的開發(fā)方式、完善的開發(fā)過程,可以減少錯誤的引入,但是不可能完全杜絕軟件中的錯誤,這些引入的錯誤需要測試來找出,軟件中的錯誤密度也需要測試來進(jìn)行估計。測試是所有工程學(xué)科的基本組成單元,是軟件開發(fā)的重要部分。自有程序設(shè)計的那天起測試就一直伴隨著。統(tǒng)計表明,在典型的軟件開發(fā)項目中,軟件測試工作量往往占軟件開發(fā)總工作量的40以上。而在軟件開發(fā)的總成本中,用在測試上的開銷要占30到50。如果把維護(hù)階段

53、也考慮在內(nèi),討論整個軟件生存期時,測試的成本比例也許會有所降低,但實(shí)際上維護(hù)工作相當(dāng)于二次開發(fā),乃至多次開發(fā),其中必定還包含有許多測試工作。6.2 測試實(shí)例的研究與選擇程序測試的主要方法分為兩大類,白盒測試和黑盒測試。白盒測試:一種是以程序的內(nèi)部邏輯結(jié)構(gòu)為依據(jù)而設(shè)計測試用例的方法,因而又稱結(jié)構(gòu)測試或玻璃盒測試,將軟件看成一個透明的白盒子,按照程序的內(nèi)部結(jié)構(gòu)和處理邏輯來選定測試用例,對軟件的邏輯路徑及過程進(jìn)行測試,檢查它與設(shè)計是否相符17。白盒測試就是要選取足夠的測試用例,對源代碼實(shí)行比較充分的覆蓋,以便盡可能多地發(fā)現(xiàn)程序中的錯誤。主要有兩種方法:一種稱為邏輯覆蓋法,另一種稱為路徑覆蓋法。黑盒測

54、試:也稱功能測試,數(shù)據(jù)驅(qū)動測試等,它將待測對象堪稱是一個黑盒子,在完全不考慮程序的內(nèi)部結(jié)構(gòu)和特性的情況下,只依據(jù)規(guī)格說明書檢查程序的功能是否能正常使用。黑盒測試主要是根據(jù)輸入條件和輸出條件的確定測試數(shù)據(jù),來檢查程序是否能產(chǎn)生正確的輸出。進(jìn)行黑盒測試主要有下面幾種方法:等價分類法、邊界值分析法、猜錯法、因果圖法。本系統(tǒng)的測試綜合了白盒測試、黑盒測試兩種方法,但主要使用的是黑盒測試方法。在測試當(dāng)中遵循了“盡早地和不斷進(jìn)行測試”,“保證測試用例的完整性和有效性”原則。通過測試達(dá)到以下測試目的:功能檢查:檢查功能是否爭取,是否遺漏或?qū)崿F(xiàn)不了應(yīng)該實(shí)現(xiàn)的功能等。接口檢查:檢查能否正確地接受信息或輸出信息。數(shù)據(jù)檢查:檢查數(shù)據(jù)結(jié)構(gòu)或外部信息是否有(如數(shù)據(jù)文件)訪問錯誤。性能檢查:檢查性能需求能否得到滿足。初始化、終止檢查:檢查是否能進(jìn)行正確地初始化或

溫馨提示

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

最新文檔

評論

0/150

提交評論