




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGE17基于Web的網(wǎng)上五金銷售系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要目前傳統(tǒng)五金店均以店面形式存在,存在銷售五金的區(qū)域性,客戶相對(duì)固定,查詢、更新不快捷,投資較大等諸多問題。隨著科學(xué)技術(shù)的飛速發(fā)展,隨著計(jì)算機(jī)科學(xué)的發(fā)展,數(shù)據(jù)庫(kù)技術(shù)在互聯(lián)網(wǎng)上的應(yīng)用越來越廣泛,為廣大網(wǎng)民提供了更加細(xì)致,人性化的服務(wù),各行各業(yè)都在努力與現(xiàn)代先進(jìn)技術(shù)接軌,通過科技手段提高自身的優(yōu)勢(shì);本信息管理系統(tǒng)當(dāng)然也不能排除在外,隨著網(wǎng)絡(luò)技術(shù)的不斷成熟,帶動(dòng)了本信息管理系統(tǒng)的發(fā)展,它徹底改變了過去傳統(tǒng)的管理方式,不僅使服務(wù)管理難度變低了,還提升了管理的靈活性。這種個(gè)性化的平臺(tái)特別注重交互協(xié)調(diào)與管理的相互配合,激發(fā)了管理人員的創(chuàng)造性與主動(dòng)性,對(duì)本信息管理系統(tǒng)而言非常有利。關(guān)鍵詞:SpringMVC;MyBatisMySQL;JSP目錄摘要 I第1章緒論 51.1背景及意義 51.2國(guó)內(nèi)外研究概況 51.3研究的內(nèi)容 6第2章相關(guān)技術(shù) 62.1JSP技術(shù)介紹 62.2JAVA簡(jiǎn)介 72.3ExtJS 72.4MVC結(jié)構(gòu) 72.5BOOTStrap框架 82.6Eclipse開發(fā)環(huán)境 82.7Tomcat服務(wù)器 92.8MySQL數(shù)據(jù)庫(kù) 92.9VUE框架 10第3章系統(tǒng)分析 113.1需求分析 113.2系統(tǒng)可行性分析 113.2.1技術(shù)可行性:技術(shù)背景 123.2.2經(jīng)濟(jì)可行性 123.3項(xiàng)目設(shè)計(jì)目標(biāo)與原則 133.4系統(tǒng)流程分析 133.4.1操作流程 133.4.2添加信息流程 143.4.3刪除信息流程 15第4章系統(tǒng)設(shè)計(jì) 164.1系統(tǒng)體系結(jié)構(gòu) 164.2系統(tǒng)架構(gòu)設(shè)計(jì) 164.2開發(fā)流程設(shè)計(jì) 194.3數(shù)據(jù)庫(kù)設(shè)計(jì)原則 204.4database的設(shè)計(jì)與分析 20第5章系統(tǒng)實(shí)現(xiàn) 24各模塊具體實(shí)現(xiàn) 25用戶注冊(cè): 25用戶登錄: 26信息發(fā)布: 27第6章系統(tǒng)測(cè)試 286.1系統(tǒng)測(cè)試的目的 286.2系統(tǒng)測(cè)試方法 286.3測(cè)試步驟 306.4系統(tǒng)管理系統(tǒng)測(cè)試 306.5系統(tǒng)的各個(gè)的模塊測(cè)試 306.6功能測(cè)試 316.7測(cè)試總結(jié) 32結(jié)論 33參考文獻(xiàn) 34 第1章緒論1.1背景及意義隨著計(jì)算機(jī)科學(xué)技術(shù)的迅猛發(fā)展,本五金店交易系統(tǒng)在電子商務(wù)技術(shù)的應(yīng)用,使得企業(yè)或個(gè)人可以通過在線五金店平臺(tái),實(shí)現(xiàn)網(wǎng)上購(gòu)買五金,改變了傳統(tǒng)購(gòu)買五金商品的方式。本系統(tǒng)管理也都將通過計(jì)算機(jī)進(jìn)行整體智能化操作,對(duì)于本信息管理系統(tǒng)所牽扯的管理及數(shù)據(jù)保存都是非常多的,這給管理者的工作帶來了巨大的挑戰(zhàn),面對(duì)大量的信息,傳統(tǒng)的管理系統(tǒng),都是通過筆記的方式進(jìn)行詳細(xì)信息的統(tǒng)計(jì),后來出現(xiàn)電腦,通過電腦輸入軟件將紙質(zhì)的信息統(tǒng)計(jì)到電腦上,這種方式比較傳統(tǒng),而且想要統(tǒng)計(jì)數(shù)據(jù)信息比較麻煩,還受時(shí)間和空間的影響,所以為此開發(fā)了本信息管理系統(tǒng);對(duì)于用戶而言,可以隨時(shí)進(jìn)行查看及維護(hù)各方面的信息,管理員可以足不出戶就可以獲取到系統(tǒng)的數(shù)據(jù)信息等,而且還能節(jié)省用戶很多時(shí)間,所以開發(fā)本信息管理系統(tǒng)給管理者帶來了很大的方便,同時(shí)也方便管理員對(duì)用戶信息進(jìn)行處理。本論文本信息管理系統(tǒng)主要牽扯到的程序,數(shù)據(jù)庫(kù)與計(jì)算機(jī)技術(shù)等。覆蓋知識(shí)面大,可以大大的提高系統(tǒng)人員工作效率。1.2國(guó)內(nèi)外研究概況隨著國(guó)內(nèi)經(jīng)濟(jì)形勢(shì)的不斷發(fā)展和我國(guó)經(jīng)濟(jì)的健康發(fā)展,中國(guó)互聯(lián)網(wǎng)進(jìn)入了一個(gè)難得的高峰發(fā)展時(shí)期,這使得中外資本家紛紛轉(zhuǎn)向互聯(lián)網(wǎng)市場(chǎng)。現(xiàn)代互聯(lián)網(wǎng)飛速發(fā)展,互聯(lián)網(wǎng)已融入到人們的生活中,伴隨著互聯(lián)網(wǎng)環(huán)境的覆蓋越來越廣,隨著科技的進(jìn)步,互聯(lián)網(wǎng),通信和多媒體技術(shù)等也取得極大的進(jìn)步。互聯(lián)網(wǎng)已成為我們生活中無法分割的一部分,同時(shí)互聯(lián)網(wǎng)的發(fā)展給我們帶來了無限的商機(jī)和便利。然而,許多管理領(lǐng)域的不合理結(jié)構(gòu),人員不足以及市場(chǎng)管理需求的增加使得更多的人具備了互聯(lián)網(wǎng)管理的意識(shí)。本課題減少大量的數(shù)據(jù)冗余和傳統(tǒng)管理的繁瑣工作量,實(shí)現(xiàn)管理的系統(tǒng)化、科學(xué)化。而用戶也可以足不出戶即可選擇到更多更便宜的五金商品,解決了當(dāng)代城市人因生活節(jié)奏快而無法抽時(shí)間去購(gòu)買五金商品的問題。1.3研究的內(nèi)容論文主要介紹了本系統(tǒng)的選題的背景、現(xiàn)狀以及分析,設(shè)計(jì)中所用到的工具和技術(shù),可行性分析、需求分析、系統(tǒng)的結(jié)構(gòu)、功能以及數(shù)據(jù)庫(kù)的設(shè)計(jì),各個(gè)模塊的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn),以及系統(tǒng)的測(cè)試、結(jié)束語(yǔ)、參考文獻(xiàn)和致謝。其中最重要的是需求分析和詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)這兩個(gè)部分。通過學(xué)習(xí)軟件設(shè)計(jì)的原理,在畢設(shè)期間,我對(duì)畢業(yè)課題進(jìn)行了系統(tǒng)的需求分析、可行性分析、詳細(xì)設(shè)計(jì)、編碼實(shí)現(xiàn)、調(diào)試和系統(tǒng)測(cè)試,完成了畢業(yè)系統(tǒng)設(shè)計(jì)系統(tǒng)。第2章相關(guān)技術(shù)軟件是隱藏在計(jì)算機(jī)系統(tǒng)操作內(nèi)部,是整個(gè)系統(tǒng)的核心,內(nèi)部控制如同作為隱藏在人類體內(nèi)的大腦一樣,控制人類的行為意識(shí)形態(tài)。就像哈利波特手中沒有施加魔咒的魔法棒毫無魔力一樣,沒有軟件的計(jì)算機(jī)系統(tǒng)也會(huì)無法運(yùn)行。如果沒有軟件,各種豐富多彩的應(yīng)用在智能手機(jī)將會(huì)消失,銀行的功能將無法提供業(yè)務(wù)結(jié)算、核電站反應(yīng)堆系統(tǒng)將失去控制。軟件工程也注重管理流程,以提高軟件產(chǎn)品質(zhì)量,降低開發(fā)成本,并確保項(xiàng)目按時(shí)完成。系統(tǒng)化、標(biāo)準(zhǔn)化、可測(cè)性的發(fā)展方向,在軟件工程也引起了極大關(guān)注。2.1JSP技術(shù)介紹JSP技術(shù)本身是一種腳本語(yǔ)言,但它的功能是十分強(qiáng)大的,因?yàn)樗梢允褂盟械腏AVA類。SUN公司推出的一種名叫JSP的動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),jsp本質(zhì)上就是Servlet,只不過它是Servlet的一種特殊新式,每個(gè)jsp頁(yè)面都是一個(gè)servlet實(shí)例。當(dāng)它與JavaBeans類進(jìn)行結(jié)合時(shí),它可以使顯示邏輯和內(nèi)容分開,這就極大的方便了用戶的需求。JavaBeans可以對(duì)JSP技術(shù)的程序進(jìn)行擴(kuò)展,從而形成新的應(yīng)用程序,而且JavaBeans的代碼可以重復(fù)使用,所以就便于對(duì)程序進(jìn)行維護(hù)。JavaBean組件有內(nèi)部的接口,可以幫助不同的人對(duì)系統(tǒng)進(jìn)行訪問。1999年,Sun微系統(tǒng)公司正式推出了JSP技術(shù),這是一種動(dòng)態(tài)技術(shù),是基于整個(gè)JAVA體系和JavaServlet提出的,是具有普遍適用性的WEB技術(shù),也是本系統(tǒng)設(shè)計(jì)的核心技術(shù)之一。JSP技術(shù)能夠極大的提高WEB網(wǎng)頁(yè)的運(yùn)行速度。這些內(nèi)容會(huì)與腳本結(jié)合,并且由JavaBean和Servlet組件封裝。所有的腳本均在服務(wù)器端運(yùn)行,JSP引擎會(huì)針對(duì)客戶端所提交的申請(qǐng)進(jìn)行解釋,然后生成腳本程序和JSP標(biāo)識(shí),然后通過HTML/XML頁(yè)面將結(jié)果反饋給瀏覽器。因此,開發(fā)人員親自設(shè)計(jì)最終頁(yè)面的格式和HTML/XML標(biāo)識(shí)時(shí),完全可以使用JSP技術(shù)。JSP的主要優(yōu)點(diǎn)是將業(yè)務(wù)邏輯與表示層分開,并隔離設(shè)計(jì)。JSP將Web頁(yè)面邏輯與Web設(shè)計(jì)的外觀分離開來,而且支持基于組件的可重用設(shè)計(jì)。這使得開發(fā)應(yīng)用于Web的應(yīng)用程序變得更為效率。前后分隔的意義在于防止在后端合并頁(yè)面。由于通信量大,服務(wù)器數(shù)量大,因此在許多情況下,在瀏覽器中分散使用資源會(huì)更劃算。另外,它還具有動(dòng)態(tài)嵌入內(nèi)容等優(yōu)點(diǎn),能夠提供更好的體驗(yàn),工程上的結(jié)合也較弱,開發(fā)也變得容易。所以結(jié)合本信息管理系統(tǒng)的需求及功能模塊的實(shí)現(xiàn),使用JSP技術(shù)是最合適的,而且JSP的拓展性比較好,對(duì)于系統(tǒng)在后期使用過程中可以不斷對(duì)系統(tǒng)功能進(jìn)行拓展,是系統(tǒng)更完成,更方便的滿足用戶管理。2.2JAVA簡(jiǎn)介Java語(yǔ)言從開發(fā)的角度上來說,它比別的開發(fā)語(yǔ)言更為安全,而且Java語(yǔ)言開發(fā)出的系統(tǒng)具有跨平臺(tái)運(yùn)行的特性。因?yàn)镴VM具有靈活的類加載器機(jī)制,可以讓在一個(gè)應(yīng)用程序中使用多個(gè)類加載器。只要在不同的平臺(tái)上裝上JVM,Java開發(fā)的程序就可以實(shí)現(xiàn)跨平臺(tái)運(yùn)行。而從學(xué)習(xí)的角度上來講,它是一種面向?qū)ο蠖_發(fā)的開發(fā)語(yǔ)言,可以把實(shí)際生活中的問題應(yīng)用到Java開發(fā)的邏輯中去,這樣可以大大方便學(xué)習(xí)Java的人的理解,從而使得Java相比于其他語(yǔ)言更容易上手。2.3ExtJSExtJS是一個(gè)流行的JavaScript框架,它為使用跨瀏覽器功能構(gòu)建Web應(yīng)用程序提供了豐富的UI。
ExtJS基本上用于創(chuàng)建桌面應(yīng)用程序它支持所有現(xiàn)代瀏覽器,如IE6+,F(xiàn)F,Chrome,safari6+等。而sencha,senchatouch的另一個(gè)產(chǎn)品用于移動(dòng)應(yīng)用程序。ExtJS的第一個(gè)版本是由JackSlocum在2006年開發(fā)的。它是一組實(shí)用程序類,它是YUI的擴(kuò)展。ExtJS基于MVC/MVVM架構(gòu)。
最新版本的ExtJS6是一個(gè)單一的平臺(tái),可以用于桌面和移動(dòng)應(yīng)用程序,而不需要為不同的平臺(tái)提供不同的代碼。2.4MVC結(jié)構(gòu)一開始的網(wǎng)頁(yè)開發(fā)人員并沒有注意代碼開發(fā)規(guī)范,代碼像磚塊一樣堆放在一個(gè)系統(tǒng)中,當(dāng)代碼的累積量越來越大后,對(duì)于那些堆砌磚塊的人來說就很難了。當(dāng)Web開發(fā)的范圍更廣時(shí),需要將頁(yè)面顯示與頁(yè)面控件分開,這就不是頁(yè)面技術(shù)所能解決的問題了。于是,Web開發(fā)出現(xiàn)了一種新技術(shù):MVC。它將整個(gè)Web應(yīng)用系統(tǒng)劃分為了四層。如下圖所示:MVC模式圖如下圖所示。2.5BOOTStrap框架BootStrap設(shè)計(jì)出響應(yīng)式頁(yè)面,由它設(shè)計(jì)頁(yè)面可以在手機(jī),計(jì)算機(jī)端都可以直接訪問。同時(shí)它又是一個(gè)開源的前端框架,主要應(yīng)用于頁(yè)面的布局,而且它是基于web組件開發(fā)的,使得Web開發(fā)更加快捷。2.6Eclipse開發(fā)環(huán)境Eclipse支持廣泛、兼容性高并且功能強(qiáng)大,是一個(gè)Eclipse插件集合,普遍適應(yīng)于JAVA和J2EE的系統(tǒng)開發(fā),支持JDBC,Mybatis,AJAX,Struts,JavaServlet,Spring,EJB3等市面上存在的幾乎所有數(shù)據(jù)庫(kù)鏈接工具和主流Eclipse產(chǎn)品開發(fā)工具。Eclipse在業(yè)內(nèi)是所熟知的開發(fā)工具,該平臺(tái)在開發(fā)的過程中運(yùn)用的就是該工具。Eclipse又被稱之為企業(yè)級(jí)的工作平臺(tái),它是以EclipseIDE為基礎(chǔ)的。Eclipse可以幫助我們進(jìn)行數(shù)據(jù)庫(kù)的研發(fā)和J2EE的使用,除此之外,還可以提高系統(tǒng)的運(yùn)營(yíng)能力,這突出表現(xiàn)在服務(wù)器的整合過程中。Eclipse的功能相當(dāng)完備,能夠?yàn)镴2EE的集成提供必要的環(huán)境支持,從而完成編碼、測(cè)試、調(diào)試及發(fā)布等功能。它可以支持JSP,HTML,SQL,Javascript,Struts,CSS等。2.7Tomcat服務(wù)器Tomcat屬于一種輕型的服務(wù)器,所以說在中小企業(yè)中并不具有普適性。但是當(dāng)程序員需要開發(fā)或調(diào)試JSP程序時(shí),則通常會(huì)將該服務(wù)器作為首選。對(duì)于一個(gè)僅具有計(jì)算機(jī)基礎(chǔ)知識(shí)的人來說,計(jì)算機(jī)系統(tǒng)具有一個(gè)好的Apache服務(wù)器,可以很好的對(duì)HTML頁(yè)面進(jìn)行訪問。Tomcat雖然是Apache的擴(kuò)展,但是它們都是可以獨(dú)立運(yùn)行的,二者是不互相干擾的。當(dāng)配置正確的時(shí)候,Apache服務(wù)器為HTML頁(yè)面的運(yùn)行提供技術(shù)支持,Tomcat的任務(wù)則是運(yùn)行Servle和JSP頁(yè)面。Tomca也具有一定的HTML頁(yè)面處理功能。Tomcat是一個(gè)中間件,在B/S架構(gòu)中,瀏覽器發(fā)出的http請(qǐng)求經(jīng)過tpmcat中間件,轉(zhuǎn)發(fā)到最終的目的服務(wù)器上,響應(yīng)消息再通過Tomcat返回給瀏覽器。Tomcat所做的事情主要有:開啟監(jiān)聽端口監(jiān)聽用戶的請(qǐng)求,解析用戶發(fā)來的http請(qǐng)求然后訪問到你指定的應(yīng)用系統(tǒng),然后你返回的頁(yè)面經(jīng)過Tomcat返回給用戶。2.8MySQL數(shù)據(jù)庫(kù)MySQL是一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng),它是由Oracle支持的開源軟件,是一個(gè)關(guān)系數(shù)據(jù)庫(kù)。與其他數(shù)據(jù)庫(kù)軟件(如Oracle數(shù)據(jù)庫(kù)或MicrosoftSQLServer)相比,MySQL非常容易學(xué)習(xí)和掌握。Mysql的語(yǔ)言是非結(jié)構(gòu)化的,用戶可以在數(shù)據(jù)上進(jìn)行工作,并且其語(yǔ)言簡(jiǎn)單,學(xué)習(xí)起來比較容易,其結(jié)構(gòu)也簡(jiǎn)單,功能強(qiáng)大,存儲(chǔ)信息量大,Mysql主要應(yīng)用于數(shù)據(jù)的查詢和編程,現(xiàn)在普遍存在的關(guān)系數(shù)據(jù)庫(kù)有很多,并得到了普遍的應(yīng)用。使用Mysql數(shù)據(jù)庫(kù)在編程過程中帶來了極大的方便,可以對(duì)數(shù)據(jù)進(jìn)行廣泛地查詢,Mysql數(shù)據(jù)庫(kù)的應(yīng)用并不需要用戶了解其存儲(chǔ)的方式,更不用掌握數(shù)據(jù)存放的方法,Mysql數(shù)據(jù)庫(kù)的靈活性較強(qiáng),功能也較強(qiáng)大,大多數(shù)情況下,在其他程序中實(shí)現(xiàn)某功能需要編寫一大堆代碼,而在Mysql數(shù)據(jù)庫(kù)中只需要一小段代碼就可以實(shí)現(xiàn)功能,所以,Mysql數(shù)據(jù)庫(kù)的語(yǔ)言較簡(jiǎn)潔。數(shù)據(jù)表的建立,可以對(duì)數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行調(diào)整,數(shù)據(jù)的重新組合及重新構(gòu)造,保證數(shù)據(jù)的安全性。介于數(shù)據(jù)庫(kù)的功能強(qiáng)大等特點(diǎn),本系統(tǒng)的開發(fā)主要應(yīng)用了Mysql進(jìn)行對(duì)數(shù)據(jù)的管理。2.9VUE框架
Vue(讀音/Vju:/,類似于View)是一套用于構(gòu)建用戶界面的漸進(jìn)式框架,與其他大型框架相比,Vue被設(shè)計(jì)為可以自底向上逐層應(yīng)用。其他大型框架往往一-開始就對(duì)項(xiàng)目的技術(shù)方案進(jìn)行強(qiáng)制性的要求,而Vue更加靈活,開發(fā)者既可以選擇使用Vue來開發(fā)一個(gè)全新項(xiàng)目,也可以將Vue引入到一個(gè)現(xiàn)有的項(xiàng)目中。系統(tǒng)分析3.1需求分析本信息管理系統(tǒng)主要是為了提高工作人員的工作效率和更方便快捷的滿足用戶,更好存儲(chǔ)所有數(shù)據(jù)信息及快速方便的檢索功能,對(duì)系統(tǒng)的各個(gè)模塊是通過許多今天的發(fā)達(dá)系統(tǒng)做出合理的分析來確定考慮用戶的可操作性,遵循開發(fā)的系統(tǒng)優(yōu)化的原則,經(jīng)過全面的調(diào)查和研究。主要是根據(jù)需求分析,該實(shí)驗(yàn)實(shí)現(xiàn)了瀏覽器和瀏覽器服務(wù)器的交互,瀏覽器能夠就行網(wǎng)頁(yè)瀏覽,在瀏覽器中需要地址欄對(duì)指定頁(yè)面進(jìn)行訪問,需要專門的按鈕進(jìn)行跳轉(zhuǎn),在前后瀏覽頁(yè)面之間要能夠進(jìn)行跳轉(zhuǎn),并且連接數(shù)據(jù)庫(kù)完成增刪改查的操作,開發(fā)這個(gè)網(wǎng)站可以正常實(shí)現(xiàn)連接Tomcat網(wǎng)絡(luò),能夠進(jìn)行網(wǎng)頁(yè)瀏覽,并且能夠查看頁(yè)面源代碼。頁(yè)面源代碼查看,前進(jìn),后退,主頁(yè),停止,刷新等功能。Tomcat服務(wù)器則實(shí)現(xiàn)了IP設(shè)置,根目錄設(shè)置,統(tǒng)計(jì)信息展示等。在操作不當(dāng)?shù)那闆r下有相應(yīng)的信息提示,錯(cuò)誤處理機(jī)制完備.系統(tǒng)各個(gè)模塊之間都有相應(yīng)錯(cuò)誤處理機(jī)制,功能模塊之前劃分比較細(xì)致,有利于發(fā)現(xiàn)問題后的及時(shí)解決,在做好完備的功能模塊詳細(xì)設(shè)計(jì)之后,系統(tǒng)的開發(fā)時(shí)間會(huì)大幅減少。根據(jù)系統(tǒng)所要實(shí)現(xiàn)的功能分析,對(duì)于現(xiàn)在網(wǎng)絡(luò)方便的管理,系統(tǒng)要實(shí)現(xiàn)用戶可以直接在平臺(tái)上進(jìn)行查看自己所有數(shù)據(jù)信息,根據(jù)自己的需求可以進(jìn)行信息的提交,這樣既能節(jié)省用戶的時(shí)間,不用在像傳統(tǒng)的方式,需要查詢、了解信息都需要去尋找相關(guān)負(fù)責(zé)人了解相關(guān)數(shù)據(jù)信息,耽誤時(shí)間,由于很多用戶的時(shí)間的原因,沒有辦法隨時(shí)隨地進(jìn)行相應(yīng)管理,真的很難去滿足用戶的各種需求。所以本信息管理系統(tǒng)的開發(fā)不僅僅是能滿足用戶的需求,還能提高管理員的工作效率,減少原有不必要的工作量。3.2系統(tǒng)可行性分析可行性分析又稱可行性研究,傳統(tǒng)的手工文件管理低效率和可憐的保密性等缺點(diǎn)。在可行性研究中,在開展經(jīng)濟(jì)活動(dòng)(投資)之前,雙方應(yīng)從經(jīng)濟(jì),技術(shù),生產(chǎn),供給到社會(huì)各種環(huán)境,法律等各種因素進(jìn)行具體調(diào)查,研究和分析,估算有利和不利因素,項(xiàng)目可否執(zhí)行,成功率高,經(jīng)濟(jì)效益和社會(huì)效益程度,作為決策人和主管機(jī)關(guān)審批的呈報(bào)文件。3.2.1技術(shù)可行性:技術(shù)背景技術(shù)可行性評(píng)價(jià)將系統(tǒng)與原系統(tǒng)和待開發(fā)系統(tǒng)的系統(tǒng)流程圖和數(shù)據(jù)流圖進(jìn)行比較,分析新系統(tǒng)的優(yōu)點(diǎn),評(píng)價(jià)新系統(tǒng)的可行性。主要是針對(duì)項(xiàng)目的實(shí)施所需求的技術(shù)的角度出發(fā),估算能否產(chǎn)出合理的設(shè)計(jì)技術(shù)方案來進(jìn)行實(shí)施。本系統(tǒng)嚴(yán)格遵循軟件開發(fā)流程,使用MVC模式,后端的數(shù)據(jù)庫(kù)采用MySQL,采用開源框架Struts、Spring、Mybatis進(jìn)行開發(fā),通過JDBC驅(qū)動(dòng)程序和數(shù)據(jù)庫(kù)進(jìn)行無縫連接,使用可以使應(yīng)用跨平臺(tái)的Web應(yīng)用技術(shù)JSP技術(shù)開發(fā),對(duì)計(jì)算機(jī)的硬件配置沒有太高要求.同時(shí)主要是用Java+JSP語(yǔ)言開發(fā)的,應(yīng)用了Jquery,Struts2,Spring,Mybatis等框架,采用了Mysql數(shù)據(jù)庫(kù)。對(duì)于熟悉Java或C++的人來說,都知道Java非常的容易學(xué)習(xí)和上手,而JSP的本質(zhì)其實(shí)上就是Servlet,是現(xiàn)在使用比較廣泛和成熟的Web開發(fā)方式。Jquery是JavaScript的框架,其中封裝了很多JS方法,使得JS對(duì)頁(yè)面的操作簡(jiǎn)化了很多。隨著Java技術(shù)多年來的不斷進(jìn)步,Struts2、Spring以及Mybatis這三大框架已經(jīng)能夠完美的整合起來,這為系統(tǒng)的開發(fā)提供了極大的方便。Mysql數(shù)據(jù)庫(kù)是一個(gè)輕量級(jí)的,數(shù)據(jù)庫(kù),它比Oracle數(shù)據(jù)庫(kù)的訪問更快速,同時(shí)能夠保證數(shù)據(jù)的安全,這對(duì)于本系統(tǒng)的開發(fā)用于數(shù)據(jù)存儲(chǔ)有很大的幫助。3.2.2經(jīng)濟(jì)可行性首先,從建立本系統(tǒng)方面的經(jīng)濟(jì)來分析,本系統(tǒng)的開發(fā)只需要一臺(tái)計(jì)算機(jī),得益于個(gè)人電腦的普及,現(xiàn)在幾乎所有人都擁有自己的筆記本電腦,所以在系統(tǒng)的開發(fā)階段所需要的成本要求是非常低的。對(duì)于系統(tǒng)的環(huán)境配置,在網(wǎng)絡(luò)上已經(jīng)可以找到相關(guān)的技術(shù)指導(dǎo)和分析。從經(jīng)濟(jì)的可行性上面來分析,要考慮到本系統(tǒng)開發(fā)出來后,它能帶來多大的經(jīng)濟(jì)效益,以及和它被開發(fā)出來的成本進(jìn)行比對(duì),現(xiàn)在隨著網(wǎng)絡(luò)上電子商務(wù)的不斷發(fā)展,已經(jīng)證實(shí)了這種新型的商務(wù)模式已經(jīng)取得了非??捎^的成果和收益,所以在經(jīng)濟(jì)上開發(fā)本系統(tǒng)是非??尚星液侠淼?。本系統(tǒng)可以運(yùn)行于現(xiàn)在市場(chǎng)上出售的各種個(gè)人電腦,系統(tǒng)成本主要集中在系統(tǒng)的開發(fā)上。所帶來的效益遠(yuǎn)遠(yuǎn)大于系統(tǒng)軟件的開發(fā)成本。在經(jīng)濟(jì)上是可行的。3.3項(xiàng)目設(shè)計(jì)目標(biāo)與原則1、關(guān)于本信息管理系統(tǒng)的基本要求(1)功能要求:用戶管理、信息管理、角色管理、個(gè)人信息管理等功能模塊。(2)性能:在不同操作系統(tǒng)上均能無差錯(cuò)實(shí)現(xiàn)在不同類型的用戶登入相應(yīng)界面后能不出差錯(cuò)、方便地進(jìn)行預(yù)期操作。(3)安全與保密要求:用戶都必須通過身份驗(yàn)證才能進(jìn)入系統(tǒng),并且用戶的權(quán)限也需要根據(jù)用戶的類型進(jìn)行限定。(4)環(huán)境要求:支持多種平臺(tái),可在Windows系列、Vista系統(tǒng)等多種操作系統(tǒng)下使用。2、開發(fā)目標(biāo)本信息管理系統(tǒng)的主要開發(fā)目標(biāo)如下:(1)實(shí)現(xiàn)管理系統(tǒng)信息關(guān)系的系統(tǒng)化、規(guī)范化和自動(dòng)化;(2)減少維護(hù)人員的工作量以及實(shí)現(xiàn)用戶對(duì)信息的控制和管理。(3)方便查詢信息及管理信息等;(4)通過網(wǎng)絡(luò)操作,改善處理問題的效率,提高人員利用率;(5)考慮到用戶多樣性特點(diǎn),要求界面簡(jiǎn)單,操作簡(jiǎn)便。3.4系統(tǒng)流程分析3.4.1操作流程管理員想進(jìn)入系統(tǒng),首先進(jìn)入系統(tǒng)登錄界面,通過正確的用戶名、密碼,用戶名和密碼輸入完成后,系統(tǒng)會(huì)檢查登錄信息,信息正確,然后輸入相應(yīng)的功能界面,提示信息錯(cuò)誤,登錄失敗。系統(tǒng)操作流程如圖3-1所示。圖3-1操作流程圖3.4.2添加信息流程添加信息,編號(hào)系統(tǒng)使用自動(dòng)編號(hào)模式,沒有用戶填寫,管理員添加信息輸入信息,系統(tǒng)將自動(dòng)確認(rèn)的信息和數(shù)據(jù),驗(yàn)證的成功是有效的信息添加到數(shù)據(jù)庫(kù),信息無效,重新輸入信息。添加信息流程如圖3-2所示。圖3-2添加信息流程圖3.4.3刪除信息流程管理員選擇要?jiǎng)h除的信息并單擊Delete按鈕,系統(tǒng)提示是否刪除信息。如果用戶想要?jiǎng)h除信息,系統(tǒng)將刪除信息。系統(tǒng)數(shù)據(jù)庫(kù)刪除信息。刪除信息流程圖如圖3-3所示。圖3-3刪除信息流程圖PAGE36系統(tǒng)設(shè)計(jì)在本章中,我們需要得出本系統(tǒng)具體的功能模塊設(shè)計(jì)以及數(shù)據(jù)庫(kù)的設(shè)計(jì)。功能模塊分析在第一部分?jǐn)⑹?,?shù)據(jù)庫(kù)分析在第二部部分詳細(xì)給出??傮w設(shè)計(jì)的目的是為系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)做準(zhǔn)備。4.1系統(tǒng)體系結(jié)構(gòu)架構(gòu)設(shè)計(jì)的目的是反映一個(gè)結(jié)構(gòu)和其他元素之間的關(guān)系,抽象,通常用于指導(dǎo)大型軟件系統(tǒng)。將一個(gè)巨大的任務(wù)細(xì)分為多個(gè)小任務(wù)的過程是系統(tǒng)架構(gòu)的總體設(shè)計(jì)。完成小任務(wù)后,整個(gè)任務(wù)就可以完成了。具體的實(shí)現(xiàn)過程是分解系統(tǒng),分析各部分的功能、接口和邏輯關(guān)系。頁(yè)面是一個(gè)一個(gè)模塊組建而成的,層次結(jié)構(gòu)分明,思想運(yùn)用的是面向?qū)ο螅粋€(gè)實(shí)體對(duì)應(yīng)一個(gè)數(shù)據(jù)類型,還要對(duì)每個(gè)數(shù)據(jù)類添加一個(gè)實(shí)施類。本信息管理系統(tǒng)的實(shí)現(xiàn)主要包括用戶和管理員兩個(gè)用戶角色,由于系統(tǒng)用戶角色不同所使用的功能模塊相應(yīng)不同,管理員根據(jù)需求對(duì)系統(tǒng)功能模塊進(jìn)行維護(hù)管理操作。4.2系統(tǒng)架構(gòu)設(shè)計(jì) 本系統(tǒng)架構(gòu)采用的是整體劃分為表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層三層體系的當(dāng)前較為常用的B/S三層架構(gòu)體系。
1)表示層 顯示層是系統(tǒng)和用戶的交互界面,系統(tǒng)以多個(gè)形式向顯示層提示功能,用戶通過顯示層的提示向系統(tǒng)發(fā)送請(qǐng)求,系統(tǒng)向顯示層提示響應(yīng)。層角色是獲取用戶請(qǐng)求并顯示系統(tǒng)響應(yīng)。位于三層中的最上層,用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作的界面。USL又分為“USL前臺(tái)代碼”和“USL后臺(tái)代碼”,其中“USL前臺(tái)代碼”是指用戶能直接訪問到的界面,一般是程序的外觀(如html文件、JSP文件等),類似于MVC模式中的“視圖”;“USL后臺(tái)代碼”是指用來調(diào)用業(yè)務(wù)邏輯層的JAVA代碼(如Servlet),類似于MVC模式中的“控制器”。表示層前臺(tái)代碼一般放在WebContent目錄下,而表示層后臺(tái)代碼目前放在servlet包下。2)業(yè)務(wù)邏輯層位于三層中的中間層(DAL與USL中間),起到了數(shù)據(jù)交換中承上啟下的作用,用于對(duì)業(yè)務(wù)邏輯的封裝。BLL的設(shè)計(jì)對(duì)于一個(gè)支持可擴(kuò)展的架構(gòu)尤為關(guān)鍵,因?yàn)樗缪萘藘蓚€(gè)不同的角色。對(duì)于DAL而言,它是調(diào)用者;對(duì)于USL而言,它是被調(diào)用者。依賴與被依賴的關(guān)系都糾結(jié)在BLL上。使用上,就是對(duì)DAL中的方法進(jìn)行“組裝”。比如,該層也可以實(shí)現(xiàn)對(duì)對(duì)象的增刪改查,但與DAL不同的是,BLL中的增、刪、改、查不再是“原子性”的功能,而是包含了一定的業(yè)務(wù)邏輯。比如該層中的“刪”不再像DAL中那樣僅僅實(shí)現(xiàn)“刪”,而是在“刪”之前要進(jìn)行業(yè)務(wù)邏輯的判斷:先查找該學(xué)生是否存在(即先執(zhí)行DAL層的“查”),如果存在才會(huì)真正地“刪”(再執(zhí)行DAL層的“刪”),如果該對(duì)象不存在則應(yīng)該提示錯(cuò)誤信息。即BLL中的“刪”,應(yīng)該是“帶邏輯的刪”(即先“查”后“刪”),也就是對(duì)DAL中的“查”和“刪”兩個(gè)方法進(jìn)行了“組裝”。在程序中,BLL一般寫在service包(或biz包)中,包里面的類名也是以“Service(或Biz)”結(jié)尾,如StudentService.java、DepartmentService.java、NewsService等。換句話說,在程序中,BLL是由service包中的多個(gè)“類名Service.java”組成。每個(gè)“類名Service.java”類,就包含著對(duì)該“類名”的對(duì)象的業(yè)務(wù)操作,如StudentService.java中包含對(duì)Student對(duì)象的“帶邏輯的刪”、“帶邏輯的增”等業(yè)務(wù)邏輯操作,DepartmentService.java中包含對(duì)所有Department對(duì)象的“帶邏輯的刪”、“帶邏輯的增”等業(yè)務(wù)邏輯操作。數(shù)據(jù)層數(shù)據(jù)層也稱為持久層,位于三層中的最下層,用于對(duì)數(shù)據(jù)進(jìn)行處理。該層中的方法一般都是“原子性”的,即每個(gè)方法都不可再分。比如,可以在DAL層中實(shí)現(xiàn)數(shù)據(jù)的增刪改查操作,而增、刪、改、查四個(gè)操作是非?;镜墓δ埽际遣荒茉俨鸱值?。系統(tǒng)功能模塊如下:資金管理資金管理訂單管理審核操作登錄客戶管理商品發(fā)布執(zhí)行請(qǐng)求管理平臺(tái)用戶4.2開發(fā)流程設(shè)計(jì)系統(tǒng)流程的分析是通過調(diào)查系統(tǒng)所涉及問題的識(shí)別、可行性可操作性、系統(tǒng)分析處理能力等具體環(huán)節(jié)來調(diào)節(jié)、整理系統(tǒng)的設(shè)計(jì)方案以確保系統(tǒng)能達(dá)到理想的狀態(tài)。這些操作都要進(jìn)行一系列的流程測(cè)試保證數(shù)據(jù)庫(kù)的完整,以把控系統(tǒng)所涉及信息管理的安全、保證信息輸入、輸出正常轉(zhuǎn)換。然后,通過實(shí)際操作完成流程圖的繪制工作。本信息管理系統(tǒng)的開發(fā)對(duì)管理模塊和系統(tǒng)使用的數(shù)據(jù)庫(kù)進(jìn)行分析,編寫代碼、系統(tǒng)測(cè)試,如圖4-2所示。圖4-2開發(fā)系統(tǒng)流程圖4.3數(shù)據(jù)庫(kù)設(shè)計(jì)原則學(xué)習(xí)編程,我們都知道數(shù)據(jù)庫(kù)設(shè)計(jì)是基于需要設(shè)計(jì)的系統(tǒng)功能,我們需要建立一個(gè)數(shù)據(jù)庫(kù)關(guān)系模型,用于存儲(chǔ)數(shù)據(jù)信息,這樣當(dāng)我們?cè)诔绦蛑袝r(shí),就沒有必要為程序頁(yè)面添加數(shù)據(jù),從而提高系統(tǒng)的效率。數(shù)據(jù)庫(kù)存儲(chǔ)了很多信息,可以說是信息管理系統(tǒng)的核心和基礎(chǔ),數(shù)據(jù)庫(kù)還提供了添加、刪除、修改和檢查,使系統(tǒng)能夠快速找到自己想要的信息,而不是在程序代碼中找到。數(shù)據(jù)庫(kù)中信息表的每個(gè)部分根據(jù)一定的關(guān)系精確地組合,排列和組合成數(shù)據(jù)表。4.4database的設(shè)計(jì)與分析在系統(tǒng)設(shè)計(jì)過程中,數(shù)據(jù)庫(kù)是一個(gè)非常重要的環(huán)節(jié),數(shù)據(jù)庫(kù)的設(shè)計(jì)關(guān)系到系統(tǒng)的穩(wěn)定性,因此必須對(duì)每個(gè)信息的管理進(jìn)行良好的設(shè)計(jì)。只有我們?cè)O(shè)計(jì)了才能出現(xiàn)優(yōu)良的數(shù)據(jù)庫(kù)設(shè)計(jì)才能提高我們系統(tǒng)的性能,提供更好的服務(wù)。否則就是糟糕的數(shù)據(jù)庫(kù)設(shè)計(jì)會(huì)出現(xiàn)很多問題,影響我們的工作效率,服務(wù)的效率和用戶的使用效率。數(shù)據(jù)庫(kù)設(shè)計(jì)就是根據(jù)業(yè)務(wù)系統(tǒng)的具體需求,結(jié)合我們所選用的數(shù)據(jù)庫(kù)系統(tǒng),為本系統(tǒng)設(shè)計(jì)出最為合適的數(shù)據(jù)存儲(chǔ)模型。并建立好數(shù)據(jù)庫(kù)中的表結(jié)構(gòu)及表與表之間的管理關(guān)系的過程。使之能有效的對(duì)應(yīng)用的數(shù)據(jù)進(jìn)行存儲(chǔ)并可以高效的對(duì)已經(jīng)存儲(chǔ)的數(shù)據(jù)進(jìn)行訪問。初版數(shù)據(jù)庫(kù)設(shè)計(jì)完成后,進(jìn)入項(xiàng)目開發(fā)階段,如果前期的需求的調(diào)查分析,業(yè)務(wù)的頭發(fā),沒關(guān)系,后期大量的數(shù)據(jù)庫(kù)結(jié)構(gòu)的變奏的情況經(jīng)常發(fā)生。需求經(jīng)常變化,意外地才是唯一的法則,作為設(shè)計(jì)師,前期的調(diào)查,掌握、分析、設(shè)計(jì)的過程中,再慎重,只能減少這種情況的風(fēng)險(xiǎn)的,可能無法完全避免。還開發(fā)了深,數(shù)據(jù)庫(kù)的結(jié)構(gòu)局部變動(dòng),例如增稅并密謀表的評(píng)論等也成為了重新恢復(fù)正常。針對(duì)這些,也應(yīng)該有相應(yīng)的對(duì)策,才能在萬應(yīng)改變。MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由Oracle公司開發(fā)、發(fā)布和支持。關(guān)系數(shù)據(jù)庫(kù)是安排數(shù)據(jù)使用關(guān)系模型,使用集代數(shù)數(shù)學(xué)概念和方法,如數(shù)據(jù)庫(kù)的處理數(shù)據(jù)。關(guān)系數(shù)據(jù)庫(kù)現(xiàn)實(shí)世界中不同實(shí)體和實(shí)體之間的關(guān)系表示為一個(gè)關(guān)系模型。DBMS的主要包括兩個(gè)功能:數(shù)據(jù)定義功能:DBMS提供DDL(數(shù)據(jù)定義語(yǔ)言)定義數(shù)據(jù)庫(kù)的三級(jí)結(jié)構(gòu),兩級(jí)映像,定義數(shù)據(jù)的完整性約束,保密限制等約束。因此,在DBMS中應(yīng)該包含DDL的編譯程序。數(shù)據(jù)操縱功能:DBMS提供DML(數(shù)據(jù)操作語(yǔ)言)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作,基本的操作有兩類:檢索(查詢)和更新(插入、刪除、更新)。因此,在DBMS中應(yīng)該包含DML的編譯程序或解釋程序。數(shù)據(jù)庫(kù)的運(yùn)行管理和維護(hù)等,如數(shù)據(jù)的安全、完整性、并發(fā)和恢復(fù)等控制自數(shù)據(jù)庫(kù)從誕生以來,大致經(jīng)歷了以下幾個(gè)階段:1.層次數(shù)據(jù)庫(kù)和網(wǎng)狀數(shù)據(jù)庫(kù)的過程。2.關(guān)系數(shù)據(jù)庫(kù)。3.非關(guān)系型數(shù)據(jù)庫(kù)。目前,非關(guān)系型數(shù)據(jù)庫(kù)正在蓬勃的發(fā)展中,比如MongoDB、Redis、BigTable等非關(guān)系型數(shù)據(jù)庫(kù)已經(jīng)被很多領(lǐng)域廣泛的應(yīng)用。關(guān)系數(shù)據(jù)庫(kù)仍然是Web開發(fā)的主流數(shù)據(jù)庫(kù)。使用最常用的開源資源版本數(shù)據(jù)庫(kù)MySQL作為我的應(yīng)用中使用的數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)結(jié)構(gòu)圖如下所示:第5章系統(tǒng)實(shí)現(xiàn)各模塊具體實(shí)現(xiàn)用戶注冊(cè):在選擇登錄類型和登錄方式之前,必須考慮登錄和登錄設(shè)計(jì)中的因素這是怎么回事在產(chǎn)品設(shè)計(jì)過程中,如何設(shè)計(jì)注冊(cè)登錄流程,如何選擇注冊(cè)登錄類型,是我們首先要考慮的問題。功能設(shè)計(jì)如圖5-1-1所示。開始開始注冊(cè)驗(yàn)證數(shù)據(jù)是否符合標(biāo)準(zhǔn)否注冊(cè)成功符合5-1-1注冊(cè)流程設(shè)計(jì)圖代碼實(shí)現(xiàn): /*判斷是否注冊(cè)新用戶需要審批*/ HashMap<String,Object>where=newHashMap<String,Object>(); Listlist=IbatisUtil.queryForList(sqlMap,request,response,where,"SystemManage.selectSettingList"); if(list!=null&&list.size()==1){ StringisApprove=((HashMap)(list.get(0))).get("isApprove").toString(); if(isApprove.equals("0")){ whereMap.put("status",1); }elseif(isApprove.equals("1")){ whereMap.put("status",0); } }else{ whereMap.put("status",1); }用戶登錄:當(dāng)用戶內(nèi)容輸入正確后,客戶端會(huì)將用戶所輸入的內(nèi)容傳給數(shù)據(jù)庫(kù)作比較,如果在數(shù)據(jù)庫(kù)中能找到賬號(hào)和密碼與傳入信息相同,則通過登錄,相反則登陸失敗無法通過。如圖5-1-2所示。開始開始 登錄驗(yàn)證數(shù)據(jù)是否符合標(biāo)準(zhǔn)否登錄成功符合信息發(fā)布信息發(fā)布審核格式是否合格NY交管理員審核N發(fā)布成功Y審核是否通過5-1-2登錄流程設(shè)計(jì)圖代碼實(shí)現(xiàn): whereMap.put("userAcctEqual",userAcct); whereMap.put("userPassEqual",SimlpleCryp.encodeString(SimlpleCryp.desKey,userPass)); whereMap.put("deleteFlagHidden","0"); whereMap.put("statusSearch","1"); Listselect_user_acct=sqlMap.queryForList("SystemManage.selectSysMemberList",whereMap); if(select_user_acct!=null&&select_user_acct.size()==1){ 登錄權(quán)限判斷: list=sqlMap.queryForList("UserManage.select_all_menu",where); for(inti=0;i<list.size();i++){ HashMapinnerMap=((HashMap)(list.get(i))); Stringleaf_count=innerMap.get("leaf_count").toString(); Stringmenu_id=innerMap.get("id").toString(); Stringis_default=innerMap.get("is_default").toString(); if(leaf_count!=null&&!leaf_count.equals("0")){ innerMap.put("leaf",false); }else{ innerMap.put("leaf",true); } innerMap.put("draggable",false); //角色已授權(quán)菜單 if(roleID!=null&&!roleID.equals("")){ where.put("roleID",roleID); where.put("menu_id",menu_id); ObjectmeunAuth=sqlMap.queryForObject("UserManage.select_role_menu_auth",where); innerMap.put("checked",(Integer.parseInt(meunAuth.toString())>0)?true:false); } }信息發(fā)布:前臺(tái)信息模塊包括網(wǎng)站上各欄目標(biāo)題列表的顯示、各欄目信息列表的顯示和信息查詢。發(fā)布新的信息需要通過管理員的審核,若審核通過則顯示發(fā)布成功,相反則顯示發(fā)布失敗。如圖5-1-3所示。開始開始信息發(fā)布管理員驗(yàn)證信息是否符合標(biāo)準(zhǔn)否發(fā)布成功符合第6章系統(tǒng)測(cè)試6.1系統(tǒng)測(cè)試的目的程序設(shè)計(jì)不能保證沒有錯(cuò)誤,這是一個(gè)開發(fā)過程,在程序運(yùn)行的過程中是不可避免的,但我們不能使這些錯(cuò)誤始終存在于系統(tǒng)中,錯(cuò)誤可能會(huì)造成無法估量的后果,如系統(tǒng)崩潰,安全信息,系統(tǒng)無法正常啟動(dòng)等,為了避免這些問題,我們需要測(cè)試程序,并發(fā)現(xiàn)這些問題,并糾正它們,并使系統(tǒng)更長(zhǎng)時(shí)間穩(wěn)定成熟,本章的作用是發(fā)現(xiàn)這些問題,并對(duì)其進(jìn)行修改,雖然耗時(shí)費(fèi)力,但長(zhǎng)期非常重要和必要系統(tǒng)的開發(fā)。軟件在設(shè)計(jì)后必須進(jìn)行測(cè)試,調(diào)試過程中使用的方法是軟件測(cè)試方法。在開發(fā)新軟件時(shí),系統(tǒng)測(cè)試是檢查軟件是否合格的關(guān)鍵步驟,以及是否符合設(shè)計(jì)目標(biāo)的參考。測(cè)試主要是查看軟件中數(shù)據(jù)的準(zhǔn)確性,正確的操作與否,以及操作的結(jié)果,還有哪些方面需要改進(jìn)。本信息管理系統(tǒng)的實(shí)現(xiàn),對(duì)于系統(tǒng)中功能模塊的實(shí)現(xiàn)及操作都必須通過測(cè)試進(jìn)行來評(píng)判系統(tǒng)是否可以準(zhǔn)確的實(shí)現(xiàn)。在系統(tǒng)正式上傳和使用之前必須做的一步就是系統(tǒng)測(cè)試,對(duì)于測(cè)試發(fā)現(xiàn)的錯(cuò)誤及時(shí)修改處理,保證系統(tǒng)準(zhǔn)確無誤的供給用戶使用。6.2系統(tǒng)測(cè)試方法在對(duì)系統(tǒng)進(jìn)行測(cè)試的時(shí)候在找到問題的情況下必須在第一時(shí)間找到解決問題的辦法,不要存在僥幸的心理,這樣才能讓系統(tǒng)開發(fā)的質(zhì)量有所保證,并且開發(fā)的周期會(huì)大大縮短;還有就是在測(cè)試時(shí),不要出現(xiàn)重復(fù)性的錯(cuò)誤,遇到一個(gè)錯(cuò)誤問題,要將整個(gè)系統(tǒng)開發(fā)所牽扯的該問題都必須一一解決,提高系統(tǒng)的安全性、穩(wěn)定性。測(cè)試任何程序都可以經(jīng)過以下兩種方法來檢測(cè):黑盒測(cè)試和白盒測(cè)試法。首先從簡(jiǎn)單的開始,黑盒測(cè)試不要求考慮程序的內(nèi)部邏輯和數(shù)據(jù)處理,不要求測(cè)試人員遍歷代碼閱讀程序,只需要明確輸入輸出規(guī)則,確保系統(tǒng)或模塊實(shí)現(xiàn)了業(yè)務(wù)需求。(1)建議在對(duì)穩(wěn)定運(yùn)行的大中型系統(tǒng)進(jìn)行小規(guī)模的功能優(yōu)化或改造過程中使用黑盒測(cè)試方法,只需要明確當(dāng)前項(xiàng)目的改造點(diǎn),確認(rèn)與已有功能的關(guān)聯(lián)性和影響,針對(duì)項(xiàng)目改造范圍進(jìn)行測(cè)試,非特殊情況無需了解系統(tǒng)或模塊的全部處理邏輯。(2)建議復(fù)雜度和重要性較低的系統(tǒng),在時(shí)間精力有限的情況下優(yōu)先選用黑盒測(cè)試方法進(jìn)行測(cè)試。測(cè)試人員首先明確業(yè)務(wù)需求,使用等價(jià)類劃分和邊界值分析方法完成測(cè)試案例設(shè)計(jì),適當(dāng)結(jié)合程序特征、個(gè)人經(jīng)驗(yàn)以及冒煙測(cè)試情況等對(duì)測(cè)試案例進(jìn)行修訂補(bǔ)充,在系統(tǒng)無重大問題或異常的情況下,一般黑盒測(cè)試即可滿足該類系統(tǒng)測(cè)試要求。(3)建議適當(dāng)考量測(cè)試人員或測(cè)試團(tuán)隊(duì)專業(yè)技術(shù)能力以及測(cè)試階段,如在系統(tǒng)功能測(cè)試已經(jīng)完成的前提下,業(yè)務(wù)方執(zhí)行的業(yè)務(wù)驗(yàn)收測(cè)試可以使用黑盒測(cè)試方法,降低了團(tuán)隊(duì)組建成本和測(cè)試成本,無需要求業(yè)務(wù)人員對(duì)代碼和軟件邏輯進(jìn)行充分學(xué)習(xí)和掌握。白盒測(cè)試技術(shù)是根據(jù)被測(cè)對(duì)象的結(jié)構(gòu)系統(tǒng)化設(shè)計(jì)測(cè)試用例的一種方法,關(guān)注軟件產(chǎn)品的內(nèi)部細(xì)節(jié)和邏輯結(jié)構(gòu)。(1)一般單元測(cè)試及集成測(cè)試需要使用白盒測(cè)試方法,包括代碼檢查法、靜態(tài)結(jié)構(gòu)分析法等,相關(guān)測(cè)試多由開發(fā)人員完成,具體視項(xiàng)目團(tuán)隊(duì)分工而定。(2)建議針對(duì)新建系統(tǒng)或已有系統(tǒng)新增重要模塊時(shí)使用白盒測(cè)試方法,例如邏輯覆蓋或基本路徑測(cè)試法,尤其推薦在有較多校驗(yàn)關(guān)系且校驗(yàn)關(guān)系間存在嵌套時(shí)使用,使用時(shí)一般可參考程序代碼、詳細(xì)設(shè)計(jì)說明書、程序控制流圖等相關(guān)資料,幫助減少測(cè)試人員的分析工作量等。(3)建議對(duì)重點(diǎn)系統(tǒng)進(jìn)行架構(gòu)優(yōu)化、對(duì)公共函數(shù)或程序進(jìn)行改造、對(duì)后臺(tái)或接口內(nèi)容進(jìn)行調(diào)整時(shí)選用白盒測(cè)試方法,一方面關(guān)注優(yōu)化改造后對(duì)原有程序的改動(dòng)大小,一方面關(guān)注調(diào)用方或消費(fèi)方是否受影響,新版本程序或系統(tǒng)對(duì)舊版本的兼容性,避免關(guān)聯(lián)系統(tǒng)由于改造時(shí)測(cè)試不充分受到影響。(4)建議關(guān)注測(cè)試中的集群現(xiàn)象,對(duì)于缺陷或問題集中的功能和模塊建議及時(shí)由黑盒測(cè)試方法改為白盒測(cè)試,在缺陷管理過程中及時(shí)進(jìn)行小范圍的測(cè)試方法調(diào)整,同時(shí)保證測(cè)試效率和測(cè)試充分性。從市場(chǎng)調(diào)查開始到用戶手中,好的產(chǎn)品必須經(jīng)過各個(gè)團(tuán)隊(duì)的努力(否則就沒有設(shè)立的意義),而且對(duì)產(chǎn)品的要求越高,各個(gè)團(tuán)隊(duì)的重要性就越高。關(guān)于產(chǎn)品的質(zhì)量,有的人設(shè)計(jì)出好的產(chǎn)品,有的測(cè)試者測(cè)量出好的產(chǎn)品,全面完備高效的測(cè)試保證了產(chǎn)品的質(zhì)量,可以提高產(chǎn)品的市場(chǎng)競(jìng)爭(zhēng)力。當(dāng)然,質(zhì)量好的產(chǎn)品不僅與測(cè)試有關(guān),而且與系統(tǒng)的構(gòu)筑,研發(fā)支持,生產(chǎn)銷售后等也有密切的關(guān)系。認(rèn)識(shí)測(cè)試的重要性,了解測(cè)試本身是科學(xué)的(實(shí)際上很多大學(xué)都有測(cè)試專業(yè)),通過將測(cè)試放在與研發(fā)同等的重要位置,公司可以明確認(rèn)識(shí)到自己產(chǎn)品的位置和改進(jìn)目標(biāo)。軟件的測(cè)試是非常重要的,因?yàn)檐浖e(cuò)誤的代價(jià)可能很昂貴或很危險(xiǎn)。一個(gè)bug存在的時(shí)間越長(zhǎng)越不會(huì)被發(fā)現(xiàn),潛在的風(fēng)險(xiǎn)就越大。此外,如果您無法準(zhǔn)確了解或確定風(fēng)險(xiǎn)和軟件問題,而發(fā)生了任何故障,則會(huì)增加檢測(cè)錯(cuò)誤的成本,并且可能會(huì)因軟件漏洞或錯(cuò)誤而造成財(cái)務(wù)和人員損失,這在軟件編碼的歷史上非常多的例子可以印證的慘痛教訓(xùn)。6.3測(cè)試步驟本系統(tǒng)的主要在本地的Tomcat服務(wù)器上進(jìn)行軟件bug調(diào)試以及軟件的運(yùn)行,對(duì)于本系統(tǒng)開發(fā)過程是本人獨(dú)立設(shè)計(jì)完成,所以對(duì)于該系統(tǒng)的結(jié)構(gòu)以計(jì)算法十分了解,各個(gè)模塊之間的調(diào)用以及之間的配合關(guān)系有著充分的了解,所以本次的軟件測(cè)試采用了白盒測(cè)試的方法進(jìn)行軟件測(cè)試。在這個(gè)軟件測(cè)試的過程中分為多個(gè)階段來測(cè)試,每個(gè)階段的都要進(jìn)行不同方面的相關(guān)的測(cè)試,比如說用戶登錄是否成功共,ssm框架配置文件是否完整成功,在這些測(cè)試要多測(cè)幾次盡量多的查找出軟件的bug以及各方面的問題,以方便日后該系統(tǒng)的維護(hù)以及日常的更新,盡量減輕用戶的煩惱增強(qiáng)該系統(tǒng)的日常體驗(yàn),在軟件的各個(gè)方面的運(yùn)行以及各模塊之間的配合進(jìn)行多次測(cè)試。通過多次的測(cè)試之后將找的軟件缺陷以及軟件存在的bug問題解決掉,一直到一個(gè)一階段的測(cè)試完美通過之后,繼續(xù)進(jìn)行下一個(gè)階段的測(cè)試,將每個(gè)階段遇到的問題全都解決之后,一直到系統(tǒng)完美運(yùn)行,提升各個(gè)用戶的體驗(yàn)感。6.4系統(tǒng)管理系統(tǒng)測(cè)試在本系統(tǒng)的管理端集成許多模塊的管理功能,個(gè)模塊之間通過注解的方式進(jìn)行配合管理,該模塊的測(cè)試主要是了為了測(cè)試管理員是否可以管理各個(gè)模塊,并且各個(gè)模塊之間是否可以合理的配合以及反饋結(jié)果是否正確,如果開發(fā)人員在進(jìn)行測(cè)試遇到問題,一定要及時(shí)解決處理免得之后的使用時(shí),管理人員遇到問題無法解決,當(dāng)通過多次測(cè)試之后,如果管理員管理系統(tǒng)沒有其他問題時(shí),便可進(jìn)入下一個(gè)階段的測(cè)試。6.5系統(tǒng)的各個(gè)的模塊測(cè)試在本系統(tǒng)的設(shè)計(jì)開發(fā)工程中,每個(gè)模塊的一系列代碼都是一次性按流程完成的,每個(gè)模塊之間的聯(lián)系通過注解的方式來完成各個(gè)功能關(guān)系間的調(diào)用,從而降低該軟件系統(tǒng)之間的耦合度,在測(cè)試該系統(tǒng)各個(gè)模塊時(shí)盡量全面的進(jìn)行該模塊的測(cè)試,查找出所有可能出現(xiàn)的未知,如果檢測(cè)出問題時(shí)一定要盡可能短的時(shí)間解決掉該問題的缺陷,當(dāng)多次測(cè)試都通過之后開發(fā)人員便可以進(jìn)行下一個(gè)模塊的測(cè)試。為了保證程序測(cè)試的效果質(zhì)量,將進(jìn)行以下階段的測(cè)試,測(cè)試要經(jīng)過以下幾個(gè)步奏。6.5.1.單元測(cè)試用于測(cè)試單個(gè)代碼組件,并確保代碼按預(yù)期工作。單元測(cè)試由開發(fā)人員編寫和執(zhí)行。在大多數(shù)情況下,使用JUnit或TestNG這樣的測(cè)試框架。測(cè)試用例通常在方法級(jí)別編寫并自動(dòng)執(zhí)行。6.5.2.功能測(cè)試
通過將給定輸入的輸出與規(guī)范進(jìn)行比較,檢查每個(gè)函數(shù)是否正確實(shí)現(xiàn)。一般來說,這不是由程序開發(fā)人員來執(zhí)行的,功能測(cè)試一般是由單獨(dú)的測(cè)試團(tuán)隊(duì)來執(zhí)行。將測(cè)試出來的實(shí)際結(jié)果與計(jì)劃預(yù)期中的結(jié)果進(jìn)行比較。6.5.3.集成測(cè)試檢查整個(gè)系統(tǒng)是否正常工作。集成測(cè)試由開發(fā)人員完成,但設(shè)計(jì)為測(cè)試整個(gè)組件,而不是測(cè)試單個(gè)組件。系統(tǒng)由許多不同的組件組成,如代碼,數(shù)據(jù)庫(kù)和Web服務(wù)器。集成測(cè)試可檢測(cè)組件布線,網(wǎng)絡(luò)訪問和數(shù)據(jù)庫(kù)問題。6.5.4.回歸測(cè)試 當(dāng)系統(tǒng)中出現(xiàn)復(fù)雜的bug時(shí),通常會(huì)影響系統(tǒng)的核心區(qū)域,所以使用回歸測(cè)試來重新測(cè)試系統(tǒng)的所有模塊。經(jīng)過如上這幾樣測(cè)試過程對(duì)軟件進(jìn)行各項(xiàng)的測(cè)試后,則宣布測(cè)試結(jié)果合格。6.6功能測(cè)試登錄測(cè)試:模塊名稱測(cè)試用例預(yù)期結(jié)果實(shí)際結(jié)果是否通過登錄模塊用戶名:admin密碼:123彈出錯(cuò)誤提示,提示密碼錯(cuò)誤彈出錯(cuò)誤提示,提示密碼錯(cuò)誤通過登錄模塊用戶名:123密碼:admin彈出錯(cuò)誤提示,提示用戶名錯(cuò)誤彈出錯(cuò)誤提示,提示用戶名錯(cuò)誤通過登錄模塊用戶名:admin密碼:admin管理員登錄成功管理員登錄成功通過刪除分類測(cè)試:模塊名稱測(cè)試用例預(yù)期結(jié)果實(shí)際結(jié)果是否通過刪除分類模塊分類名:最新通知?jiǎng)h除成功、頁(yè)面自動(dòng)跳轉(zhuǎn)刪除成功、頁(yè)面自動(dòng)跳轉(zhuǎn)通過修改密碼測(cè)試:模塊名稱測(cè)試用例預(yù)期結(jié)果實(shí)際結(jié)果是否通過修改密碼模塊原密碼:666新密碼:123確認(rèn)密碼:123彈出錯(cuò)誤提示,提示原密碼錯(cuò)誤彈出錯(cuò)誤提示,提示原密碼錯(cuò)誤通過修改密碼模塊原密碼:admin新密碼:123確認(rèn)密碼:333彈出錯(cuò)誤提示,提示確認(rèn)密碼不一致彈出錯(cuò)誤提示,提示確認(rèn)密碼不一致通過修改密碼模塊原密碼:admin新密碼:123確認(rèn)密碼:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電力分包技術(shù)服務(wù)合同
- 文化創(chuàng)意行業(yè)作品征集表格
- 《物質(zhì)的基本屬性與狀態(tài):九年級(jí)科學(xué)物理教案》
- 湖北省孝感市漢川市2024-2025學(xué)年七年級(jí)上學(xué)期期末生物學(xué)試題(含答案)
- 年度團(tuán)建活動(dòng)設(shè)計(jì)與執(zhí)行方案
- 自動(dòng)售貨機(jī)銷售合同協(xié)議
- 公司內(nèi)部事務(wù)處理指南
- 城市地鐵線路建設(shè)與運(yùn)營(yíng)合同
- 企業(yè)與政府合作的環(huán)保協(xié)議
- 煤炭國(guó)際貿(mào)易合同
- 人工智能融入土木水利碩士人才培養(yǎng)模式研究
- 人工智能賦能新質(zhì)生產(chǎn)力發(fā)展:現(xiàn)狀解析與未來展望
- 2024版非ST段抬高型急性冠脈綜合征診斷和治療指南解讀
- 2021年安徽省中考數(shù)學(xué)試卷-普通卷
- 2024年河南省鄭州市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 萬用表使用方法
- 民事訴訟法-教學(xué)課件
- 銀行網(wǎng)點(diǎn)裝修工程施工組織設(shè)計(jì)方案
- 《服裝零售管理實(shí)習(xí)》課程教學(xué)大綱
- 【MOOC】跨文化交際入門-華中師范大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 綠色金融與ESG分析
評(píng)論
0/150
提交評(píng)論