2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩45頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  本科畢業(yè)設(shè)計(jì)說(shuō)明書</b></p><p><b>  首頁(yè)無(wú)頁(yè)眉</b></p><p>  題 目:電子作業(yè)管理系統(tǒng)——學(xué)生功能的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  院 (部): 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院</p><p>  專 業(yè): 軟件工程</p>

2、;<p>  班 級(jí): 軟件123</p><p>  姓 名: 馮飛飛</p><p>  學(xué) 號(hào): 20121112092</p><p><b>  指導(dǎo)教師: 伊靜</b></p><p>  完成日期: 2016年5月24日 </p><p>

3、<b>  目錄</b></p><p><b>  摘 要III</b></p><p>  ABSTRACTIV</p><p>  1 前 言- 1 -</p><p>  1.1選題背景- 1 -</p><p>  1.2系統(tǒng)簡(jiǎn)要說(shuō)明- 2 -</p

4、><p>  1.3相關(guān)開發(fā)技術(shù)簡(jiǎn)介- 2 -</p><p>  1.4應(yīng)用前景- 6 -</p><p>  2 需求分析- 7 -</p><p>  2.1系統(tǒng)概述- 7 -</p><p>  2.1.1目標(biāo)- 7 -</p><p>  2.1.2用戶定義及權(quán)限- 7 -&l

5、t;/p><p>  2.2系統(tǒng)環(huán)境- 8 -</p><p>  2.2.1系統(tǒng)開發(fā)環(huán)境- 8 -</p><p>  2.2.2系統(tǒng)運(yùn)行環(huán)境- 8 -</p><p>  2.3功能需求- 8 -</p><p>  2.3.1功能需求分析- 8 -</p><p>  2.3.1業(yè)務(wù)

6、流程圖- 9 -</p><p>  3 概要設(shè)計(jì)- 10 -</p><p>  3.1功能概要設(shè)計(jì)- 10 -</p><p>  3.1.1總體架構(gòu)設(shè)計(jì)- 10 -</p><p>  3.1.2系統(tǒng)用例圖- 12 -</p><p>  3.1.3時(shí)序圖- 14 -</p><p

7、>  3.2數(shù)據(jù)庫(kù)設(shè)計(jì)- 16 -</p><p>  3.2.1概念結(jié)構(gòu)設(shè)計(jì)- 16 -</p><p>  3.2.2邏輯結(jié)構(gòu)設(shè)計(jì)- 17 -</p><p>  4 詳細(xì)設(shè)計(jì)及程序的實(shí)現(xiàn)- 20 -</p><p>  4.1關(guān)鍵模塊設(shè)計(jì)與實(shí)現(xiàn)- 20 -</p><p>  4.1.1 動(dòng)態(tài)數(shù)據(jù)

8、庫(kù)配置- 20 -</p><p>  4.2 系統(tǒng)總體功能結(jié)構(gòu)- 21 -</p><p>  4.3 功能模塊的設(shè)計(jì)與實(shí)現(xiàn)- 23 -</p><p>  4.3.1公共模塊- 23 -</p><p>  4.3.2 管理員模塊- 24 -</p><p>  4.3.3 教師模塊- 26 -<

9、/p><p>  4.3.4 學(xué)生模塊- 28 -</p><p>  5 系統(tǒng)測(cè)試- 33 -</p><p>  5.1軟件測(cè)試- 33 -</p><p>  5.1.1引言- 33 -</p><p>  5.1.2目的- 33 -</p><p>  5.2測(cè)試方法- 34 -

10、</p><p>  5.2.1功能測(cè)試- 34 -</p><p>  5.2.2性能測(cè)試- 34 -</p><p>  5.3系統(tǒng)配置要求- 34 -</p><p>  5.4測(cè)試內(nèi)容- 34 -</p><p>  5.5 系統(tǒng)評(píng)價(jià)- 36 -</p><p>  總 結(jié)-

11、 38 -</p><p>  謝 辭- 39 -</p><p>  參考文獻(xiàn)- 40 -</p><p><b>  摘 要</b></p><p>  摘要需要重寫。摘要一般包括三方面的內(nèi)容:簡(jiǎn)單描述項(xiàng)目背景;說(shuō)明做了什么工作,采用的什么技術(shù),完成了什么功能,達(dá)到了什么效果。</p><p&

12、gt;  隨著信息時(shí)代的發(fā)展,快捷高效的處理信息已成為各行各業(yè)的基本需求。在電子作業(yè)管理中,為滿足其系統(tǒng)化,自動(dòng)化,高效化的要求,需要設(shè)計(jì)一個(gè)有效的學(xué)生電子作業(yè)管理系統(tǒng)。(作為開發(fā)背景,第一段寫的不好,建議看看任務(wù)書)</p><p>  JSP學(xué)生電子作業(yè)管理系統(tǒng)采用的是計(jì)算機(jī)化管理,系統(tǒng)做的盡量人性化,使用者會(huì)感到操作非常方便,管理人員需要做的就是將數(shù)據(jù)輸入到系統(tǒng)的數(shù)據(jù)庫(kù)中去。由于數(shù)據(jù)庫(kù)存儲(chǔ)容量相當(dāng)大,而且比

13、較穩(wěn)定,適合較長(zhǎng)時(shí)間的保存,也不容易丟失。這無(wú)疑是為信息存儲(chǔ)量比較大的學(xué)生電子作業(yè)管理平臺(tái)提供了一個(gè)方便、快捷的操作方式。本系統(tǒng)具有運(yùn)行速度快、安全性高,跨平臺(tái),可移植性強(qiáng)的特點(diǎn)。(以上文字都沒(méi)用,或者太啰嗦)系統(tǒng)管理員可以通過(guò)登錄電子作業(yè)管理系統(tǒng),進(jìn)行發(fā)布作業(yè)、批改作業(yè)等操作。電子作業(yè)管理系統(tǒng)基于WEB的java技術(shù),采用MyEclipse為開發(fā)工具,利用SQL Server作為數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行數(shù)據(jù)管理。介紹了多層應(yīng)用軟件體系結(jié)構(gòu),綜

14、合考慮后采用了B/S 模式結(jié)構(gòu),使得本文所設(shè)計(jì)的軟件功能在各個(gè)環(huán)節(jié)響應(yīng)得非常及時(shí)到位。</p><p>  關(guān)鍵詞:電子作業(yè)管理;JSP;MVC;SQL Server缺少論文名字的英文翻譯</p><p><b>  ABSTRACT</b></p><p>  With the development of the information a

15、ge, fast and efficient processing of information has become the basic needs of industries. In the electronic job management, in order to meet its systematization and automation, high efficiency requirements, we need to d

16、esign a valid student electronic job management system.</p><p>  JSP student electronic job management system uses a computerized management system to do as much as possible humane, users will feel very easy

17、 to operate, managers need to do it is to enter data into the database system to go. Because the database storage capacity is relatively large and relatively stable, save for a long time, not easy to lose. This is undoub

18、tedly a greater amount of information stored in electronic student job management platform provides a convenient and efficient mode of ope</p><p>  Keywords: Electronic job management; JSP; MVC; SQL Server&l

19、t;/p><p><b>  1 前 言</b></p><p><b>  1.1選題背景</b></p><p>  隨著社會(huì)的發(fā)展與進(jìn)步,我國(guó)的教育事業(yè)不斷取得進(jìn)步。作業(yè)管理作為當(dāng)代教育體系的重要組成部分,是發(fā)展教育事業(yè)、培養(yǎng)優(yōu)質(zhì)人才的基礎(chǔ)。作業(yè)是鞏固所學(xué)知識(shí)從而進(jìn)一步提高能力的基本途徑。目前,國(guó)內(nèi)的電子作業(yè)管理基本采用

