惠昭君
(寧夏大學(xué) 寧夏回族自治區(qū)銀川市 750021)
JSP是一種動態(tài)網(wǎng)頁開發(fā)技術(shù),從許多方面促進(jìn)了動態(tài)Web網(wǎng)頁的開發(fā),優(yōu)點是將生成內(nèi)容與顯示結(jié)果分開;更加強(qiáng)調(diào)可重用組件;采用標(biāo)簽簡化頁面開發(fā);一次編寫、處處執(zhí)行;更高的效率和安全性。SQL Sever數(shù)據(jù)庫具有更高校的大數(shù)據(jù)分析特性、更靈活的業(yè)務(wù)擴(kuò)展性以及一定的易用性,服務(wù)器使用了Tomcat,它是一種免費且開放的servlet容器。
本選題為一個云端日記管理系統(tǒng),主要功能是實現(xiàn)用戶對日記的管理。它可以協(xié)助用戶記錄生活點滴,方便日記的撰寫、保存與查看。
在軟件項目中可行性研究分析主要關(guān)系到經(jīng)濟(jì)、人力、技術(shù)和社會環(huán)境可行性分析。
本系統(tǒng)主要運用Java語言開發(fā),Java語言簡潔易懂,同時后期的維護(hù)也很簡單。數(shù)據(jù)庫選用SQL Sever作為數(shù)據(jù)庫管理系統(tǒng),它能夠處理大量數(shù)據(jù)。它的靈活性、易用性和安全性,為數(shù)據(jù)庫系統(tǒng)編程創(chuàng)造了較好的條件。由于Java語言、JSF技術(shù)與SQL Sever數(shù)據(jù)庫管理系統(tǒng)對系統(tǒng)的軟硬件環(huán)境需求也不高,所以,本系統(tǒng)的軟件開發(fā)平臺切實可行。
本系統(tǒng)的開發(fā)需要一臺高性能計算機(jī)和一些開發(fā)軟件,因此成本相對較低。云端日記管理系統(tǒng)價值較大,用戶可以抒發(fā)自己的情感,在日志里記錄個人想法,不受時間空間等的局限,言論自由且擁有話語權(quán)。小組成員都具有一定的編程知識和能力,也有一些項目經(jīng)驗,
社會環(huán)境的可行性至少包括兩種因素:市場與政策。人們對于生活的儀式感和點滴記錄的幸福指數(shù)在上升,而目前市場上很少有關(guān)于日記的系統(tǒng)平臺,對于用戶來說系統(tǒng)操作的簡潔性和界面的美觀性是最直觀的感受,這些也較容易實現(xiàn)。
云端日記管理系統(tǒng)功能模塊圖如圖1所示。
圖1:功能模塊圖
本系統(tǒng)為開放性系統(tǒng),分為兩大模塊:已登錄模塊和未登錄模塊。通過賬號登錄后可以進(jìn)入用戶主頁,用戶主頁包括主頁、日記管理、主題管理。主頁可以顯示用戶自己的所有日記,日記管理有撰寫日記、日記修改、日記搜索。主題管理有主題列表、主題修改、新增主題。未登錄成功則進(jìn)入系統(tǒng)主頁,系統(tǒng)主頁可以看其他用戶分享的日記,可以查看日記類型,可以進(jìn)行日記搜素,也可以進(jìn)入登錄界面,若未注冊賬號則可以注冊賬號,已注冊賬號則進(jìn)行登錄。
4.2.1 未登錄模塊
未登錄模塊是為未登錄用戶提供的功能服務(wù):進(jìn)入系統(tǒng)主頁瀏覽其他用戶分享的日記、查看日記類型、進(jìn)行日記搜索、注冊、登錄。
(1)為未開通賬號的用戶提供瀏覽其他用戶分享的日記的功能;
(2)未開通賬號的用戶可以查看日記類型;
(3)未開通賬號的用戶可以搜索日記;
(4)為未開通賬戶的用戶提供注冊功能,用戶可以注冊賬號進(jìn)行登錄;
(5)為已經(jīng)注冊過帳號的用戶提供重新登錄的功能。
4.2.2 已登錄模塊
已登錄模塊主要實現(xiàn)的是為已登錄用戶提供個人功能服務(wù)。包括:主頁、日記管理、主題管理。
(1)主頁:記錄了用戶所寫的日記信息。
(2)日記管理:記錄了用戶所寫的日記信息,主要實現(xiàn)用戶對自己所寫日記的管理;撰寫日記、日記修改、日記搜索。
(3)主題管理:記錄了主題信息,主要實現(xiàn)用戶查看主題列表、修改主題、新增主題。
(1)根據(jù)需求分析,設(shè)計三張表:
用戶:用戶名(VARCHAR類型)、用戶密碼(VARCHAR類型)。
日記:日記ID(INTEGER)、日記主題(VARCHAR類型)、日記標(biāo)題(VARCHAR類型)、日記作者(VARCHAR類型)、撰寫時間(VARCHAR類型)、日記內(nèi)容(VARCHAR類型)、日記字?jǐn)?shù)(VARCHAR類型)。
主題:主題ID(INTEGER)、主題內(nèi)容(VARCHAR類型)。
(2)云端日記管理系統(tǒng)的E-R圖如圖2所示。
圖2:云端日記管理系統(tǒng)的E-R圖
(3)邏輯結(jié)構(gòu)設(shè)計:本系統(tǒng)的數(shù)據(jù)庫采用SQL Sever數(shù)據(jù)庫,數(shù)據(jù)庫名new,共包含用戶表、日記表、主題表三個表。
系統(tǒng)首頁如圖3所示。
圖3:首頁
在Web端運行本系統(tǒng),單擊“點擊進(jìn)入這里”,啟用button組件響應(yīng)操作事件,用a標(biāo)簽中的href屬性調(diào)用Java中的servlet,進(jìn)入系統(tǒng)。核心代碼如下:
系統(tǒng)未登錄用戶部分模塊如圖4所示。
圖4:日記列表
系統(tǒng)已登錄用戶部分模塊如圖5和6所示。
圖5:撰寫日記
系統(tǒng)測試的意義表現(xiàn)為它是保證系統(tǒng)質(zhì)量與穩(wěn)定性的重要手段,是整個系統(tǒng)設(shè)計與實現(xiàn)的最后檢查。雖然在系統(tǒng)開發(fā)的每個環(huán)節(jié)都進(jìn)行了嚴(yán)密的程序?qū)徍?,期望提前找到系統(tǒng)中的各種錯誤和問題并進(jìn)行糾正,保證系統(tǒng)在性能和功能方面與系統(tǒng)的需要所對應(yīng),但仍然很難避免會有一定的差錯,一旦在系統(tǒng)開始使用時,未能找到或修正這些差錯,這將對整個系統(tǒng)產(chǎn)生十分巨大的危害。系統(tǒng)測試階段耗費的時間、花費的人力與成本是整個系統(tǒng)研發(fā)過程中占比非常重要的一部分,這個過程很漫長。
系統(tǒng)測試的方法有白盒測試和黑盒測試。
白盒測試,即以程序的邏輯構(gòu)造和特性為基礎(chǔ)的測試用例方法,簡稱結(jié)構(gòu)化測試、透明盒測試。
黑盒測試,是在完全不考慮程序內(nèi)部運行的結(jié)構(gòu)和邏輯情況下,根據(jù)系統(tǒng)需求的規(guī)格說明書,按照功能以此檢查程序的結(jié)果,判斷功能是否正常使用,也稱功能測試或黑箱測試。
正確的調(diào)整性能要精確記錄每一次的測試結(jié)果并及時維護(hù)。記錄應(yīng)包括:
(1)更準(zhǔn)確的系統(tǒng)配置,關(guān)鍵是與前幾次測試中的不同。
(2)對原始數(shù)據(jù)與性能監(jiān)視工具計算的結(jié)果。
這些記錄不但說明了系統(tǒng)如何實現(xiàn)性能目標(biāo),同時也可以判斷以后性能問題的可能因素。
每次性能測試時,運行一組完全相同的測試才能確定結(jié)果是由測試中的改變而得出的。不然,無法排除因應(yīng)用程序變化而引起的測試結(jié)果不同,盡可能讓性能測試操作自動完成,有助于減少因操作者錯誤產(chǎn)生的差異。其他表面上是良性的因素影響性能測試的結(jié)果,如應(yīng)用程序在測試開始前運行的時間。性能測試采用黑盒測試方法,多用戶同時訪問系統(tǒng),結(jié)果系統(tǒng)運行正常迅速,說明系統(tǒng)在性能方面較滿意。
圖6:主題修改
在系統(tǒng)運行后我們還進(jìn)行了數(shù)據(jù)庫的檢驗,在檢驗中共進(jìn)行了下列操作:
(1)數(shù)據(jù)項的修改操作;
(2)數(shù)據(jù)項的增加操作;
(3)數(shù)據(jù)項的刪除操作;
(4)數(shù)據(jù)表增加滿;
(5)數(shù)據(jù)表刪除空;
(6)刪除空表中的記錄;
(7)數(shù)據(jù)表的并發(fā)操作;
(8)針對存儲過程的接口測試;
(9)結(jié)合業(yè)務(wù)邏輯做關(guān)聯(lián)表的接口測試。
經(jīng)過測試可得出,該系統(tǒng)的數(shù)據(jù)庫運行正常,數(shù)據(jù)可以完好的存儲進(jìn)數(shù)據(jù)庫。
6.5.1 主頁和用戶模塊測試
系統(tǒng)主頁、用戶登錄、注冊模塊等的使用情況、測試方法以及結(jié)果如表1所示。
表1:系統(tǒng)測試
通過以上各功能的測試,本系統(tǒng)在用戶操作方面,可達(dá)到正常實現(xiàn)各種功能。