圖書館座位預(yù)約管理系統(tǒng)_第1頁
圖書館座位預(yù)約管理系統(tǒng)_第2頁
圖書館座位預(yù)約管理系統(tǒng)_第3頁
圖書館座位預(yù)約管理系統(tǒng)_第4頁
圖書館座位預(yù)約管理系統(tǒng)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGE1第一章緒論1.1課題研究的目的以及意義隨著中國經(jīng)濟(jì)的快速發(fā)展,中國也在不斷加大對高等教育事業(yè)的投入,并且各個省、直轄市也在加大高等教育的投入,為學(xué)生提供一個更好的教育環(huán)境。通過建設(shè)這些項(xiàng)目,高校獲得了大量的援助,得到了大量的資金來對圖書館的資源和硬件設(shè)施進(jìn)行改善和擴(kuò)建。但是我國高校的圖書館資源卻仍然不能滿足廣大同學(xué)的需求,很大的原因是我國的大學(xué)生招生人數(shù)在不斷增加,每所大學(xué)的招生規(guī)模也在不斷變大。如何使有限的圖書館資源得到充分的利用,變成了所有的學(xué)習(xí)所面臨的巨大問題。圖書館是每個大學(xué)生在學(xué)習(xí)生活中不可缺失的一部分,是學(xué)生完成學(xué)習(xí)任務(wù)或者準(zhǔn)備考研等各類考試的重要場所。我們面臨的問題是,怎樣在有限的資源條件下,使學(xué)生獲得良好的學(xué)習(xí)環(huán)境,如何使圖書館的閱覽室座位資源得到充分利用。隨著數(shù)字化圖書館的實(shí)現(xiàn),圖書館許多資源都實(shí)現(xiàn)了自動化管理,但對于座位這樣的稀缺并且實(shí)體的資源,大多數(shù)的圖書館對它的管理仍處于人工管理階段。因此,使用計(jì)算機(jī)來管理圖書館的座位資源、使座位資源得到合理的分配,已經(jīng)成為一個熱議的話題。在盡可能的提高每個座位的利用率同時,對一些不良的占座的行為加以懲罰,為有興趣學(xué)習(xí)的學(xué)生一個良好有序的圖書館學(xué)習(xí)環(huán)境。1.2課題研究的背景和現(xiàn)狀近年來,隨著高校的不斷擴(kuò)招,在校生成倍增長,而圖書館座位資源有限,排隊(duì)、占座現(xiàn)象已經(jīng)司空見慣并不斷演化為一種“文化”,由此產(chǎn)生的矛盾和問題,也呈現(xiàn)出不斷加劇之勢。圖書館為了營造秩序井然的學(xué)習(xí)環(huán)境,想方設(shè)法進(jìn)行部署和管理,如考試周提前開館、拉設(shè)排隊(duì)線、特定時段內(nèi)開辟新的自修空間等,然而種種對策一旦缺少了管理人員的疏導(dǎo)和管理,依然“排隊(duì)亂,搶座難”。目前各高校圖書館的藏書資源、目錄資源等都實(shí)現(xiàn)了計(jì)算機(jī)管理,唯獨(dú)座位資源還停留在人工管理階段。目前國外對高等教育的資源投資更大,發(fā)展也更為成熟。當(dāng)前部分國外高?;蚩蒲袉挝辉谶@一類問題的具體研究主要體現(xiàn)在針對圖書館座位安排所代表的排位問題,這方面的研究主要是集中在排位算法的改善與研究方面,將其納入到算法研究的范疇居多。該方面的研究不僅僅是在類似圖書館座位這類集中型資源分配的方面,也可以在分散型資源分配與使用過程中起到重要作用,具有較好的研究價值與使用前景。國內(nèi)對圖書館座位安排問題,眾多高校已經(jīng)開始認(rèn)真對待并加以實(shí)際解決,部分高校是從管理制度上進(jìn)行嚴(yán)格要求,輔以專門的管理人員或?qū)W生志愿者進(jìn)行人為的管控與疏導(dǎo),該方式在解決問題的效率及成本上存在著較大的不足,因?yàn)闊o法從根本上解決圖書館座位資源使用的矛盾。部分信息化處理水平較高的高校則將專業(yè)的信息化處理技術(shù)應(yīng)用在圖書館座位管理上,對圖書館座位管理使用專業(yè)的信息化管理軟件進(jìn)行座位資源的綜合管理與分配,這些信息化技術(shù)的設(shè)計(jì)與使用代表了高校信息化建設(shè)與發(fā)展前進(jìn)方向,因?yàn)楦鞲咝D書館建設(shè)的實(shí)際情況有所差距,為之而建設(shè)的圖書館座位資源管理系統(tǒng)的設(shè)計(jì)思路與側(cè)重點(diǎn)也有著較大的差異。1.3本文主要工作本文論述了對于圖書館座位預(yù)約管理平臺的分析、設(shè)計(jì)與實(shí)現(xiàn)。在對用戶的需求進(jìn)行分析之后,系統(tǒng)的基本功能被確定為用戶權(quán)限管理、角色管理、閱覽室管理、信用積分管理、選座管理、通知公告管理、交流管理、數(shù)據(jù)統(tǒng)計(jì)和書籍推薦。系統(tǒng)采用B/S架構(gòu),前端采用的是當(dāng)下最流行的easyui框架,后臺用的ssm(spring、springMVC、mybaits)框架,網(wǎng)站的主要特點(diǎn)包括:1.界面友好,操作簡單界面友好,互動簡單,易于操作,很多時候只需點(diǎn)擊鼠標(biāo)、觀察屏幕顯示而不需要使用鍵盤。2.在不同的系統(tǒng)上都可以使用因?yàn)槭褂昧薐ava語言,它可以跨越不同的操作系統(tǒng)平臺,具有移植度高的特點(diǎn)。3.代碼可以重復(fù)使用在不同的場景下,在保證代碼質(zhì)量下可以重復(fù)使用相同的代碼,提升程序編寫的效率。1.4相關(guān)技術(shù)簡介1.4.1JavascriptJavaScript是一種客戶端腳本語言,它是利用對象和事件驅(qū)動的,相比其他同類語言更加安全可靠。在HTML網(wǎng)頁添加數(shù)據(jù)等這些動態(tài)的功能時常常會使用到它。最初由美國Netscape公司的布蘭登·艾奇設(shè)計(jì)。它的數(shù)據(jù)類型為弱類型,不需要進(jìn)行數(shù)據(jù)轉(zhuǎn)換。1.4.2jQueryjQuery是一個多瀏覽器兼容的javascript框架,它主張用更少的代碼量來做更多的事情。在操作文檔和創(chuàng)建動畫視圖等一系列活動時,程序人員可以使用jQuery的語法。此外,jQuery還為開發(fā)人員提供了編寫插件的API。開發(fā)人員可以通過它來開發(fā)出更強(qiáng)大的靜態(tài)或動態(tài)網(wǎng)頁。1.4.3EasyUI是一種前端的框架。EasyUI可以使得編寫界面更加簡單,而不用使用很多復(fù)雜的網(wǎng)頁標(biāo)記語言節(jié)省了很多代碼量。在HTML5的網(wǎng)頁框架中,它也可以很好的運(yùn)行,在很大程度上節(jié)約了程序設(shè)計(jì)人員的時間。1.4.4MySQLMySQL是一種小型關(guān)聯(lián)式數(shù)據(jù)庫的管理系統(tǒng),到現(xiàn)在很多互聯(lián)網(wǎng)上的網(wǎng)站都在使用這種節(jié)約空間、響應(yīng)速度快的數(shù)據(jù)庫系統(tǒng),它能節(jié)約開發(fā)者很多的成本,也是開源的。1.4.5SSMSSM為Spring+SpringMVC+MyBatis的縮寫,由Spring、MyBatis兩個開源框架整合而成(SpringMVC是Spring中的部分內(nèi)容)。(1)SpringSpring是一個開源框架,它來自于羅賓·約翰遜在2003年于其著作《一個J2EE開發(fā)和設(shè)計(jì)的專家》,是一種比較先進(jìn)的理念和原型。(2)SpringMVCSpringMVC可以實(shí)現(xiàn)即用的MVC的理念,它是一種非常輕便的web框架,可以大大簡化程序開發(fā),擁有清晰的角色劃分:即前端控制器、解析器、處理器等等,可以很靈活的實(shí)現(xiàn)擴(kuò)展。(3)MyBatisMyBatis是現(xiàn)如今使用最多的Framework,在使用時可以很大程度上減少對JDBC代碼的依賴,轉(zhuǎn)而利用XML的易用性來獲取數(shù)據(jù)庫數(shù)據(jù)。