20、兩種方式:一種是老師共享一個(gè)郵箱讓學(xué)生把做好的作業(yè)發(fā)到郵箱里,批改作業(yè)時(shí)老師首先把作業(yè)下載下來(lái),而且需要自己把不同的班級(jí)的學(xué)生區(qū)分開來(lái),批改后的結(jié)果也不能及時(shí)的反饋給學(xué)生,這種方法很浪費(fèi)時(shí)間而且效率不高。另一種是存放到老師電腦的一個(gè)共享目錄內(nèi)。這種方法雖然解決了下載作業(yè)及分班管理的弊端但是又出現(xiàn)了新的問(wèn)題,學(xué)生可以隨便的查看甚至更改、刪除其他學(xué)生的作業(yè),甚至有的學(xué)生投機(jī)取巧,造成了抄襲、惡意更改、刪除他人作業(yè)情況的發(fā)生,這就給老師和學(xué)生

21、帶來(lái)極大的困擾。目前作業(yè)管理的方式大多數(shù)都是通過(guò)紙質(zhì)的形式來(lái)展現(xiàn)。紙質(zhì)的作業(yè)一方面存儲(chǔ)量較小并且不利于保存,也不利于環(huán)保,另一方面紙質(zhì)的作業(yè)也給教師的批閱帶來(lái)了很大的負(fù)擔(dān)。在當(dāng)今的信息化時(shí)代里,每一個(gè)學(xué)校都期望有一個(gè)方便,快捷,高效的作業(yè)管理系統(tǒng)來(lái)規(guī)范化管理電子作業(yè),因?yàn)檫@可以大大的提高學(xué)校的作業(yè)管理水平,優(yōu)化教師資源,實(shí)現(xiàn)教學(xué)水平的真正提高。因此大力</p><p>  隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,計(jì)算機(jī)在企業(yè)和

22、大學(xué)管理中應(yīng)用的普及,利用計(jì)算機(jī)實(shí)現(xiàn)作業(yè)規(guī)范化管理勢(shì)在必行。利用計(jì)算機(jī)高效率完成作業(yè)的管理,是適應(yīng)現(xiàn)代社會(huì)發(fā)展要求,推動(dòng)學(xué)生作業(yè)管理走向科學(xué)化、信息化、規(guī)范化的必要條件。</p><p>  電子作業(yè)管理系統(tǒng)的實(shí)現(xiàn)可以減輕比較繁瑣的手工作業(yè)管理,讓教務(wù)管理人員能節(jié)省出更多的時(shí)間來(lái),去完成更重要的工作。它具有手工管理所無(wú)法比擬的優(yōu)點(diǎn),比如信息流通及時(shí)到位、組織管理責(zé)任明確、文件查找方便、檔案處理可靠性高、存儲(chǔ)量大、

23、壽命長(zhǎng)等。在電子作業(yè)管理系統(tǒng)中,老師直接將自己負(fù)責(zé)的課程作業(yè)發(fā)布到電子作業(yè)管理系統(tǒng)中去,學(xué)生就可以在對(duì)應(yīng)的課程中看到老師發(fā)布的作業(yè),學(xué)生直接把作業(yè)做完后提交到系統(tǒng),這樣就給老師批閱作業(yè)帶來(lái)了極大的方便。老師可以直接登錄系統(tǒng)找到對(duì)應(yīng)班級(jí)的學(xué)生作業(yè)進(jìn)行批閱,批閱完成后將批閱結(jié)果以及評(píng)語(yǔ)及時(shí)的反饋給學(xué)生,便于學(xué)生及時(shí)了解自己作業(yè)的情況。這些都可以極大地提高作業(yè)管理的效率,更好地為師生提供信息交流平臺(tái),同時(shí)也為學(xué)校的發(fā)展奠定了一個(gè)堅(jiān)實(shí)的基礎(chǔ)。電

24、子作業(yè)管理系統(tǒng)采用的是計(jì)算機(jī)化管理,系統(tǒng)做的盡量人性化,使用者會(huì)感到操作非常方便,管理人員需要做的就是將數(shù)據(jù)輸入到系統(tǒng)的數(shù)據(jù)庫(kù)中去。由于數(shù)據(jù)庫(kù)存儲(chǔ)容量相當(dāng)大,而且比較穩(wěn)定,適合較長(zhǎng)時(shí)間的保存,也不容易丟失。這無(wú)疑是為信息處理量比較大的電子作業(yè)管理平臺(tái)提供了一個(gè)方便、快捷的操作方式。本系統(tǒng)能提高管理的效率和精確度,減輕教育工作者的勞動(dòng)強(qiáng)</p><p><b>  1.2系統(tǒng)簡(jiǎn)要說(shuō)明</b>&

25、lt;/p><p>  電子作業(yè)管理系統(tǒng)采用的是計(jì)算機(jī)化管理,讓計(jì)算機(jī)實(shí)現(xiàn)對(duì)現(xiàn)代教務(wù)的信息管理,并在一定程度上實(shí)現(xiàn)自動(dòng)化。該系統(tǒng)為信息處理量比較大的電子作業(yè)管理平臺(tái)提供了一個(gè)方便、快捷的操作方式。本系統(tǒng)能提高管理的效率和精確度,減輕教育工作者的勞動(dòng)強(qiáng)度。該系統(tǒng)主要包含三大模塊:學(xué)生模塊、教師模塊和管理員模塊。本文重點(diǎn)介紹的是學(xué)生模塊和教師模塊。</p><p>  管理員模塊的主要功能:科目管

26、理和用戶管理。</p><p>  學(xué)生模塊的主要功能:修改個(gè)人信息、查看自己的作業(yè)信息、查看已批改的作業(yè)和未批改的作業(yè)等。</p><p>  教師模塊的主要功能:教師也相當(dāng)于這個(gè)系統(tǒng)的管理員,主要來(lái)發(fā)布作業(yè)和批改作業(yè)。 </p><p>  在該系統(tǒng)中有三種角色:學(xué)生、教師和管理員,在用戶登錄時(shí)以不同的角色登錄會(huì)進(jìn)入不同的管理界面。系統(tǒng)會(huì)根據(jù)用戶的角色和用戶名、

27、密碼來(lái)進(jìn)行驗(yàn)證,驗(yàn)證通過(guò)則根據(jù)角色進(jìn)入不同的界面,并給予用戶不同的權(quán)限。</p><p>  1.3相關(guān)開發(fā)技術(shù)簡(jiǎn)介</p><p> ?。?)J2EE 技術(shù),即Java 2平臺(tái)企業(yè)版(Java 2 Platform Enterprise Edition),是一種B/S模式的體系結(jié)構(gòu),是利用Java技術(shù)簡(jiǎn)化企業(yè)應(yīng)用系統(tǒng)開發(fā)、管理和部署等復(fù)雜問(wèn)題的一套完整的體系結(jié)構(gòu)。該技術(shù)由SUN公司推出,

28、基于Java 2平臺(tái),它繼承了Java語(yǔ)言方便、靈活、跨平臺(tái)等優(yōu)勢(shì),還提供了對(duì)EJB(Enterprise Java Bean)、Java Servlets、JSP(Java Server Pagers)、XML 、API等技術(shù)的支持,從而即降低了開發(fā)多層應(yīng)用系統(tǒng)的難度和復(fù)雜性,又提供了對(duì)現(xiàn)有應(yīng)用系統(tǒng)的強(qiáng)大支持。J2EE技術(shù)一般分為四個(gè)層級(jí):客戶層、WEB表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)層(EIS)。如下圖1-1所示。</p>&

29、lt;p>  圖1-1 J2EE層次結(jié)構(gòu)圖</p><p>  客戶層:可以包括瘦客戶端、胖客戶端,用戶可以與該層進(jìn)行交互,是系統(tǒng)的用戶界面,可以呈現(xiàn)出適當(dāng)?shù)囊晥D,收集查詢,顯示最終結(jié)果,是用戶在本地所使用的最后的模型成品。</p><p>  Web表示層:接收客戶層組件的要求,處理請(qǐng)求,然后將請(qǐng)求路由到業(yè)務(wù)層的適當(dāng)組件;接受業(yè)務(wù)層傳來(lái)的結(jié)果,計(jì)算一個(gè)適當(dāng)?shù)囊晥D,然后將視圖路由到對(duì)

30、應(yīng)客戶端。</p><p>  業(yè)務(wù)邏輯層:這一層由若干運(yùn)行在EJB容器下的EJB組件和應(yīng)用服務(wù)器組成。EJB封裝了業(yè)務(wù)邏輯,應(yīng)用服務(wù)器提供了JDBC技術(shù)來(lái)訪問(wèn)數(shù)據(jù)庫(kù)。</p><p>  Web表示層和業(yè)務(wù)邏輯層是給 J2EE 發(fā)布工作任務(wù)的層次,主要是通過(guò)服務(wù)器完成工作。這兩層是 J2EE 的核心層次。</p><p>  數(shù)據(jù)層(EIS): 將前端業(yè)務(wù)邏輯層的

31、組件與后端數(shù)據(jù)庫(kù)層連接起來(lái)把收集好的信息放在該層,供用戶訪問(wèn)。</p><p>  J2EE具有以下四點(diǎn)優(yōu)勢(shì):優(yōu)勢(shì)一:跨平臺(tái)性。Java具有平臺(tái)無(wú)關(guān)性,可以運(yùn)行在Windows、Linux、Unix等不同的操作系統(tǒng)上,因此,基于J2EE技術(shù)開發(fā)的應(yīng)用程序不受特定的硬件、操作系統(tǒng)、服務(wù)器等外部環(huán)境的約束,可以實(shí)現(xiàn)異構(gòu)環(huán)境下應(yīng)用系統(tǒng)的開發(fā)、部署和維護(hù)。優(yōu)勢(shì)二:穩(wěn)定性。基于J2EE技術(shù)的應(yīng)用系統(tǒng)擁有較強(qiáng)的可靠性,可以滿

32、足用戶24*365 的不間斷使用,從而滿足用戶所需的實(shí)時(shí)性和穩(wěn)定性要求。優(yōu)勢(shì)三:開發(fā)效率高。J2EE 技術(shù)通過(guò)將通用的、復(fù)雜的、繁瑣的服務(wù)端系統(tǒng)安排給中間供應(yīng)商完成,從而使普通系統(tǒng)開發(fā)人員設(shè)計(jì)并實(shí)施普通的商業(yè)邏輯部分,有效地降低了系統(tǒng)開發(fā)難度,縮短了開發(fā)周期。優(yōu)勢(shì)四:具有可伸縮性?;?J2EE 技術(shù)的應(yīng)用系統(tǒng)在開發(fā)完畢后,可以根據(jù)需要部署在各種硬件服務(wù)器和操作系統(tǒng)之上,從普通的PC機(jī)到高端服務(wù)器,甚至是大型機(jī)系統(tǒng)中,并且可以使用靈活的

33、負(fù)載平衡策略以實(shí)現(xiàn)伸縮性。</p><p> ?。?)MVC模式(三層架構(gòu)模式)(Model-View-Controller)是軟件工程中的一種軟件架構(gòu)模式,把軟件系統(tǒng)分為Model(模型)、View(視圖)和Controller(控制器)三個(gè)基本部分。MVC模式最早是由Trygve Reenskaug在1974年提出的,是施樂(lè)帕羅奧多研究中心(Xerox PARC)在20世紀(jì)80年代為程序語(yǔ)言Smalltalk

34、發(fā)明的一種軟件設(shè)計(jì)模式。MVC模式是以實(shí)現(xiàn)一種動(dòng)態(tài)的程序設(shè)計(jì)為目的的模式,以使后續(xù)對(duì)程序的修改和擴(kuò)展簡(jiǎn)化,并使程序某一部分的重復(fù)利用成為可能。此外,此模式通過(guò)對(duì)復(fù)雜度的簡(jiǎn)化,使程序結(jié)構(gòu)更加直觀。軟件系統(tǒng)通過(guò)對(duì)自身基本部分分離的同時(shí)也賦予了各個(gè)基本部分應(yīng)有的功能。程序員可以通過(guò)自身的專長(zhǎng)分組,MVC架構(gòu)如圖1-2所示??刂破鳎贺?fù)責(zé)轉(zhuǎn)發(fā)請(qǐng)求,對(duì)請(qǐng)求進(jìn)行處理。視圖:界面設(shè)計(jì)人員進(jìn)行圖形界面設(shè)計(jì)。模型:程序員編寫程序應(yīng)有的功能、數(shù)據(jù)庫(kù)專家進(jìn)行數(shù)

35、據(jù)管理和數(shù)據(jù)庫(kù)設(shè)計(jì)。</p><p>  圖1-2 MVC三層架構(gòu)示意圖</p><p><b>  (3)B/S結(jié)構(gòu)</b></p><p>  在三層體系結(jié)構(gòu)的B/S(Browser/Server,瀏覽器/服務(wù)器結(jié)構(gòu))系統(tǒng)中,用戶可以通過(guò)瀏覽器向分布在網(wǎng)絡(luò)上的眾多服務(wù)器發(fā)出請(qǐng)求。B/S系統(tǒng)極大地簡(jiǎn)化了客戶機(jī)的工作量,客戶機(jī)上只需要安裝、配置

36、少量的客戶端運(yùn)行軟件即可,服務(wù)器將擔(dān)負(fù)大量的工作,對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)以及應(yīng)用程序的執(zhí)行都將由服務(wù)器來(lái)完成。</p><p>  隨著B/S架構(gòu)的不斷成熟,該架構(gòu)主要使用WWW瀏覽器技術(shù),結(jié)合多種瀏覽器腳本語(yǔ)言,用通用瀏覽器來(lái)實(shí)現(xiàn)原本需要復(fù)雜的專有軟件來(lái)實(shí)現(xiàn)的強(qiáng)大功能,節(jié)約了開發(fā)成本,是一種新的軟件架構(gòu)。基于B/S架構(gòu)軟件的安裝,修改和維修的需要都在服務(wù)器端解決。使用該系統(tǒng)時(shí),只需要一個(gè)瀏覽器用戶可以運(yùn)行所有的模塊,從

37、而實(shí)現(xiàn)了“零客戶端”功能,很容易在運(yùn)行時(shí)自動(dòng)升級(jí)。</p><p>  B/S系統(tǒng)包括:表示邏輯層,控制邏輯層,數(shù)據(jù)展現(xiàn)層,三層是相對(duì)獨(dú)立又相互關(guān)聯(lián),在這里我們對(duì)這三個(gè)層面進(jìn)行介紹:</p><p>  1.表示邏輯層,其主要任務(wù)是提出一個(gè)服務(wù)請(qǐng)求到網(wǎng)絡(luò)上的Web服務(wù)器,服務(wù)器驗(yàn)證身份,使用HTTP協(xié)議把所需的主頁(yè)傳送給客戶端,客戶機(jī)接受傳來(lái)的主頁(yè)文件,并把它顯示在Web瀏覽器上。<

38、/p><p>  2.控制邏輯層,其主要任務(wù)是接受用戶的數(shù)據(jù)請(qǐng)求,首先需要執(zhí)行相應(yīng)的程序和數(shù)據(jù)庫(kù)連接,并將數(shù)據(jù)處理請(qǐng)求發(fā)送到數(shù)據(jù)庫(kù)服務(wù)器,然后數(shù)據(jù)庫(kù)服務(wù)器等待數(shù)據(jù)處理的結(jié)果并提交到Web服務(wù)器,然后由Web服務(wù)器返回給客戶端。</p><p>  3.數(shù)據(jù)表示層,其主要任務(wù)是接受Web服務(wù)器請(qǐng)求的數(shù)據(jù)庫(kù)操作,來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的查詢,修改,新增和刪除的功能,并將操作結(jié)果返回給Web服務(wù)器。<