第二章需求分析2.1系統(tǒng)初步調(diào)查2.1.1任務(wù)分析圖書館座位預(yù)約管理系統(tǒng)運(yùn)作的流程是:學(xué)生作為用戶使用該系統(tǒng),學(xué)生信息存儲到學(xué)生表中,學(xué)生登錄成功后進(jìn)入系統(tǒng)主頁,學(xué)生可以在側(cè)邊欄選擇相應(yīng)的系統(tǒng)功能,例如可以點(diǎn)擊選座管理進(jìn)行座位選擇,查看當(dāng)前閱覽室的座位情況,也可以查看自己的信用積分信息。學(xué)生也可以點(diǎn)擊通知公告查看當(dāng)前發(fā)布的信息,可以通過發(fā)布帖子與其余用戶進(jìn)行交流。用戶在登錄系統(tǒng)之后,后臺會搜索該用戶的所有數(shù)據(jù),顯示在該用戶的界面上。網(wǎng)站管理員進(jìn)入系統(tǒng)后可以對用戶權(quán)限、閱覽室信息進(jìn)行管理、帖子信息等進(jìn)行管理。2.1.2工作原理分析系統(tǒng)由學(xué)生用戶操作界面和管理員操作界面組成。學(xué)生和管理員擁有的權(quán)限不同,學(xué)生用戶登錄后可以查看閱覽室、查看信用積分、進(jìn)行選座、查看通知、帖子交流以及書籍推薦。管理員在繼承學(xué)生用戶所有功能的基礎(chǔ)上還可以對用戶的信息進(jìn)行管理,同時可以對圖書館閱覽室座位、通知公告等進(jìn)行管理。利用B/S模式來對系統(tǒng)完成設(shè)計(jì)編寫,底層數(shù)據(jù)庫端在獲取到學(xué)生和管理員的所有活動后都會有相應(yīng)的處理,處理完成后會在前端界面顯示處理的結(jié)果。MysqlMysql學(xué)生用戶瀏覽器管理員學(xué)生操作頁面管理員操作頁面JDBC:橋Action瀏覽器圖2-1系統(tǒng)工作原理圖2.2系統(tǒng)功能分析2.2.1系統(tǒng)用例圖圖2-2學(xué)生總用例圖圖2-3管理員總用例圖密碼登錄進(jìn)入該系統(tǒng),表單分別會進(jìn)行前端js與后端java驗(yàn)證。驗(yàn)證通過則會登錄到管理界面,如果驗(yàn)證未通過則會在頁面出現(xiàn)相應(yīng)的錯誤提示。賬號密碼由超級管理員進(jìn)行分配,提交給系統(tǒng)。超級管理員登錄后擁有所有權(quán)限,并且可以對用戶信息進(jìn)行添加、修改和刪除的操作,這些操作也是以權(quán)限的形式分配給不同用戶,只有具有權(quán)限的用戶可以看見相關(guān)的選項(xiàng)并進(jìn)行操作。系統(tǒng)以列表的形式顯示了所有閱覽室的類型信息,包括類型名稱以及對信用積分的限制。具有權(quán)限的用戶可以對閱覽室類型信息進(jìn)行添加、修改以及刪除操作。選座功能只對學(xué)生開放,學(xué)生進(jìn)入頁面后,可以選擇日期、時間段、閱覽室來完成閱覽室座位信息的查詢。座位信息是以一個陣列的形式顯示的,其中綠色表明已經(jīng)被選擇的座位,黑色表示未被選擇的座位,而紅色表示當(dāng)前用戶所選擇的座位。用戶確認(rèn)位置選擇后,保存位置從而完成閱覽室位置的預(yù)訂。當(dāng)信用積分不滿足閱覽室的限制時,則會預(yù)訂失敗。當(dāng)有兩個或多個學(xué)生同一時間預(yù)定同一個座位時,系統(tǒng)會先優(yōu)先把座位分配給信用積分高的學(xué)生。學(xué)生可以訪問交流管理選項(xiàng)的帖子管理頁面,學(xué)生可以選擇某一主題帖進(jìn)行跟帖操作,也可以自己添加新的主題帖。而管理員可以對帖子內(nèi)容加以修改或刪除。學(xué)生可以點(diǎn)擊書籍推薦查看系統(tǒng)推薦的書籍,管理員可以添加、修改和刪除書籍推薦信息。超級管理員可以在系統(tǒng)中查看每個月的違規(guī)次數(shù)統(tǒng)計(jì)情況和每個月的閱覽室的座位預(yù)定情況。2.2.2用例描述1、添加用戶表2-1添加用戶用例描述用例編號001用例名添加用戶用例描述系統(tǒng)所有的賬號密碼均由管理員分配,添加用戶成功后可以成為系統(tǒng)的用戶,使用系統(tǒng)的選座等功能主要參與者管理員受益人及其利益超級管理員為系統(tǒng)創(chuàng)建新的用戶學(xué)生獲得賬號,可享受網(wǎng)站所提供的服務(wù)前置條件服務(wù)器已經(jīng)啟動,超級管理員登錄系統(tǒng)后置條件服務(wù)器端獲得了用戶的賬號信息主要流程超級管理員進(jìn)入系統(tǒng),打開用戶管理界面點(diǎn)擊添加用戶服務(wù)器核對信息的合法性后,將信息插入數(shù)據(jù)庫替代流程超級管理員填寫的信息不合規(guī)則,系統(tǒng)會提示相應(yīng)的錯誤信息,并提示解決辦法服務(wù)器沒有成功啟動,或者連接數(shù)據(jù)庫出現(xiàn)異常,重新啟動服務(wù)器技術(shù)和數(shù)據(jù)約束列表用戶信息必須有帳號和密碼(長度必須是50個字節(jié)以內(nèi)),帳號不能和數(shù)據(jù)庫已有的賬號名重復(fù)2、修改用戶信息表2-2修改用戶信息用例描述用例編號002用例名修改用戶信息用例描述管理員擁有修改用戶信息的權(quán)限,可修改的用戶信息包括:用戶名、密碼、角色和備注主要參與者管理員受益人及其利益用戶:隨著自身情況的變化,即時修改個人信息服務(wù)器:服務(wù)器得到用戶更加完善的信息前置條件該網(wǎng)站提供了修改用戶信息的功能用戶需要修改自己的信息后置條件服務(wù)器獲得了新的用戶個人信息主要流程超級管理員登錄系統(tǒng)后,進(jìn)入修改用戶信息的頁面提交后經(jīng)過數(shù)據(jù)庫語法合法性檢查后,將修改后的個人信息提交數(shù)據(jù)庫替代流程超級管理員所提交的信息不符合規(guī)定的格式,如將密碼修改為空。系統(tǒng)會提示相應(yīng)的錯誤,并提供解決辦法服務(wù)器沒有成功啟動,或者連接數(shù)據(jù)庫出現(xiàn)異常,重新啟動服務(wù)器特殊需求不允許修改賬號名3、選擇座位表2-3選擇座位用例描述用例編號003用例名選擇座位用例描述選座功能只對學(xué)生開放,學(xué)生可以選擇空余的座位進(jìn)行保存主要參與者學(xué)生受益人及其利益學(xué)生:從已有的數(shù)據(jù)庫中檢索空余的座位,并保存座位,便于第二天來到圖書館使用座位。前置條件1.本網(wǎng)站提供了查找座位的功能2.用戶需要點(diǎn)擊選座,并查找空余座位3.?dāng)?shù)據(jù)庫提供了座位查詢功能4.該學(xué)生的信用積分滿足閱覽室的要求后置條件該座位被學(xué)生鎖定,只供該學(xué)生使用主要流程1.用戶進(jìn)入網(wǎng)站,選擇選座2.用戶選擇日期、時間段、閱覽室,點(diǎn)擊查詢3.系統(tǒng)根據(jù)關(guān)鍵字以一個陣列的形式顯示座位情況,其中綠色表明已經(jīng)被選擇的座位,黑色表示未被選擇的座位,而紅色表示當(dāng)前用戶所選擇的座位4.用戶從其中選擇座位并保存座位替代流程1.用戶沒有提供任何關(guān)鍵字,無法匹配,系統(tǒng)提示沒有關(guān)鍵字2.?dāng)?shù)據(jù)庫中沒有找到相關(guān)的結(jié)果,系統(tǒng)顯示沒有相關(guān)結(jié)果特殊需求選擇的座位沒有被他人選4、閱覽室管理表2-4閱覽室管理用例描述用例編號004用例名閱覽室管理用例描述管理員可以對閱覽室信息進(jìn)行添加操作主要參與者管理員受益人及其利益服務(wù)器:獲得新的閱覽室信息,插入到數(shù)據(jù)庫日志表中前置條件超級管理員登錄系統(tǒng),點(diǎn)擊進(jìn)入閱覽室管理界面后置條件閱覽室信息在服務(wù)器成功創(chuàng)建或者修改主要流程1.超級管理員登錄到系統(tǒng)2.選擇閱覽室管理3.點(diǎn)擊添加或修改閱覽室信息4.超級管理員需要填寫閱覽室名稱以及信用積分限制、座位行數(shù)、座位列數(shù)以及選擇其對應(yīng)的閱覽室類型來完成新的閱覽室類型的添加或修改5、查看日志表2-5查看日志用例描述用例編號005用例名查看日志用例描述系統(tǒng)管理欄目中的日志管理,默認(rèn)會在界面中顯示所有的與系統(tǒng)相關(guān)的日志信息主要參與者管理員受益人及其利益超級管理員:對特定時段、特定操作人、特定操作類型以及特定模塊的日志進(jìn)行檢索,從而完成特定日志的查看前置條件1.超級管理員有查看日志的需求2.?dāng)?shù)據(jù)庫有相應(yīng)的表長久的保存日志后置條件服務(wù)器顯示所有的與系統(tǒng)相關(guān)的日志信息主要流程1.超級管理員登錄到系統(tǒng)2.選擇查看日志3.系統(tǒng)顯示已發(fā)布的日志替代流程超級管理員查詢?nèi)罩镜牟僮黝愋汀㈤_始時間不符合系統(tǒng)規(guī)范6、查看信用積分表2-6查看信用積分用例描述用例編號006用例名查看信用積分主要參與者學(xué)生受益人及其利益學(xué)生:以此獲取學(xué)生的信用積分情況前置條件1.服務(wù)器保存了學(xué)生的積分記錄2.學(xué)生有查看學(xué)生積分的需求后置條件學(xué)生了解自己在圖書館的違規(guī)情況主要流程1.用戶登錄到本系統(tǒng)2.點(diǎn)擊信用積分管理3.系統(tǒng)界面中以列表的形式展現(xiàn)了所有學(xué)生的信用積分情況,用戶還可以根據(jù)頁面上方的搜索框,按照學(xué)生姓名和學(xué)號來進(jìn)行檢索替代流程檢索學(xué)生姓名和學(xué)號時要符合系統(tǒng)要求7、發(fā)布帖子表2-7發(fā)表帖子用例描述用例編號007用例名發(fā)表帖子主要參與者學(xué)生受益人及其利益學(xué)生:可以相互訪問交流帖子前置條件學(xué)生有發(fā)布帖子的需求后置條件帖子信息在服務(wù)器發(fā)表成功,學(xué)生可以進(jìn)行跟帖與回帖主要流程1.學(xué)生進(jìn)入系統(tǒng),打開帖子管理界面點(diǎn)擊添加新主題2.服務(wù)器核對帖子,將信息插入數(shù)據(jù)庫替代流程檢索學(xué)生姓名和學(xué)號時要符合系統(tǒng)要求技術(shù)和數(shù)據(jù)約束列表學(xué)生需要輸入合法的標(biāo)題及內(nèi)容來完成新帖子的創(chuàng)建2.3性能需求分析為了提升用戶對系統(tǒng)的使用感受,需要對系統(tǒng)的各個方面進(jìn)行測試分析,并且提升系統(tǒng)的穩(wěn)定性。該系統(tǒng)在設(shè)計(jì)時,會從以下幾個方面來進(jìn)行要求約束:1.可操作性該系統(tǒng)操作簡單,很多時候都是用鼠標(biāo)點(diǎn)擊操作,超級管理員創(chuàng)建用戶時有相應(yīng)的要求提示,大大提高了超級管理員對系統(tǒng)的管理效率。學(xué)生進(jìn)入到系統(tǒng)時,功能多但操作簡單,界面信息直觀大方,上手快。2.可靠性用戶在使用系統(tǒng)時,所產(chǎn)生的數(shù)據(jù)或者與數(shù)據(jù)庫相關(guān)聯(lián)的數(shù)據(jù)都進(jìn)行異步處理,用戶登錄時使用的用戶名、密碼都受到了Tomcat的維護(hù),所有在可靠性上有了很大的保障。3.實(shí)用性在進(jìn)行系統(tǒng)的設(shè)計(jì)前,專門去了多個高校圖書館進(jìn)行了實(shí)體考察,對每個圖書館的實(shí)際情況進(jìn)行了科學(xué)的分析,實(shí)際了解了學(xué)生們對圖書館資源的需求,并且編寫前端界面時也注重用戶的角度,使得該系統(tǒng)非常符合學(xué)生們的需求。4.安全性系統(tǒng)會在各個層面保障用戶的信息,并且在登錄時會進(jìn)行驗(yàn)證碼檢驗(yàn),,管理員也可以對不同角色進(jìn)行權(quán)限分配,使得系統(tǒng)管理更加安全。5.可維護(hù)性系統(tǒng)在開發(fā)時采用面向?qū)ο蟮能浖_發(fā)模式,界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層將系統(tǒng)的三大功能分隔開來,系統(tǒng)內(nèi)部每個模塊之間聯(lián)系緊密、耦合度低,使得程序人員能夠更輕松地拓展系統(tǒng)。2.4數(shù)據(jù)分析根據(jù)功能模塊的設(shè)計(jì),可以看出整個系統(tǒng)可以劃分為兩個相對獨(dú)立的部分:權(quán)限管理部分和基本業(yè)務(wù)部分。系統(tǒng)的實(shí)體類包括:用戶信息、學(xué)生信息、閱覽室信息、座位信息、權(quán)限信息、信用信息、推薦書籍信息、帖子信息、公告信息。學(xué)生和管理員是系統(tǒng)主要的使用用戶,學(xué)生登錄網(wǎng)站的用戶名和密碼由管理員在管理用戶界面分配。管理員登錄網(wǎng)站后擁有所有的權(quán)限,并且可以給其他角色分配相應(yīng)的權(quán)限。學(xué)生登錄后享有部分權(quán)限,且學(xué)生的所有權(quán)限由管理員分配。 學(xué)生在圖書館有信用積分,信用積分會隨著學(xué)生在圖書館的違規(guī)行為而相應(yīng)變化,用戶可以點(diǎn)擊學(xué)生對應(yīng)的信用積分來查看該學(xué)生信用積分的詳情。管理員對信用積分進(jìn)行管理。座位和閱覽室屬于聚合關(guān)系,座位是閱覽室的組成部分,管理員對閱覽室和座位進(jìn)行管理,閱覽室有相應(yīng)的積分限制,學(xué)生無法在信用積分高于自己信用積分的閱覽室進(jìn)行選座。學(xué)生可以在帖子專區(qū)發(fā)表帖子,管理員則可以修改、刪除所有的帖子。用戶通過點(diǎn)擊某一帖子的標(biāo)題還可以查看該帖子的跟帖和回帖情況。管理員管理公告信息,可以通過輸入標(biāo)題以及在文本框內(nèi)輸入正文來添加新的公告,用戶通過點(diǎn)擊標(biāo)題可以查看通知的詳情信息。書籍推薦由管理員添加書籍并且管理,需要輸入合法的書名、作者、出版社以及書籍簡介并上傳書籍的封面圖片來完成新的推薦書籍的添加。學(xué)生可以在該頁面查看系統(tǒng)推薦的書籍。圖2-4系統(tǒng)分析類圖2.5社會、健康、安全、法律、文化及環(huán)境等因素需求頁面的觀賞性良好,而且操作簡單,安全性較高。系統(tǒng)的開發(fā)在規(guī)模上屬于大型系統(tǒng),系統(tǒng)從提出到實(shí)現(xiàn)需要花費(fèi)大量的時間,以及人力物力成本。從社會效益來看,系統(tǒng)的開發(fā)改變了傳統(tǒng)的數(shù)據(jù)建模方式,使得數(shù)據(jù)建模多樣化、簡單化,對產(chǎn)業(yè)的層次也有較大的提升,促進(jìn)產(chǎn)品結(jié)構(gòu)、技術(shù)結(jié)構(gòu)調(diào)整,為社會的發(fā)展提供了動力。系統(tǒng)應(yīng)確保是安全的,系統(tǒng)各角色權(quán)限管理明確,不能出現(xiàn)越權(quán)操作,在不經(jīng)過用戶允許的情況下,不應(yīng)非法訪問用戶的具體信息。在用戶輸入添加數(shù)據(jù)源時,保證不會有其他不應(yīng)該看到的角色知道用戶傳入的數(shù)據(jù),并且不會出現(xiàn)丟失數(shù)據(jù),如果數(shù)據(jù)不幸丟失,系統(tǒng)要具有恢復(fù)功能,可以找回丟失的數(shù)據(jù)。在網(wǎng)絡(luò)安全方面,應(yīng)該防止基本的網(wǎng)絡(luò)攻擊,如果網(wǎng)絡(luò)出現(xiàn)問題,應(yīng)該快速給出提示先息。系統(tǒng)應(yīng)該確保從開始提出到開發(fā)完成的整個過程都必須在法律規(guī)定的范圍內(nèi)實(shí)現(xiàn),不可以進(jìn)行非法操作,不能侵犯他人的利益,而且也要符合行業(yè)的標(biāo)準(zhǔn),在獲取利益的同時也要促進(jìn)行業(yè)的發(fā)展,從而為社會做出貢獻(xiàn)。頁面元素要符合語言背景環(huán)境。系統(tǒng)運(yùn)行環(huán)境要求如表2-11所示:表2-8系統(tǒng)運(yùn)行環(huán)境要求內(nèi)容環(huán)境內(nèi)存8G以上硬盤容量500G以上瀏覽器版本7.0以上后臺數(shù)據(jù)庫版本MySql5.0以上PAGE41第三章系統(tǒng)設(shè)計(jì)本章需要對網(wǎng)站進(jìn)行詳細(xì)的總體架構(gòu)設(shè)計(jì)和數(shù)據(jù)表設(shè)計(jì),總體架構(gòu)設(shè)計(jì)包括對系統(tǒng)的各個功能模塊的詳細(xì)設(shè)計(jì)。3.1系統(tǒng)總體架構(gòu)系統(tǒng)使用當(dāng)前流行的動態(tài)網(wǎng)頁開發(fā)的JSP技術(shù),在功能模塊上使得功能結(jié)構(gòu)差不多的模塊緊密聯(lián)系起來,讓系統(tǒng)的代碼之間在聯(lián)系緊密的同時耦合度降低,這樣就使得系統(tǒng)開發(fā)人員需要更改系統(tǒng)功能時更加容易,并且后面對程序維護(hù)也更加簡單。這種設(shè)計(jì)架構(gòu),可以大大提升統(tǒng)開發(fā)人員團(tuán)隊(duì)協(xié)作的效率,從而使得分工更加的明確,例如前端的開發(fā)人員可以完全投入到界面設(shè)計(jì)中,設(shè)計(jì)出更加簡潔明了同時實(shí)用性強(qiáng)的界面。又比如,后臺的算法工程師則可以更加注重于編寫出實(shí)現(xiàn)系統(tǒng)功能的代碼,并且利用前端傳到后臺的數(shù)據(jù),從而編寫出處理這些數(shù)據(jù)的方法,使系統(tǒng)更加快速、穩(wěn)定的運(yùn)轉(zhuǎn)。最后,開發(fā)數(shù)據(jù)庫的工程師則實(shí)現(xiàn)增刪改查等SQL語句,運(yùn)行這些語句所得到的數(shù)據(jù)返回給后臺的邏輯控制層。這樣的分層架構(gòu),能夠大大減少開發(fā)系統(tǒng)的過程中的浪費(fèi),使得開發(fā)人員能夠更加高效的完成系統(tǒng)開發(fā)。所以通過劃分本項(xiàng)目的功能層次模型,可以知道這個項(xiàng)目大體上分為三個功能層次,分別是View層、Control層和DAO層。其中的View層主要是利用HTML和JSP實(shí)現(xiàn),充分發(fā)揮應(yīng)用程序和客戶端之間數(shù)據(jù)交互的作用。View層在應(yīng)用程序響應(yīng)的時候,將響應(yīng)結(jié)果發(fā)送到ActionServlet類,然后由這個類將HTML代碼發(fā)送到瀏覽器上邊,或者將JSP的動態(tài)頁面實(shí)現(xiàn)之后,瀏覽器發(fā)送項(xiàng)目的Controller層發(fā)揮處理事務(wù)邏輯的作用。View層的實(shí)現(xiàn)是通過Structs框架為支撐點(diǎn),所有的業(yè)務(wù)邏輯類都繼承于DispatchAction類,在相應(yīng)的類中編寫于execute方法業(yè)務(wù)邏輯相同相同的處理方法,這些方法執(zhí)行之后,就可以向ActionServlet類返回View層的界面。圖3-1系統(tǒng)分層架構(gòu)圖DAO層的作用是管理數(shù)據(jù)庫的讀寫操作,這一層利用Hibernate技術(shù)框架所包含的API作為基礎(chǔ)來實(shí)現(xiàn),創(chuàng)建了訪問數(shù)據(jù)庫的類和方法。這一層中只有Control層之間可以交互數(shù)據(jù)。在Control層中,Action提供的邏輯方法可以創(chuàng)建實(shí)例化對象來訪問數(shù)據(jù)庫,并且調(diào)用相應(yīng)的方法,完成對數(shù)據(jù)的讀寫。因?yàn)槭褂昧薍ibernate的API技術(shù),因此可以使用面向?qū)ο蟮姆绞絹硗瓿蓴?shù)據(jù)交互。在讀取完數(shù)據(jù)之后,數(shù)據(jù)讀取的結(jié)果會被從Hibernate框架中讀取出來,并且按照相應(yīng)的文件的信息,將其封裝為實(shí)體類的對象。在寫入數(shù)據(jù)的時候,可以以參數(shù)的形式將對象傳遞到數(shù)據(jù)庫的訪問類,并且解析對象的屬性,完成對數(shù)據(jù)的賦值并且寫入。3.2模塊設(shè)計(jì)系統(tǒng)分為以下兩大模塊來實(shí)現(xiàn)以上設(shè)計(jì)思想:系統(tǒng)管理模塊的功能包括:對用戶的添加、修改、刪除,用戶賬號登錄,管理員修改角色權(quán)限,添加、修改、刪除學(xué)生信息,添加閱覽室信息,信用積分添加違章記錄。學(xué)生功能模塊的功能包括:學(xué)生選座,空余座位查看,查看通知,發(fā)表帖子。3.2.1系統(tǒng)管理模塊設(shè)計(jì)添加、修改、刪除用戶普通用戶想登錄到本網(wǎng)站并使用所提供的服務(wù),需要獲得管理員提供的賬號,管理員賬號是系統(tǒng)做好時添加到數(shù)據(jù)庫中的,管理員登錄系統(tǒng)后,進(jìn)入用戶管理界面,在列表的左上方對用戶信息進(jìn)行添加、修改和刪除操作,執(zhí)行添加用戶操作時,需要操作人員輸入合法的用戶名密碼以及選擇其所屬的角色來為系統(tǒng)創(chuàng)建新的用戶,表單分別會進(jìn)行前端js與后端java驗(yàn)證,驗(yàn)證通過則會在系統(tǒng)數(shù)據(jù)庫中新建一個用戶,反之將提示相應(yīng)的錯誤信息;執(zhí)行修改用戶操作時,操作人員需要合法的修改相關(guān)信息,通過前后端的驗(yàn)證,才能最終完成用戶信息的修改;執(zhí)行刪除用戶操作時,在用戶列表中選擇一個用戶的信息,并在彈出的確認(rèn)框中進(jìn)行確認(rèn)來完成該用戶信息的刪除,可以一次刪除多個用戶。該過程用到的類之間的依賴關(guān)系如下圖:圖3-2添加、修改、刪除用戶vopc圖添加、修改、刪除用戶過程的序列圖如下:圖3-3添加、修改、刪除用戶序列圖賬號登錄用戶登錄需要輸入正確的用戶名、密碼以及驗(yàn)證來進(jìn)行登錄。表單分別會進(jìn)行前端js與后端java驗(yàn)證。驗(yàn)證通過則會登錄到管理界面,如果驗(yàn)證未通過則會在頁面出現(xiàn)相應(yīng)的錯誤提示。登錄時用到的類依賴關(guān)系如下圖:圖3-4賬號登錄vopc圖登錄過程的序列圖如下:圖3-5賬號登錄序列圖修改角色權(quán)限不同的角色有不同的權(quán)限,用戶通過選擇對應(yīng)的角色并選擇相應(yīng)的權(quán)限來完成對某一角色的權(quán)限配置。該過程的類依賴關(guān)系如下圖:圖3-6修改角色權(quán)限vopc圖修改角色權(quán)限的序列圖如下:圖3-7修改角色權(quán)限序列圖添加、修改、刪除學(xué)生信息管理員可以對學(xué)生信息進(jìn)行添加、修改以及刪除操作。添加、修改學(xué)生信息時,管理員需要合法的填寫新增學(xué)生的姓名、學(xué)號、性別等相關(guān)信息以及上傳相應(yīng)的圖片。系統(tǒng)通過前端與后端進(jìn)行雙重驗(yàn)證,通過驗(yàn)證的后便會在數(shù)據(jù)庫中添加新的學(xué)生,否則會提示相應(yīng)的錯誤信息。添加、修改、刪除學(xué)生信息使用的類之間的依賴關(guān)系如下:圖3-8添加、修改、刪除學(xué)生信息vopc圖添加、修改、刪除學(xué)生信息的序列圖如下:圖3-9添加、修改、刪除學(xué)生信息序列圖添加閱覽室信息管理員進(jìn)入閱覽室信息界面后,頁面中以列表的形式顯示了所有閱覽室的相關(guān)信息,包括閱覽室名稱、類型、座位行數(shù)、列數(shù)和總座位數(shù),管理員可以選擇點(diǎn)擊添加閱覽室按鈕,合法地填寫新增的閱覽室名稱、座位行數(shù)、座位列數(shù)以及選擇其對應(yīng)的閱覽室類型來完成新的閱覽室類型的添加。添加閱覽室信息使用的類之間的依賴關(guān)系如下:圖3-10添加閱覽室信息vopc圖添加閱覽室信息的序列圖如下:圖3-11添加閱覽室信息序列圖信用積分添加違章記錄管理員進(jìn)入信用積分界面后,可以看到所有學(xué)生的信用積分情況。管理員通過點(diǎn)擊學(xué)生的信用積分,可以看到該學(xué)生的積分詳情,并對其添加積分記錄。信用積分添加違章記錄使用的類之間的依賴關(guān)系如下:圖3-12信用積分添加違規(guī)記錄vopc圖信用積分添加違規(guī)記錄的序列圖如下:圖3-13信用積分添加違規(guī)記錄序列圖3.2.2學(xué)生功能模塊設(shè)計(jì)1.學(xué)生選座學(xué)生進(jìn)入頁面后,可以看到以一個列陣的形式顯示的座位表,其中綠色表明已經(jīng)被選擇的座位,黑色表示未被選擇的座位,而紅色表示當(dāng)前用戶所選擇的座位。學(xué)生確認(rèn)位置選擇后,保存位置從而完成閱覽室位置的預(yù)訂。當(dāng)信用積分不滿足閱覽室的限制時,則會預(yù)訂失敗。選擇座位使用的類之間的依賴關(guān)系如下:圖3-14選擇座位用例實(shí)現(xiàn)vopc圖選擇座位的序列圖如下:圖3-15選擇座位序列圖2.空余座位查看學(xué)生進(jìn)入空余座位頁面,頁面以列表的形式展示所有閱覽室,各個時段的座位情況信息,學(xué)生可以查看余座信息,了解各個閱覽室的座位剩余情況??沼嘧徊榭词褂玫念愔g的依賴關(guān)系如下:圖3-16空余座位查看vopc圖空余座位查看的序列圖如下:圖3-17空余座位查看序列圖3.查看通知學(xué)生進(jìn)入通知信息界面后,可以看到系統(tǒng)的所有通知內(nèi)容,通過點(diǎn)擊標(biāo)題可以查看通知的詳情信息。使查看通知使用的類之間的依賴關(guān)系如下:圖3-18查看通知vopc圖查看通知的序列圖如下:圖3-19查看通知序列圖4.發(fā)表帖子學(xué)生進(jìn)入帖子管理界面后,可以點(diǎn)擊添加新的主題的帖子,通過輸入合法的標(biāo)題及內(nèi)容來完成新帖子的創(chuàng)建,新帖子創(chuàng)建完成后就可以在帖子管理頁面中顯示,供學(xué)生們進(jìn)行跟帖與回帖。發(fā)表帖子使用的類之間的依賴關(guān)系如下:圖3-20發(fā)表帖子vopc圖發(fā)表帖子的序列圖如下:圖3-21發(fā)表帖子序列圖3.3數(shù)據(jù)庫表設(shè)計(jì)1.名稱:用戶信息表標(biāo)識:tbusers用戶信息表包括用戶ID、用戶名、密碼、用戶類型等字段表3-1用戶信息表字段名稱數(shù)據(jù)類型主鍵是否空說明userIdint(10)YN用戶IDuserNamevarchar(10)NN用戶名passwordvarchar(20)NN密碼userTypetinyint(1)NN用戶類型roleIdint(10)NN角色I(xiàn)DuserDescriptionvarchar(100)NN描述信息2.名稱:角色信息表標(biāo)識:tbrole角色信息表包括角色I(xiàn)D、角色名稱、操作ID等字段表3-2角色信息表字段名稱數(shù)據(jù)類型主鍵是否空說明roleIdint(32)YN角色I(xiàn)DroleNamevarchar(10)NN角色名稱menuIdsvarchar(20)NN菜單IDsoperationIdsvarchar(10)NN按鈕IDSroleDescriptionvarchar(100)NN描述3.名稱:學(xué)生信息表標(biāo)識:tbstudent學(xué)生信息表包括學(xué)號、姓名、班級、性別、電話等字段表3-3學(xué)生信息表字段名稱數(shù)據(jù)類型主鍵是否空說明idint(10)YN學(xué)生信息主鍵novarchar(20)NN學(xué)號namevarchar(10)NN姓名sexvarchar(10)NN性別clazzidint(10)NN班級birthvarchar(10)NN生日phonevarchar(20)NN電話photovarchar(100)NN圖片(存放的是圖片在服務(wù)器的地址)4.名稱:閱覽室信息表標(biāo)識:tbroom閱覽室信息表包括閱覽室名稱、類型、行數(shù)、列數(shù)等字段表3-4閱覽室信息表字段名稱數(shù)據(jù)類型主鍵是否空說明idint(10)YN閱覽室主鍵typeidint(10)NN閱覽室類型namevarchar(10)NN名稱rowint(10)NN行數(shù)colint(10)NN列數(shù)totalint(10)NN總數(shù)5.名稱:座位信息表標(biāo)識:tbseat座位信息表包括所屬閱覽室、所屬行、所屬列等字段表3-5座位信息表字段名稱數(shù)據(jù)類型主鍵是否空說明idint(10)YN座位信息主鍵roomidint(10)NN所屬閱覽室rowint(10)NN所屬行colint(10)NN所屬列studentnovarchar(10)NN被占用學(xué)號,1表示未被占座,有學(xué)號表示被某個學(xué)生占座timevarchar(50)NN時間段datevarchar(50)日期keywordvarchar(50)關(guān)鍵字,由row,col,date,time,roomid組成6.名稱:信用積分標(biāo)識:tbscore積分信息表包括學(xué)號、學(xué)生姓名、總分等字段表3-6信用積分信息表字段名稱數(shù)據(jù)類型主鍵是否空說明idint(10)YN信用積分主鍵studentnovarchar(10)NN學(xué)號studentnamevarchar(10)NN學(xué)生姓名totalint(10)NN總分7.名稱:通知公告標(biāo)識:tbnotice通知公告信息表包括標(biāo)題、內(nèi)容、時間等字段表3-7通知公告信息表字段名稱數(shù)據(jù)類型主鍵是否空說明idint(10)YN通知主鍵titlevarchar(20)NN標(biāo)題contenttextNN內(nèi)容timevarchar(50)NN時間8名稱:帖子標(biāo)識:tbbbs帖子信息包括標(biāo)題、學(xué)號、創(chuàng)建時間、回復(fù)數(shù)量、回復(fù)人等字段表3-8帖子信息表字段名稱數(shù)據(jù)類型主鍵是否空說明idint(10)YN交流主鍵titlevarchar(20)NN標(biāo)題authorvarchar(10)NN學(xué)號或者工號timevarchar(50)NN創(chuàng)建時間replyint(10)NN回復(fù)數(shù)量lastreplyvarchar(10)NN最后回復(fù)人lastreplytimevarchar(50)NN最后訪問時間9.名稱:推薦書籍標(biāo)識:tbbook推薦書籍包括書名、作者、封面圖片等字段表3-9書籍信息表字段名稱數(shù)據(jù)類型主鍵是否空說明idint(10)YN書籍自增主鍵namevarchar(20)NN書名authorvarchar(20)NN作者publishvarchar(10)NN出版社covervarchar(100)NN封面圖片remarksvarchar(100)NN簡介第四章系統(tǒng)實(shí)現(xiàn)4.1公共模塊的實(shí)現(xiàn)網(wǎng)站的界面大體上分為四個部分,每個部分都有各自的功能,這樣使得網(wǎng)站的布局結(jié)構(gòu)更加簡潔、統(tǒng)一。它們分別是Head、Left、MainFrame、Bottom。圖4-1頁面結(jié)構(gòu)圖Head區(qū)域展示了網(wǎng)站的標(biāo)題以及路徑導(dǎo)航,Left區(qū)域以菜單的形式顯示了系統(tǒng)所有的功能,MainFrame區(qū)域則是系統(tǒng)最主要的部分,所有的功能都在這里展示,用戶的絕大部分操作都在這里進(jìn)行,Bottom部分則展示了分頁等一些相關(guān)內(nèi)容。系統(tǒng)中某些界面并不是按上述結(jié)構(gòu)展示的。網(wǎng)站以簡約的白色和淺藍(lán)色為主題顏色,所有字體都為五號,大部分為黑色宋體,在某些提示信息時會變成紅色,系統(tǒng)會以彈窗的形式展示提示。4.2數(shù)據(jù)庫連接的實(shí)現(xiàn)MySQL作為本網(wǎng)站的底層數(shù)據(jù)庫,可以提供非常強(qiáng)大的功能,擁有非常完善的數(shù)據(jù)類型,可以滿足當(dāng)下幾乎所有網(wǎng)站對于數(shù)據(jù)信息要求。MySQL具有很高的安全性,在處理異步問題的時候,也會做很多全面的處理,從而降低復(fù)雜度。因?yàn)樵陂_發(fā)本網(wǎng)站時使用的是jsp動態(tài)網(wǎng)頁開發(fā)技術(shù),并且是使用的Windows系統(tǒng),所以使用了sun公司提供的JDBC橋來連接底層數(shù)據(jù)庫。在LibrarySeats的配置文件perties文件中編寫了和數(shù)據(jù)庫進(jìn)行連接的信息,包括URL、用戶名、密碼和數(shù)據(jù)庫JDBC驅(qū)動等。4.3系統(tǒng)功能的實(shí)現(xiàn)4.3.1用戶管理頁面的實(shí)現(xiàn)如下圖為系統(tǒng)管理欄目中的用戶管理(僅有管理員或者有權(quán)限的用戶可以看見此選項(xiàng)),會以列表的形式顯示所有系統(tǒng)用戶的賬戶信息和所屬角色,并且在列表的左上方可以對用戶信息進(jìn)行添加、修改和刪除的操作,這些操作也是以權(quán)限的形式分配給不同用戶,只有具有權(quán)限的用戶可以看見相關(guān)的選項(xiàng)并進(jìn)行操作,下文中的所有管理選項(xiàng)都是使用此類機(jī)制,為避免冗余,在下文中對此就不再贅述了。圖4-2用戶管理頁面下圖為對用戶的添加操作,需要操作人員輸入合法的用戶名密碼以及選擇其所屬的角色來為系統(tǒng)創(chuàng)建新的用戶,表單分別會進(jìn)行前端js與后端java驗(yàn)證,驗(yàn)證通過則會在系統(tǒng)數(shù)據(jù)庫中新建一個用戶,反之將提示相應(yīng)的錯誤信息。圖4-3添加用戶頁面4.3.2修改角色權(quán)限的實(shí)現(xiàn)下圖為角色的授權(quán)頁面,可以看到所有的權(quán)限選項(xiàng)以及對應(yīng)的操作類型,管理員通過選擇某一角色后,在界面左上角點(diǎn)擊授權(quán)按鈕,然后選擇相應(yīng)的權(quán)限來完成對某一角色的權(quán)限配置。圖4-4修改角色權(quán)限頁面4.3.3信用積分界面的實(shí)現(xiàn)如下圖為信用積分管理欄目中的信用積分頁面,頁面中以列表的形式展現(xiàn)了所有學(xué)生的信用積分情況,用戶還可以根據(jù)頁面上方的搜索框,按照學(xué)生姓名和學(xué)號來進(jìn)行檢索。用戶還可以點(diǎn)擊學(xué)生對應(yīng)的信用積分來查看該學(xué)生信用積分的詳情。圖4-5信用積分頁面如下圖是信用積分詳情頁面,該頁面記錄了該同學(xué)所有影響信用的積分的記錄。有權(quán)限的用戶還可以對信用積分的記錄進(jìn)行增加和刪除。圖4-6信用積分詳情頁面 下圖為添加信用積分的違章記錄頁面,用戶通過合法的選擇時間段、填寫扣分?jǐn)?shù)量和備注信息來完成學(xué)生違章記錄的添加和信用積分的扣除。圖4-7信用積分添加違規(guī)記錄頁面4.3.4選座界面的實(shí)現(xiàn)學(xué)生登錄系統(tǒng)進(jìn)入選座界面后,可以選擇日期、時間段、閱覽室來完成閱覽室座位信息的查詢。座位信息是以一個陣列的形式顯示的,其中綠色表明已經(jīng)被選擇的座位,黑色表示未被選擇的座位,而紅色表示當(dāng)前用戶所選擇的座位。用戶確認(rèn)位置選擇后,保存位置從而完成閱覽室位置的預(yù)訂。當(dāng)信用積分不滿足閱覽室的限制是,則會預(yù)訂失敗。圖4-8選座頁面4.3.5空余座位查看如下圖為選座管理的空余座位頁面,頁面以列表的形式展示所有閱覽室,各個時段的座位情況信息,方便學(xué)生預(yù)訂座位時了解各個閱覽室的座位剩余情況。圖4-9空余座位查看頁面4.3.6通知信息界面如下圖為通知公告的通知信息頁面,該頁面以列表的形式展現(xiàn)了系統(tǒng)的所有通知內(nèi)容,包括標(biāo)題和內(nèi)容,通過點(diǎn)擊標(biāo)題可以查看通知的詳情信息,具有權(quán)限的用戶還可以對通知信息進(jìn)行添加。圖4-10通知信息頁面管理員可以添加通知,如下是對通知的添加操作界面,通過輸入標(biāo)題以及在文本框內(nèi)輸入正文來添加新的通知信息。圖4-11添加通知信息頁面4.3.7帖子管理界面學(xué)生進(jìn)入帖子管理界面后,頁面中以列表的形式展示了所有的帖子的信息,通過點(diǎn)擊某一帖子的標(biāo)題還可以查看該帖子的跟帖和回帖情況。圖4-11帖子列表頁面圖4-12帖子詳情頁面可以點(diǎn)擊添加新的主題的帖子,通過輸入合法的標(biāo)題及內(nèi)容來完成新帖子的創(chuàng)建,新帖子創(chuàng)建完成后就可以在帖子管理頁面中顯示,供學(xué)生們進(jìn)行跟帖與回帖。圖4-13添加帖子頁面第五章系統(tǒng)測試5.1系統(tǒng)測試概述系統(tǒng)測試的目的是想要發(fā)現(xiàn)系統(tǒng)中的不合理的錯誤,是一個為了發(fā)現(xiàn)錯誤而執(zhí)行系統(tǒng)的過程,可以用來提高系統(tǒng)的穩(wěn)定性和可靠性。根據(jù)有關(guān)數(shù)據(jù)表明,在開發(fā)特別大型的系統(tǒng)的時候,有1/3以上的時間和精力就是花費(fèi)在測試這一方面,即便是非常有開發(fā)經(jīng)驗(yàn)的人員,在工作時也會發(fā)錯不可避免的錯誤,甚至有些錯誤在工作的最開始階段就對工程產(chǎn)生了隱患,對于工作中早期產(chǎn)生的隱患或者新出現(xiàn)的錯誤,如果沒有及時去除,那么就會使軟件變得不可靠,甚至使軟件運(yùn)行失敗。因此,對系統(tǒng)進(jìn)行測試工作是一件很重要的事情。對系統(tǒng)的測試是為了更多地找出系統(tǒng)的錯誤,而在選擇測試用例的時候,我們也更應(yīng)該選擇更容易發(fā)生錯誤的數(shù)據(jù)來進(jìn)行測試,這樣可以更早地發(fā)現(xiàn)系統(tǒng)存在的問題。這次測試用例的工作就是利用軟件開發(fā)時候的文檔資料和代碼的內(nèi)部的結(jié)構(gòu),編寫出“高效”的測試用例,我們使用這些用例的執(zhí)行來發(fā)掘出系統(tǒng)內(nèi)在的缺陷。5.2測試的方法和計(jì)劃白盒測試、黑盒測試分別從軟件的系統(tǒng)架構(gòu)層面和如何實(shí)現(xiàn)的兩個方面來劃分測試的方法;靜態(tài)測試和動態(tài)測試分別是從程序執(zhí)行的維度來劃分;從軟件編寫的過程角度,可以將測試分為:集成測試、單元測試、確認(rèn)測試、系統(tǒng)測試、驗(yàn)收測試和Beta測試等;單元測試是對軟件編寫過程中程序模塊進(jìn)行測試和檢驗(yàn)工作,所有也被叫做模塊測試。它能夠發(fā)現(xiàn)每個程序模塊之中的每一種可能發(fā)生的錯誤。單元測試的測試用例是從程序里邊的結(jié)構(gòu)進(jìn)行設(shè)計(jì)編寫的。不同的程序模塊之間可以進(jìn)行相互獨(dú)立的測試;設(shè)計(jì)集成測試的時候需要注意以下幾點(diǎn):當(dāng)把程序內(nèi)部每個模塊關(guān)聯(lián)起來之后,存在于模塊接口處的數(shù)據(jù)可能會失去;A模塊的功能可能會對B模塊的功能造成意想不到的影響;當(dāng)把系統(tǒng)中的所有功能模塊關(guān)聯(lián)起來之后,是否可以有理想中的效果;全局的數(shù)據(jù)單元可能發(fā)生錯誤;當(dāng)把每個程序模塊的錯誤累加起來時候,系統(tǒng)總的錯誤是否會疊加,并且使系統(tǒng)達(dá)到崩潰的程度。確認(rèn)測試的目的是檢驗(yàn)程序的功能(這些功能已在軟件需求規(guī)格說明書中規(guī)定)能否達(dá)到客戶的要求;系統(tǒng)測試:把需要進(jìn)行測試的軟件程序作為一個系統(tǒng)元素,將它和其他計(jì)算機(jī)硬件、數(shù)據(jù)和人員等其他系統(tǒng)信息關(guān)聯(lián)起來,通過實(shí)際的運(yùn)行,從而記錄系統(tǒng)運(yùn)行的數(shù)據(jù)。將這些數(shù)據(jù)和系統(tǒng)的需求進(jìn)行比較,就可以找出軟件的需求與實(shí)際運(yùn)行之間的差異。驗(yàn)收測試指的是在完成了系統(tǒng)有效性測試和軟件程序的審查后,對系統(tǒng)進(jìn)行的以客戶為主要對象的測試,同時軟件的開發(fā)人員和質(zhì)量保證人員也可以參與到測試之中。驗(yàn)收測試使用程序運(yùn)行實(shí)際的數(shù)據(jù)來進(jìn)行測試,并且測試用例來源于系統(tǒng)的用戶。在測試時,不僅要從軟件程序的功能和性能出發(fā),還要考慮軟件的移植性、維護(hù)性、兼容性和發(fā)生錯誤之后的恢復(fù)性等。5.3測試的數(shù)據(jù)、結(jié)論以下為功能測試的測試用例:1.用戶登錄驗(yàn)證表5-1用戶登錄測試用例標(biāo)識符1001測試項(xiàng)用戶登錄驗(yàn)證輸入1.輸入用戶名和驗(yàn)證碼,密碼為空,點(diǎn)擊登錄2.輸入密碼和驗(yàn)證碼,用戶名為空,點(diǎn)擊登錄3.輸入錯誤的用戶名和密碼、正確的驗(yàn)證碼,點(diǎn)擊登錄4.輸入正確的用戶名和密碼、錯誤的驗(yàn)證碼,點(diǎn)擊登錄5.輸入正確的用戶名、密碼和驗(yàn)證碼,點(diǎn)擊登錄期望結(jié)果1.顯示紅色字體警告信息“用戶名或密碼為空!”2.顯示紅色字體警告信息“用戶名或密碼為空!”3.顯示紅色字體警告信息“用戶名或密碼誤!”4.顯示紅色字體警告信息“驗(yàn)證碼錯誤!”5.正確登入到學(xué)生操作界面輸出結(jié)果1.顯示警告信息“用戶名或密碼為空!”2.顯示警告信息“用戶名或密碼為空!”3.顯示警告信息“用戶名或密碼誤”4.顯示警告信息“驗(yàn)證碼錯誤”5.正確登入到會員操作界面測試狀態(tài)與期望結(jié)果相同2.學(xué)生選座表5-2學(xué)生選擇座位測試用例標(biāo)識符1002測試項(xiàng)學(xué)生選座輸入1.保存一個座位后,在同一時間段繼續(xù)選擇確定一個座位2.沒有選擇座位,直接點(diǎn)擊保存座位3.在一個閱覽室保存座位后,同一時間段在另一個閱覽室選擇保存座位4.信用積分低于該閱覽室要求分?jǐn)?shù)時,在該閱覽室選擇座位5.選擇時間段后,選擇座位并確認(rèn)保存期望結(jié)果1.系統(tǒng)提示預(yù)約失敗“這個

溫馨提示

  • 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

提交評論