39、/p><p> ?。?)SQL Server 數(shù)據(jù)庫(kù)</p><p>  SQL Server 2005是微軟公司最新版的大型數(shù)據(jù)庫(kù)服務(wù)器,在經(jīng)歷了SQL Server 6.5和7.0兩個(gè)版本的嘗試后,微軟公司終于開始向大規(guī)模的業(yè)務(wù)領(lǐng)域進(jìn)發(fā)了。隨著微軟公司的數(shù)據(jù)庫(kù)主力產(chǎn)品SQL Server 2005 Beta 2版本的發(fā)布,軟件行業(yè)針對(duì)數(shù)據(jù)庫(kù)開發(fā)的方式也在改變中。SQL Server 200

40、5目前已經(jīng)在軟件行業(yè)得到廣泛的應(yīng)用。它具有以下新的特性和功能。</p><p>  增加了數(shù)據(jù)庫(kù)鏡像(在SQL Server 2000這個(gè)版本就可以通過(guò)復(fù)制功能來(lái)創(chuàng)建一個(gè)備用服務(wù)器,實(shí)現(xiàn)主服務(wù)器中數(shù)據(jù)庫(kù)數(shù)據(jù)的備份、重新存儲(chǔ))技術(shù)。它是微軟引入的一個(gè)內(nèi)建的工具,其允許系統(tǒng)中的一個(gè)SQL Server數(shù)據(jù)庫(kù)的內(nèi)容鏡像到系統(tǒng)中的另一個(gè)SQL Server數(shù)據(jù)庫(kù)上。另外,當(dāng)其中的一個(gè)SQL Server數(shù)據(jù)庫(kù)出現(xiàn)異常后,

41、可以通過(guò)鏡像數(shù)據(jù)庫(kù)來(lái)進(jìn)行問(wèn)題的恢復(fù)。SQL Server 2005的數(shù)據(jù)庫(kù)鏡像提供了三種實(shí)現(xiàn)方式:(1)高可用性模式,這種工作模式允許系統(tǒng)中的兩臺(tái)SQL Server 2005服務(wù)器上進(jìn)行同步事務(wù)寫入,同時(shí)支持?jǐn)?shù)據(jù)庫(kù)的自動(dòng)錯(cuò)誤恢復(fù)。另外,這種工作模式需要提供一個(gè)證人服務(wù)器。(2)高保護(hù)性模式,與高可用性模式相同,這種工作模式可以讓系統(tǒng)中的兩臺(tái)SQL Server 2005服務(wù)器上進(jìn)行同步事務(wù)寫入,不同的是數(shù)據(jù)庫(kù)的錯(cuò)誤恢復(fù)是手工執(zhí)行的,因

42、為是手工執(zhí)行數(shù)據(jù)錯(cuò)誤恢復(fù),因此這種工作模式也不會(huì)用到證人服務(wù)器。(3)高性能模式,該工作模式與高可用性模式和高保護(hù)性模式的最大不同是其不關(guān)心兩臺(tái)SQL Server 2005服務(wù)器上的數(shù)據(jù)寫入是否是同步的,因此高性能模式在性能上</p><p><b>  1.4應(yīng)用前景</b></p><p>  世界各國(guó)對(duì)教育的發(fā)展給予了前所未有的關(guān)注,都試圖在未來(lái)的信息社會(huì)中讓

43、教育處于一個(gè)優(yōu)勢(shì)的位置,從而走在社會(huì)發(fā)展的前列,為此許多國(guó)家都把信息技術(shù)應(yīng)用于教育,采取措施推進(jìn)教育信息化。 </p><p>  當(dāng)今國(guó)內(nèi)也存在許多電子作業(yè)管理軟件,采用的開發(fā)技術(shù)也是多種多樣的,如基于JSP,模式和FTP模式,大多數(shù)的作業(yè)管理系統(tǒng)主要適用于網(wǎng)絡(luò)學(xué)院的遠(yuǎn)程教育教學(xué)方式,但是校園能真正利用電子作業(yè)管理系統(tǒng),來(lái)規(guī)范教學(xué)的并不多。針對(duì)國(guó)內(nèi)的作業(yè)管理系統(tǒng)的巨大空缺和迫切需求,一個(gè)好的電子作業(yè)管

44、理系統(tǒng)顯得尤為重要,它需要功能齊全,操作簡(jiǎn)便,能夠真正的向用戶展現(xiàn)出界面的友好性,更重要的是它的安全性,健壯性,靈活性,操作簡(jiǎn)單性,方便安裝,使每一個(gè)用戶都能夠迅速上手使用。</p><p>  電子作業(yè)管理系統(tǒng)較之傳統(tǒng)的作業(yè)管理方式有以下幾點(diǎn)優(yōu)勢(shì):</p><p> ?。?)電子作業(yè)管理系統(tǒng)屬于無(wú)紙化辦公,既環(huán)保又方便,傳統(tǒng)的作業(yè)上交方式,是由學(xué)生一份份收齊后交到老師辦公室的,然后老師再

45、抽出時(shí)間一份份翻閱批改,批閱完后做好相應(yīng)的記錄后讓學(xué)生分發(fā)下去,而電子作業(yè)管理系統(tǒng)無(wú)論是學(xué)生還是老師都只需在電腦前點(diǎn)點(diǎn)鼠標(biāo)敲敲鍵盤,而且在保護(hù)環(huán)境、提高效率及教學(xué)指導(dǎo)方面都比傳統(tǒng)的作業(yè)管理方式科學(xué)的多。</p><p>  (2)電子作業(yè)管理是一種科學(xué)化管理,安全可靠。傳統(tǒng)的作業(yè)管理方式,每個(gè)學(xué)生每門課程都要有一個(gè)獨(dú)立的作業(yè)本,這樣作業(yè)本的數(shù)量就很多,容易造成作業(yè)本丟失或者造成作業(yè)本的污損,給教學(xué)帶來(lái)很大的不便。

46、然而電子作業(yè)管理系統(tǒng)巧妙地解決了這些問(wèn)題,管理員只需要做好數(shù)據(jù)庫(kù)的保護(hù)這些問(wèn)題便都可以得到解決。</p><p> ?。?)電子作業(yè)管理系統(tǒng)可以簡(jiǎn)化教學(xué)工作,促進(jìn)綜合教學(xué)水平的發(fā)展。電子作業(yè)管理系統(tǒng)的介入運(yùn)行,可以節(jié)省教師大量的時(shí)間,教師就有時(shí)間去做各種教學(xué)科研工作,做出更多有助于教學(xué)的個(gè)性化服務(wù),從而提高教學(xué)水平,促進(jìn)老師和學(xué)生的共同提高,對(duì)學(xué)校的發(fā)展也有一定的積極作用。</p><p>

47、;<b>  2 需求分析</b></p><p><b>  2.1系統(tǒng)概述</b></p><p><b>  2.1.1目標(biāo)</b></p><p><b>  (1)數(shù)據(jù)共享</b></p><p>  推進(jìn)電子作業(yè)管理平臺(tái)的數(shù)據(jù)校驗(yàn)和數(shù)據(jù)共享規(guī)范

48、化和制度化建設(shè),對(duì)電子作業(yè)管理平臺(tái)數(shù)據(jù)查詢的精度和效率進(jìn)行提升。</p><p> ?。?)實(shí)現(xiàn)電子作業(yè)管理的各種功能</p><p>  系統(tǒng)主要實(shí)現(xiàn)了教師發(fā)布作業(yè),批改作業(yè),學(xué)生修改個(gè)人資料、查看我的作業(yè)、未完成作業(yè)、已批改作業(yè)等功能模塊。</p><p> ?。?)業(yè)務(wù)流程的規(guī)范</p><p>  實(shí)現(xiàn)對(duì)電子作業(yè)管理業(yè)務(wù)的全面、規(guī)范、

49、科學(xué)、系統(tǒng)的管理;提供多種信息渠道,以最大限度地提高系統(tǒng)的影響,提高工作效率和管理水平,對(duì)電子作業(yè)管理平臺(tái)中所涉及到的不足進(jìn)行彌補(bǔ)。</p><p>  (4)實(shí)行現(xiàn)代化的管理手段</p><p>  該系統(tǒng)應(yīng)具有界面清晰,操作簡(jiǎn)便的特點(diǎn)。不同系統(tǒng)的用戶應(yīng)該有不同的操作權(quán)限,該系統(tǒng)必須有一個(gè)數(shù)據(jù)庫(kù)備份和恢復(fù)功能,提高了數(shù)據(jù)的安全性。該系統(tǒng)應(yīng)該是基于網(wǎng)絡(luò)的系統(tǒng),只需要有一臺(tái)能夠聯(lián)網(wǎng)的設(shè)備就可

50、以實(shí)現(xiàn)對(duì)網(wǎng)站的管理。</p><p>  2.1.2用戶定義及權(quán)限</p><p>  (1)該系統(tǒng)的用戶用三種:學(xué)生、教師和管理員。 </p><p><b> ?。?)用戶的權(quán)限 </b></p><p>  學(xué)生:查看我的作業(yè)、編輯、上傳和提交作業(yè)、修改個(gè)人信息。 </p><p>  教師

51、:發(fā)布作業(yè)、批改作業(yè)、給學(xué)生評(píng)定作業(yè)的等級(jí)。 </p><p>  管理員:在系統(tǒng)中管理各種用戶,管理作業(yè)的科目。對(duì)用戶和科目進(jìn)行增刪改查。 </p><p><b>  2.2系統(tǒng)環(huán)境</b></p><p>  2.2.1系統(tǒng)開發(fā)環(huán)境</p><p> ?。?)tomcat6.0 服務(wù)器。Tomcat 是 Apach

52、e 的一個(gè)免費(fèi)的開放源代碼的 Web 應(yīng)用服務(wù)器, 適用于中小型系統(tǒng),是運(yùn)行 JavaEE 開發(fā)的系統(tǒng)的首選。</p><p> ?。?)myEclipse8.5。是一個(gè)主要用于 Java、 Java EE 以及移動(dòng)應(yīng)用的開發(fā)企業(yè)級(jí)開發(fā)集 成環(huán)境。</p><p> ?。?)jdk1.6。 jdk 是 java 語(yǔ)言的開發(fā)工具包,包含了 java 程序開發(fā)所需要的環(huán)境、工具和資源。<

53、/p><p> ?。?)SQL Server 2005數(shù)據(jù)庫(kù)。SQL Server 2005是微軟公司最新版的大型數(shù)據(jù)庫(kù)服務(wù)器,目前已經(jīng)在軟件行業(yè)得到廣泛的應(yīng)用。</p><p>  2.2.2系統(tǒng)運(yùn)行環(huán)境</p><p><b> ?。?) 軟件:</b></p><p>  1) tomcat6.0 服務(wù)器。 </

54、p><p>  2) SQL Server 2005 數(shù)據(jù)庫(kù)。 </p><p>  3) jdk1.6。 </p><p><b>  (2) 硬件:</b></p><p>  CPU:酷睿雙核CPU</p><p><b>  內(nèi)存:2G以上</b></p>

55、<p>  操作系統(tǒng):windows 7</p><p><b>  2.3功能需求</b></p><p>  2.3.1功能需求分析</p><p>  軟件的需求分析是軟件開發(fā)前的第一個(gè)階段,也是關(guān)系到軟件開發(fā)成敗的關(guān)鍵步驟,在整個(gè)軟件開發(fā)的過(guò)程中,可以說(shuō)這個(gè)階段所要占用的時(shí)間是相當(dāng)大的。如果需求分析做好了,那么在以后的軟件設(shè)計(jì)

56、過(guò)程中,可以省去不少的時(shí)間。該模塊不是確定系統(tǒng)怎樣的完成它的工作,而僅僅是確定系統(tǒng)必須完成哪些工作,也是對(duì)目標(biāo)系統(tǒng)提出完整、正確、清晰、具體的要求。該系統(tǒng)主要包括管理員、教師和學(xué)生三個(gè)角色。</p><p>  管理員:主要實(shí)現(xiàn)了管理用戶和科目的功能模塊。管理員可以增加、修改和刪除不同角色的用戶。同時(shí)對(duì)各個(gè)科目進(jìn)行增刪改查。</p><p>  教師:主要實(shí)現(xiàn)了發(fā)布作業(yè)、批改作業(yè)等功能模塊

57、。對(duì)于學(xué)生提交的作業(yè)進(jìn)行批改,并給出批改結(jié)果和成績(jī)。</p><p>  學(xué)生:主要實(shí)現(xiàn)了修改資料、我的作業(yè)、未完成作業(yè)、已批改作業(yè)等功能模塊。在修改資料模塊可以修改當(dāng)前用戶的姓名、密碼、性別、聯(lián)系電話、郵箱等基本信息。</p><p>  2.3.1業(yè)務(wù)流程圖</p><p>  電子作業(yè)管理系統(tǒng)的操作流程如圖2-1所示,不同的用戶登陸后執(zhí)行不同的功能,教師登陸后

58、主要是發(fā)布作業(yè)和批改作業(yè),學(xué)生登錄后可以查看我的作業(yè),已批改的作業(yè)和未完成的作業(yè),對(duì)于未完成的作業(yè)可以編輯完成后提交給老師批改。</p><p>  圖2-1電子作業(yè)管理系統(tǒng)操作流程圖</p><p><b>  3 概要設(shè)計(jì)</b></p><p><b>  3.1功能概要設(shè)計(jì)</b></p><p

59、>  系統(tǒng)開發(fā)采用B/S結(jié)構(gòu)模式。系統(tǒng)的分析設(shè)計(jì)采用面向?qū)ο蟮募夹g(shù),應(yīng)用Visio等工具進(jìn)行輔助設(shè)計(jì)。功能概要設(shè)計(jì)主要從總體架構(gòu)設(shè)計(jì)、系統(tǒng)用例圖和目標(biāo)業(yè)務(wù)時(shí)序圖三個(gè)方面進(jìn)行描述。</p><p>  3.1.1總體架構(gòu)設(shè)計(jì)</p><p>  系統(tǒng)架構(gòu)的整體設(shè)計(jì)是一個(gè)將一個(gè)龐大的任務(wù)細(xì)分為多個(gè)小的任務(wù)的過(guò)程,這些小的任務(wù)分段完成后,組合在一起形成一個(gè)完整的任務(wù)。它具體的工作步驟是:&

60、lt;/p><p>  1)系統(tǒng)被分解多個(gè)子模塊</p><p>  2)對(duì)各個(gè)子模塊的功能進(jìn)行預(yù)先的設(shè)計(jì)</p><p>  3)對(duì)各個(gè)子模塊之間的邏輯關(guān)系進(jìn)行設(shè)計(jì)</p><p>  4)對(duì)各個(gè)模塊的界面以及模塊間信息的傳輸進(jìn)行設(shè)計(jì)</p><p>  在整個(gè)設(shè)計(jì)過(guò)程中,以確定可能的具體方案達(dá)成每一個(gè)小的最終目標(biāo),對(duì)于

61、每一個(gè)小的目標(biāo)而言,我們必須先了解一些相關(guān)的需求分析的信息。然后對(duì)系統(tǒng)進(jìn)行初步的設(shè)計(jì),并對(duì)其逐漸進(jìn)行優(yōu)化,設(shè)計(jì)出一個(gè)具體可實(shí)現(xiàn)的系統(tǒng)框架。如圖3-1所示為系統(tǒng)的框架圖。</p><p>  圖3-1 系統(tǒng)框架圖</p><p>  由圖 3-1 所示進(jìn)行分析,系統(tǒng)主要包括管理員教師和學(xué)生三個(gè)角色,管理員主要管理科目和用戶,教師主要實(shí)現(xiàn)了發(fā)布作業(yè)、批改作業(yè)等功能模塊,學(xué)生主要實(shí)現(xiàn)了修改資料、

62、我的作業(yè)、未完成作業(yè)、已批改作業(yè)等功能模塊。</p><p>  本系統(tǒng)采用先進(jìn)的B/S架構(gòu),該架構(gòu)具有開發(fā)簡(jiǎn)、單共享性強(qiáng)、維護(hù)簡(jiǎn)單方便等諸多優(yōu)點(diǎn)。本系統(tǒng)的網(wǎng)絡(luò)拓?fù)鋱D如圖3-2所示:</p><p>  圖3-2系統(tǒng)的網(wǎng)絡(luò)拓?fù)鋱D(想辦法移動(dòng)到上一頁(yè)去,不允許圖與圖注分開,以下同,不再重復(fù)指出)</p><p>  3.1.2系統(tǒng)用例圖</p><

63、p>  (從此開始,下面的圖太稀松,可以緊湊點(diǎn)。要不然打印出來(lái)不好看)</p><p>  系統(tǒng)涉及到的用戶類型包括: 管理員、教師、學(xué)生三大類。每個(gè)用戶對(duì)應(yīng)的用例圖 如下所示:</p><p>  圖3-3 管理員用例圖</p><p>  圖3-3為系統(tǒng)管理員用例圖,管理員的主要職責(zé)是管理該系統(tǒng)中的各種用戶,管理系統(tǒng)中作業(yè)的科目。</p>&

64、lt;p>  圖3-4 教師用例圖(上移)</p><p>  圖3-4為教師用例圖,教師的主要職責(zé)是發(fā)布各科目的作業(yè),待學(xué)生提交作業(yè)后對(duì)作業(yè)進(jìn)行批改并給出成績(jī)。</p><p>  圖3-5 學(xué)生用例圖</p><p>  圖3-5為學(xué)生用例圖,學(xué)生的主要是來(lái)查看老師發(fā)布得出各科目的作業(yè),自己的全部作業(yè),還未完成的作業(yè)還有老師已經(jīng)批改的作業(yè),根據(jù)各個(gè)不同的模

65、塊使得學(xué)生可以清晰的掌握自己作業(yè)的各種狀態(tài)。</p><p><b>  3.1.3時(shí)序圖</b></p><p>  圖 3-6 管理員管理時(shí)序圖</p><p>  圖3-6為管理員管理時(shí)序圖,主要是管理員錄入用戶和科目的過(guò)程。管理人員首先登錄系統(tǒng), 定義各種用戶、各類科目,保存到數(shù)據(jù)庫(kù)后,最后退出系統(tǒng)。</p><p&

66、gt;  圖3-7 教師時(shí)序圖</p><p>  圖3-7為教師功能時(shí)序圖,主要是教師登錄系統(tǒng)后進(jìn)行發(fā)布作業(yè)和批改作業(yè)的過(guò)程。教師首先登錄系統(tǒng),進(jìn)行發(fā)布作業(yè),可以新建作業(yè),也可以修改和刪除已經(jīng)發(fā)布的作業(yè),對(duì)于學(xué)生提交上來(lái)的作業(yè)進(jìn)行批改,最后退出系統(tǒng)。</p><p>  圖 3-8 學(xué)生時(shí)序圖</p><p>  圖3-8為學(xué)生功能時(shí)序圖,主要是學(xué)生登錄系統(tǒng)后可以

67、修改個(gè)人基本信息,查看自己目前的作業(yè)狀態(tài),對(duì)于未完成的作業(yè)進(jìn)行編輯提交作業(yè),也可以查看老師已經(jīng)批改過(guò)的作業(yè)。最后退出系統(tǒng)。</p><p><b>  3.2數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p>  3.2.1概念結(jié)構(gòu)設(shè)計(jì)</p><p>  數(shù)據(jù)庫(kù)概念模型即系統(tǒng)的實(shí)體—關(guān)系模型。電子作業(yè)管理平臺(tái)的整體E-R圖如圖3-9所示。</p>

68、<p>  圖3-9 電子作業(yè)管理平臺(tái)的整體E-R圖</p><p>  然后根據(jù)具體的功能需求,對(duì)本系統(tǒng)的E-R圖進(jìn)行細(xì)化從而得到幾種實(shí)體-關(guān)系模型,以下為部分實(shí)體-關(guān)系模型。</p><p>  (1)管理員用戶類實(shí)體,如圖3-10所示。</p><p>  圖3-10用戶實(shí)體圖(上移)</p><p>  (2)學(xué)生信息類

69、實(shí)體圖,如圖3-11所示。</p><p>  圖3-11學(xué)生信息類實(shí)體圖</p><p> ?。?)作業(yè)信息類實(shí)體圖,如圖3-12所示。</p><p>  圖3-12 作業(yè)信息類實(shí)體圖</p><p>  3.2.2邏輯結(jié)構(gòu)設(shè)計(jì)(表如果跨頁(yè),要增加續(xù)表,具體見模版)</p><p>  本系統(tǒng)主要用到了多張數(shù)據(jù)表,

70、部分表單如下。</p><p>  表3.1 用戶信息表</p><p><b>  表3.2 科目表</b></p><p>  表3.3 作業(yè)信息表</p><p>  表3.4 學(xué)生-作業(yè)表</p><p>  4 詳細(xì)設(shè)計(jì)及程序的實(shí)現(xiàn)</p><p>  4.1關(guān)鍵

71、模塊設(shè)計(jì)與實(shí)現(xiàn)</p><p>  本節(jié)主要介紹系統(tǒng)中的幾個(gè)關(guān)鍵性的功能模塊的設(shè)計(jì)及實(shí)現(xiàn),這幾個(gè)模塊在系統(tǒng)部署和使用中起到了較為關(guān)鍵性的作用,決定了系統(tǒng)的部署和使用方式。而且這些關(guān)鍵性模塊在設(shè)計(jì)和實(shí)現(xiàn)上面具有一定的難度。</p><p>  4.1.1 動(dòng)態(tài)數(shù)據(jù)庫(kù)配置</p><p>  服務(wù)器端程序采用JDBC來(lái)訪問(wèn)數(shù)據(jù)庫(kù):以下是JDBC連接數(shù)據(jù)庫(kù)的配置文件,該配

72、置是針對(duì)JDBC的連接數(shù)據(jù)庫(kù)的配置。數(shù)據(jù)庫(kù)連接實(shí)現(xiàn)代碼:</p><p>  public class DbConfig {</p><p>  public static final String DriverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";</p><p>  pub

73、lic static final String ConnString = "jdbc:sqlserver://localhost:1433;DatabaseName=DB;User=sa;Password=sa";</p><p><b>  static {</b></p><p><b>  try {</b></p

74、><p>  Class.forName(DbConfig.DriverName);</p><p>  } catch (Exception e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }<

75、;/b></p><p>  private static Connection conn = null;</p><p>  public static Connection getCon() {</p><p><b>  try {</b></p><p>  return conn = DriverMana

76、ger.getConnection(ConnString);</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p>  System.out.println("數(shù)據(jù)庫(kù)連接失敗");</p><p><b>  }&l

77、t;/b></p><p>  return null;</p><p><b>  }</b></p><p>  public static void close(Connection con, Statement state, ResultSet re) {</p><p><b>  try {&

78、lt;/b></p><p>  if(con!=null)con.close();</p><p>  } catch (Exception e) {</p><p>  e.printStackTrace();</p><p>  } finally {</p><p><b>  try {<

79、;/b></p><p>  if(state!=null)state.close();</p><p>  } catch (Exception e) {</p><p>  e.printStackTrace();</p><p>  } finally {</p><p><b>  try {&

80、lt;/b></p><p>  if(re!=null)re.close();</p><p>  } catch (Exception e) {</p><p>  e.printStackTrace();</p><p>  } finally {</p><p><b>  }</b>

81、;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  4.2 系統(tǒng)總體功能結(jié)構(gòu)</p><p>  圖4-1 系統(tǒng)總體結(jié)構(gòu)圖</p><p>

82、;  圖4-1反映的是本系統(tǒng)的總體結(jié)構(gòu)圖,根據(jù)不同的角色,將本系統(tǒng)所涉及的所有功能分為個(gè)人管理員、教師、學(xué)生三個(gè)模塊,每個(gè)模塊之間功能上相互獨(dú)立,數(shù)據(jù)操作上相互聯(lián)系,共同構(gòu)成了電子作業(yè)管理系統(tǒng)。下面的內(nèi)容將對(duì)以上三個(gè)功能模塊的功能項(xiàng)目進(jìn)行更為詳細(xì)的描述。</p><p>  圖4-2 管理員功能結(jié)構(gòu)圖</p><p>  圖 4-2 反映的是管理員功能的結(jié)構(gòu)圖,管理員的功能主要是來(lái)管理系統(tǒng)

83、的各個(gè)用戶和作業(yè)的科目,實(shí)現(xiàn)對(duì)用戶和作業(yè)科目的增刪改查。各個(gè)不同的角色各司其職,快捷高效的管理維護(hù)和使用該系統(tǒng)。</p><p>  圖4-3 教師功能結(jié)構(gòu)圖</p><p>  圖 4-3 反映的是教師功能的結(jié)構(gòu)圖,教師其實(shí)也是該系統(tǒng)的管理員角色,教師的功能主要是來(lái)管理學(xué)生的作業(yè),教師可以在系統(tǒng)里發(fā)布作業(yè),并對(duì)發(fā)布的作業(yè)進(jìn)行修改和刪除,教師發(fā)布作業(yè)后,學(xué)生登陸后就會(huì)看到作業(yè)。對(duì)于學(xué)生提交

84、的作業(yè),教師可以進(jìn)行批改并給出作業(yè)分?jǐn)?shù)以及批改評(píng)語(yǔ)。教師批改作業(yè)后,作業(yè)狀態(tài)會(huì)變?yōu)橐雅模瑢W(xué)生會(huì)及時(shí)清晰的知道自己作業(yè)的狀態(tài)。</p><p>  圖4-4 學(xué)生功能結(jié)構(gòu)圖</p><p>  圖 4-4 反映的是學(xué)生功能的結(jié)構(gòu)圖,學(xué)生登錄后,可以修改個(gè)人的基本信息,在我的作業(yè)中可以查看自己的全部作業(yè)以及各個(gè)作業(yè)的狀態(tài)。在未完成作業(yè)下查看需要自己完成的作業(yè),查看編輯完成作業(yè)并提交。在已批改

85、作業(yè)下查看老師已經(jīng)批改完的作業(yè),查看老師給出的分?jǐn)?shù)和評(píng)語(yǔ)以便及時(shí)了解自己作業(yè)的情況。通過(guò)不同的模塊來(lái)管理自己的作業(yè),使學(xué)生清晰的了解自己作業(yè)的各個(gè)狀態(tài),有利于提高學(xué)習(xí)效率。</p><p>  4.3 功能模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  4.3.1 公共模塊</p><p>  此處可以增加對(duì)公共模塊的功能描述,比如包含什么樣的功能。如果公共模塊只是包含一個(gè)登

86、陸功能,就不用寫(1)的樣子了。</p><p><b>  (1)登錄功能</b></p><p>  用戶在登陸的時(shí)候需要輸入用戶名和密碼,登陸的界面是 Login.jsp。當(dāng)用戶點(diǎn)擊“登陸”按鈕后,首先將表單傳送給 servlet里的login.java,調(diào)用UaerDao.java在數(shù)據(jù)庫(kù)查詢出數(shù)據(jù)進(jìn)行本地驗(yàn)證,如果用戶名或密碼為空,則阻止用戶登陸,給出相應(yīng)的

87、提示。如果用戶名或密碼不對(duì),則給出相應(yīng)的提示,登陸失敗。否則,則根據(jù)用戶名的不同,跳轉(zhuǎn)到相應(yīng)的頁(yè)面。登陸頁(yè)面如圖 4-5 所示:</p><p><b>  圖4-5 登錄頁(yè)面</b></p><p>  4.3.2 管理員模塊</p><p>  此處可以增加對(duì)管理員模塊的功能描述,比如包含什么樣的功能。然后再分開說(shuō)每一個(gè)功能</p&g

88、t;<p><b> ?。?)用戶管理</b></p><p>  以管理員身份登陸后可以管理用戶和科目,進(jìn)入用戶管理界面后,先查詢出已經(jīng)存在的用戶,如圖4-6所示:</p><p>  圖4-6 用戶管理列表</p><p>  點(diǎn)擊新建,進(jìn)入新建用戶界面,在此頁(yè)面進(jìn)行用戶信息的錄入。如圖4-7所示:</p>&l

89、t;p><b>  圖4-7 添加用戶</b></p><p>  在圖4-6所示的列表的操作中,點(diǎn)擊修改,打開修改頁(yè)面,此頁(yè)面先加載出所要修改的信息,進(jìn)行編輯修改。如圖4-8所示:</p><p>  圖4-8 修改用戶信息</p><p>  點(diǎn)擊刪除,即刪除該用戶,刪除后提示刪除成功并刷新查詢列表。如圖4-9所示:</p>

90、;<p><b>  圖4-9 刪除用戶</b></p><p>  (2)進(jìn)入科目管理后,首先查詢出已經(jīng)存在的科目名稱。如圖4-10所示:</p><p>  圖4-10 科目列表</p><p>  點(diǎn)擊修改,編輯修改科目,如圖4-11所示:</p><p>  圖4-11 修改科目</p>

91、<p>  4.3.3 教師模塊</p><p>  教師登陸后,可以進(jìn)行發(fā)布作業(yè)和批改作業(yè)。</p><p>  (1)點(diǎn)擊發(fā)布作業(yè)后,先查詢出已經(jīng)發(fā)布的作業(yè)列表,如圖4-12所示:</p><p>  圖4-12 作業(yè)列表</p><p>  點(diǎn)擊新建來(lái)發(fā)布新的作業(yè),科目通過(guò)前期添加的科目由下拉框選擇,作業(yè)類型有選擇題和主觀

92、題兩種,發(fā)布的作業(yè)可以是老師親自錄入的,也可以是上傳一個(gè)文件,答案也可以是上傳的文件,答案可以控制是否顯示給學(xué)生。如圖4-13所示:</p><p>  圖4-13 新建作業(yè)</p><p>  在某一作業(yè)上點(diǎn)擊修改,進(jìn)行作業(yè)的修改,如圖4-14所示:</p><p>  圖4-14 作業(yè)修改</p><p>  進(jìn)入批改作業(yè)模塊,顯示作業(yè)的

93、題目和學(xué)生的答案,學(xué)生的答案可以是直接寫的也可以是答案文件,若是答案文件,老師可以通過(guò)下載來(lái)查看學(xué)生的答案,查看完成后,老師給出成績(jī)和評(píng)語(yǔ),老師的批改結(jié)果會(huì)反饋到學(xué)生那里。如圖4-15所示:</p><p>  圖4-15 批改作業(yè)</p><p>  4.3.4 學(xué)生模塊</p><p>  此處可以增加學(xué)生模塊的功能描述,比如包含什么樣的功能。然后再分開說(shuō)每一個(gè)

94、功能</p><p><b> ?。?)修改個(gè)人資料</b></p><p>  學(xué)生登錄后,在左側(cè)導(dǎo)航欄點(diǎn)擊修改資料進(jìn)入修改資料頁(yè)面EditInfo.jsp,已進(jìn)入該頁(yè)面首先加載當(dāng)前學(xué)生的信息,在該頁(yè)面中編輯要修改的信息,點(diǎn)擊保存完成修改。如圖4-16所示:</p><p>  圖4-16 修改信息</p><p> 

95、?。?)進(jìn)入我的作業(yè)模塊,可以查看自己的各個(gè)狀態(tài)的作業(yè),點(diǎn)擊操作中的查看可以查看詳細(xì)信息。如圖4-17所示:</p><p>  圖4-17 我的作業(yè)</p><p> ?。?)點(diǎn)擊進(jìn)入未完成作業(yè)模塊,顯示的是自己未完成的作業(yè),點(diǎn)擊查看進(jìn)入該作業(yè)的詳細(xì)頁(yè)面,進(jìn)行編輯完成該作業(yè),提交給老師。如圖4-18和4-19所示</p><p>  圖4-18 未完成作業(yè)列表&l

96、t;/p><p><b>  查看未完成的作業(yè)</b></p><p>  圖4-19 作業(yè)詳情</p><p>  (4)進(jìn)入已批改作業(yè)模塊,顯示已經(jīng)批改過(guò)的作業(yè)列表,如圖4-20所示:</p><p>  圖4-20 已批改作業(yè)列表</p><p>  點(diǎn)擊查看,查看批改后的作業(yè)詳情,該頁(yè)面顯示作

97、業(yè)題目和老師給出的成績(jī)和評(píng)語(yǔ)。如圖4-21所示:</p><p>  圖4-21 已批改作業(yè)詳情</p><p>  無(wú)論是學(xué)生上傳附件還是老師上傳答案附件,都是同樣的實(shí)現(xiàn)方法。如圖4-22所示:</p><p>  圖4-22 文件上傳</p><p>  實(shí)現(xiàn)文件上傳的代碼如下:</p><p>  public

98、class UploadHelper {</p><p>  public static HashMap<String, String> process(</p><p>  ServletContext servletContext, HttpServletRequest request,</p><p>  ArrayList<String&g

99、t; fileKeys) throws Exception {</p><p>  Class.forName(DbConfig.DriverName);</p><p>  Connection conn = DriverManager.getConnection(DbConfig.ConnString);</p><p>  Statement stmt = c

100、onn.createStatement();</p><p>  ResultSet rs;</p><p>  String sql;</p><p>  Integer userId = (Integer) request.getSession().getAttribute("UserId");</p><p>  S

101、tring path = request.getContextPath();</p><p>  HashMap<String, String> map = new HashMap<String, String>();</p><p>  String pic = null;</p><p><b>  try {</b>

102、;</p><p>  if (ServletFileUpload.isMultipartContent(request)) {</p><p>  // DiskFileItemFactory是創(chuàng)建FileItem對(duì)象的工廠</p><p>  DiskFileItemFactory factory = new DiskFileItemFactory();<

103、/p><p>  factory.setRepository(new File(request.getRealPath("/")+ "files"));</p><p>  ServletFileUpload upload = new ServletFileUpload(factory);</p><p>  List<F

104、ileItem> items = upload.parseRequest(request);</p><p>  Iterator fileItr = items.iterator();</p><p>  while (fileItr.hasNext()) {</p><p>  FileItem fileItem = null;</p>&l

105、t;p>  String filepath = null;</p><p>  long size = 0;</p><p>  fileItem = (FileItem) fileItr.next();</p><p>  if (fileItem == null || fileItem.isFormField()) {</p><p&g

106、t;  map.put(fileItem.getFieldName(), fileItem.getString("utf-8"));</p><p><b>  continue;</b></p><p><b>  }</b></p><p>  filepath = fileItem.getName

107、();</p><p>  size = fileItem.getSize();</p><p>  if ("".equals(filepath) && size == 0) {</p><p><b>  continue;</b></p><p><b>  }<

108、/b></p><p>  String t_name = filepath.substring(path.lastIndexOf("\\") + 1); </p><p>  String t_ext = t_name.substring(t_name.lastIndexOf(".") + 1);</p><p> 

109、 long now = System.currentTimeMillis();</p><p>  String prefix = String.valueOf(now);</p><p>  pic = "/files/" + prefix + "." + t_ext;</p><p>  String filename =

110、 request.getRealPath(pic);</p><p>  // filename = request.getRealPath(Face);</p><p><b>  try {</b></p><p>  fileItem.write(new File(filename));</p><p>  } c

111、atch (Exception ex) {</p><p>  ex.printStackTrace();</p><p><b>  }</b></p><p>  map.put(fileItem.getFieldName(), path + pic);</p><p><b>  }</b>&

112、lt;/p><p><b>  } else {</b></p><p>  Enumeration<String> keys = request.getParameterNames();</p><p>  while (keys.hasMoreElements()) {</p><p>  String k

113、= keys.nextElement();</p><p>  map.put(k, request.getParameter(k));</p><p><b>  }</b></p><p><b>  }</b></p><p>  } catch (Exception ex) {</p&

114、gt;<p>  ex.printStackTrace();</p><p><b>  }</b></p><p>  return map;</p><p><b>  }</b></p><p>  private static boolean keyInList(List<

115、;String> list, String key) {</p><p>  if (list == null || list.size() == 0)</p><p>  return false;</p><p>  for (String k : list) {</p><p>  if (k.equalsIgnoreCase(k

116、ey))</p><p>  return true;</p><p><b>  }</b></p><p>  return false;</p><p><b>  }</b></p><p><b>  5 系統(tǒng)測(cè)試</b></p>

117、<p><b>  5.1軟件測(cè)試</b></p><p><b>  5.1.1引言</b></p><p>  系統(tǒng)測(cè)試不僅是要驗(yàn)證系統(tǒng)是否能達(dá)到相應(yīng)的功能要求,還必須檢查系統(tǒng)的所有功能模塊是否運(yùn)行正常。在測(cè)試之前,根據(jù)不同的系統(tǒng),對(duì)系統(tǒng)的測(cè)試過(guò)程進(jìn)行設(shè)計(jì),并嚴(yán)格按照計(jì)劃進(jìn)行測(cè)試過(guò)程。為了更真實(shí)地模擬實(shí)際環(huán)境,需要力求完美的進(jìn)行測(cè)

118、試用例設(shè)計(jì)。在性能方面,需要通過(guò)設(shè)置場(chǎng)景,虛擬現(xiàn)實(shí)環(huán)境,對(duì)系統(tǒng)響應(yīng)用戶請(qǐng)求的時(shí)間進(jìn)行測(cè)試,找出系統(tǒng)運(yùn)行的性能瓶頸,并針對(duì)其提出相應(yīng)的變化。軟件測(cè)試是保證軟件質(zhì)量的關(guān)鍵,它是對(duì)需求分析和編碼的最后復(fù)審。在開發(fā)軟件的過(guò)程中,我們雖使用了許多保證軟件質(zhì)量的方法,分析、設(shè)計(jì)和實(shí)現(xiàn)軟件,但難免還會(huì)在實(shí)際操作過(guò)程中犯錯(cuò)誤。這樣在軟件產(chǎn)品中就會(huì)隱藏許多的錯(cuò)誤和缺陷。如果不在設(shè)計(jì)階段排除這些錯(cuò)誤,就會(huì)導(dǎo)致系統(tǒng)功能不能正常運(yùn)行,有時(shí)候甚至?xí)斐删薮蟮膿p失

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論