基于大數(shù)據(jù)的物料倉(cāng)儲(chǔ)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
基于大數(shù)據(jù)的物料倉(cāng)儲(chǔ)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
基于大數(shù)據(jù)的物料倉(cāng)儲(chǔ)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
基于大數(shù)據(jù)的物料倉(cāng)儲(chǔ)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
基于大數(shù)據(jù)的物料倉(cāng)儲(chǔ)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩37頁(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.1系統(tǒng)的開(kāi)發(fā)背景及意義當(dāng)前,隨著信息技術(shù)的不斷發(fā)展和進(jìn)步,互聯(lián)網(wǎng)也越來(lái)越成為人們生活和生產(chǎn)工作中不可缺少的一部分。通過(guò)網(wǎng)絡(luò)技術(shù),人們之間高效的進(jìn)行溝通、團(tuán)隊(duì)協(xié)同工作和內(nèi)容共享都非常簡(jiǎn)捷。網(wǎng)絡(luò)信息應(yīng)用服務(wù)已日益廣泛地被應(yīng)用于經(jīng)濟(jì)各個(gè)領(lǐng)域。在此市場(chǎng)背景推動(dòng)下,電子商務(wù)概念應(yīng)運(yùn)而生,并因此迅速地被發(fā)展成熟起來(lái)。近年來(lái),隨著人們生活水平的提高,以及互聯(lián)網(wǎng)公司的飛速發(fā)展。在線支付和在線購(gòu)物逐漸成為主流,隨之而來(lái)的就是數(shù)量龐大的貨物,并且由于新冠病毒的影響,也加劇了這一趨勢(shì)。但是隨著貨物的增加,傳統(tǒng)的倉(cāng)儲(chǔ)管理方式無(wú)法滿足這種每天數(shù)以千計(jì)的貨物,所以需要計(jì)算機(jī)的輔助進(jìn)行相關(guān)管理。傳統(tǒng)的倉(cāng)儲(chǔ)管理一般要經(jīng)過(guò)入庫(kù)登記、人工揀貨、出庫(kù)登記等操作。隨著貨物的不斷增加以及出入庫(kù)的次數(shù)不斷增加,采用人工的方式登記非常繁瑣且非常容易出錯(cuò)。并且采用紙質(zhì)的登記也存在著一個(gè)非常大的隱患,紙質(zhì)登記表不但占空間且隨著時(shí)間的推移紙質(zhì)可能會(huì)存在一定的損傷,如果未來(lái)客戶想要查詢某天的貨單,可能存在丟失或者破損的情況。因此,使用計(jì)算機(jī)的倉(cāng)儲(chǔ)管理系統(tǒng)的優(yōu)勢(shì)就凸顯了出來(lái),不僅不需要考慮紙質(zhì)存檔的丟失,而且便于工作人員操作,提升出入庫(kù)的效率,每次操作記錄都會(huì)存儲(chǔ)在數(shù)據(jù)庫(kù)中,便于未來(lái)客戶查詢,降低了貨單丟失的風(fēng)險(xiǎn),還可以避免貨物丟失的風(fēng)險(xiǎn)。每次出入庫(kù)的操作都會(huì)被記錄下來(lái),防止篡改記錄偷取貨物。倉(cāng)儲(chǔ)管理系統(tǒng)的出現(xiàn)極大的簡(jiǎn)化了傳統(tǒng)紙質(zhì)的成本,并且提升了工作效率,即使貨物再多,工作人員也能快速的處理[1-5]。物聯(lián)網(wǎng)的出現(xiàn),使得我們需要處理的數(shù)據(jù)是海量的,海量的數(shù)據(jù)成為上G甚至于T級(jí)別的數(shù)據(jù),單獨(dú)的計(jì)算機(jī)的資源總是有限的,對(duì)于如此龐大的數(shù)據(jù)量,單獨(dú)的計(jì)算機(jī)很難進(jìn)行處理,傳統(tǒng)的計(jì)算方法已經(jīng)不能滿足在速度和性能上的需求。在這種情況下,分布式系統(tǒng)和并行計(jì)算應(yīng)運(yùn)而生,分布式的系統(tǒng)可以通過(guò)加入多臺(tái)計(jì)算機(jī),從而提高系統(tǒng)的總資源,以滿足在資源上的需求,同時(shí),在分布式系統(tǒng)上進(jìn)行計(jì)算,在不同的機(jī)器上同時(shí)運(yùn)行同一個(gè)任務(wù),從而提高系統(tǒng)的運(yùn)算性能。本文設(shè)計(jì)開(kāi)發(fā)了一個(gè)基于SSM框架的Hadoop倉(cāng)儲(chǔ)管理系統(tǒng),以解決當(dāng)前以在線購(gòu)物為主流的情況下,產(chǎn)生的大量貨物,大量數(shù)據(jù)難以管理問(wèn)題。本文主要實(shí)現(xiàn)了庫(kù)存管理,出入庫(kù)管理,人員管理,基礎(chǔ)數(shù)據(jù)管理,系統(tǒng)維護(hù)等功能。1.2國(guó)內(nèi)外研究現(xiàn)狀1.國(guó)內(nèi)研究現(xiàn)狀近年來(lái),我國(guó)的制造業(yè)、零售業(yè)以及物流行業(yè)都得到了長(zhǎng)足的發(fā)展,并且隨著人們生活質(zhì)量的提高,對(duì)貨物的要求也不斷增加。網(wǎng)上購(gòu)物逐漸成為主流,貨物越來(lái)越多,導(dǎo)致存放物料的倉(cāng)儲(chǔ)設(shè)備也就隨之增加,但是這也暴露出很多問(wèn)題。各個(gè)部門都在建立自己的倉(cāng)儲(chǔ),這導(dǎo)致倉(cāng)儲(chǔ)數(shù)量多且分布廣泛,布局十分不合理,這使得工作人員管理起來(lái)十分困難,倉(cāng)儲(chǔ)的自動(dòng)化程度很低,無(wú)法高效的完成工作。大數(shù)據(jù)物料倉(cāng)儲(chǔ)管理系統(tǒng)的出現(xiàn)不僅可以讓對(duì)倉(cāng)儲(chǔ)的管理更加精細(xì)化,同時(shí)也能解決調(diào)控的問(wèn)題。這些年倉(cāng)儲(chǔ)管理系統(tǒng)的研究主要關(guān)注的是如何節(jié)省人力資源,更便捷的進(jìn)行倉(cāng)儲(chǔ)的管理,從最開(kāi)始的桌面應(yīng)用到現(xiàn)在的基于SSM框架的聯(lián)網(wǎng)倉(cāng)儲(chǔ)管理,倉(cāng)儲(chǔ)管理系統(tǒng)已經(jīng)逐步的成為企業(yè)不可缺少的一部分[6-7]。2.國(guó)外研究現(xiàn)狀在外國(guó),倉(cāng)儲(chǔ)物料管理和在線服務(wù)形式已是開(kāi)展得的時(shí)間都已經(jīng)比較之早,隨著現(xiàn)代電子商務(wù)及物流網(wǎng)絡(luò)的快速發(fā)展普及,現(xiàn)代電子商務(wù)中網(wǎng)上訂單式交易也越發(fā)普及,這種倉(cāng)儲(chǔ)管理模式隨著社會(huì)的進(jìn)步也越發(fā)成熟。相比于國(guó)內(nèi)的管理,國(guó)外針對(duì)倉(cāng)儲(chǔ)的管理已經(jīng)相對(duì)來(lái)說(shuō)非常成熟了,如日本,美國(guó)等。在日本,日本的企業(yè)廣泛的應(yīng)用倉(cāng)儲(chǔ)管理系統(tǒng)對(duì)零售庫(kù)存進(jìn)行管理,而在美國(guó),美國(guó)的企業(yè)在1980年就已經(jīng)開(kāi)始了解并研究倉(cāng)儲(chǔ)管理的相關(guān)理論知識(shí),同時(shí)開(kāi)發(fā)出了配套的管理軟件。進(jìn)過(guò)幾十年的發(fā)展,國(guó)外的國(guó)家已經(jīng)有了非常成熟的倉(cāng)儲(chǔ)管理系統(tǒng)的設(shè)計(jì)團(tuán)隊(duì),供應(yīng)團(tuán)隊(duì)以及維護(hù)團(tuán)隊(duì),并且這一領(lǐng)域已經(jīng)逐步成為一個(gè)行業(yè)。1.3主要內(nèi)容及結(jié)構(gòu)緒論介紹研究了倉(cāng)儲(chǔ)物料管理系統(tǒng)開(kāi)發(fā)的整體研究及背景,分析評(píng)價(jià)了開(kāi)展該服務(wù)系統(tǒng)研發(fā)的整體研究工作意義何在和巨大發(fā)展空間潛力,并分別通過(guò)實(shí)證分析相關(guān)結(jié)果最終確定開(kāi)展了哪些主要系統(tǒng)的開(kāi)發(fā)研究及內(nèi)容選擇和應(yīng)用開(kāi)發(fā)工作,最后進(jìn)行了總結(jié)。系統(tǒng)需求分析本章主要針對(duì)功能需求、系統(tǒng)總體設(shè)計(jì)、系統(tǒng)功能模塊設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)以及相關(guān)技術(shù)這幾個(gè)方面進(jìn)行介紹,最后對(duì)本章進(jìn)行總結(jié)。系統(tǒng)總體設(shè)計(jì)本章主要介紹了本系統(tǒng)總體設(shè)計(jì),以及每個(gè)模塊的主要功能。系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)本章主要介紹系統(tǒng)的實(shí)現(xiàn),主要包括運(yùn)行環(huán)境、主界面的實(shí)現(xiàn)、登錄模塊的實(shí)現(xiàn)、倉(cāng)儲(chǔ)管理模塊的實(shí)現(xiàn)、出入庫(kù)管理模塊的實(shí)現(xiàn)、基礎(chǔ)信息維護(hù)模塊的實(shí)現(xiàn)和系統(tǒng)維護(hù)模塊的實(shí)現(xiàn),最后進(jìn)行了總結(jié)。系統(tǒng)測(cè)試本章進(jìn)行了黑盒測(cè)試,主要針對(duì)不同功能模塊輸入不同數(shù)據(jù)進(jìn)行測(cè)試??偨Y(jié)本章對(duì)論文總體進(jìn)行了總結(jié),以及對(duì)未來(lái)進(jìn)行了展望。1.4本章總結(jié)本章主要針對(duì)倉(cāng)儲(chǔ)管理系統(tǒng)的選題背景和選題意義進(jìn)行分析,并且分析了倉(cāng)儲(chǔ)管理系統(tǒng)與傳統(tǒng)人工方式相比所帶來(lái)的好處,最后總述文章主要內(nèi)容和結(jié)構(gòu)。

2系統(tǒng)需求分析2.1可行性分析可行性分析是計(jì)算機(jī)應(yīng)用開(kāi)發(fā)必備的步驟。在正式開(kāi)發(fā)之前,我們需要預(yù)測(cè)在未來(lái)開(kāi)發(fā)中可能碰到的問(wèn)題,同時(shí)要評(píng)估倉(cāng)儲(chǔ)管理系統(tǒng)對(duì)倉(cāng)庫(kù)所帶來(lái)的收益和風(fēng)險(xiǎn),并且需要計(jì)算項(xiàng)目成本。如果不進(jìn)行這一步,預(yù)算不夠的話,項(xiàng)目開(kāi)發(fā)到一半時(shí)發(fā)現(xiàn)資金無(wú)法支撐整個(gè)項(xiàng)目的開(kāi)發(fā),這會(huì)對(duì)倉(cāng)庫(kù)造成巨大的損失。因此,本節(jié)主要對(duì)系統(tǒng)的技術(shù)層面、操作層面、已經(jīng)經(jīng)濟(jì)層面進(jìn)行可行性分析。從技術(shù)層面來(lái)說(shuō),本文開(kāi)發(fā)的倉(cāng)儲(chǔ)管理系使用的框架都是目前較為流行的框架,并且本文開(kāi)發(fā)的系統(tǒng)所使用的都是較為輕量工具如Mysql。并且使用ssm框架來(lái)實(shí)現(xiàn)MVC模式中的業(yè)務(wù)層、視圖層和持久層。本次開(kāi)發(fā)面向的是倉(cāng)儲(chǔ),因此使用Tomcat服務(wù)器完全可以滿足日常需求,由于正常用戶量最多500,所以Mysql數(shù)據(jù)庫(kù)完全夠用,其完全免費(fèi),體積好可以降低成本。本系統(tǒng)開(kāi)發(fā)周期短,可以快速上線使用,因此在技術(shù)層面上是完全可行的。從操作層面來(lái)說(shuō),本系統(tǒng)為了工作人員快速上手,所以設(shè)計(jì)的界面簡(jiǎn)單易懂,清楚明了,沒(méi)有復(fù)雜的操作,通過(guò)簡(jiǎn)單的培訓(xùn)就可以快速入手。日常的操作只需要幾步就可以完成,這樣可以有效的提高員工工作效率。對(duì)于不同角色本系統(tǒng)提高不同的權(quán)限,以此來(lái)防止某些誤操作,同時(shí)系統(tǒng)中所有的操作都會(huì)被記錄,如果出現(xiàn)問(wèn)題可以快速定位解決問(wèn)題。本系統(tǒng)操作簡(jiǎn)單,界面友好,所以在操作層面上是可行的。從經(jīng)濟(jì)層面來(lái)說(shuō),本軟件的實(shí)現(xiàn)只需要開(kāi)發(fā)費(fèi)用和運(yùn)營(yíng)費(fèi)用,但是對(duì)比傳統(tǒng)的倉(cāng)儲(chǔ)管理方式來(lái)說(shuō),軟件可以幫助提升工作人員的效率,并且可以減少發(fā)生錯(cuò)誤的可能性,從而提升倉(cāng)庫(kù)的存儲(chǔ)能力。所以從經(jīng)濟(jì)層面上來(lái)說(shuō),本軟件的開(kāi)發(fā)也是可行的。2.2功能需求分析根據(jù)對(duì)實(shí)際倉(cāng)庫(kù)的需求的考察,倉(cāng)儲(chǔ)管理系統(tǒng)主要由管理員控制,具體需求如下表所示。表2-1功能需求列表編號(hào)功能名稱功能描述輸入內(nèi)容輸出內(nèi)容1管理員信息錄入管理員錄入后可以進(jìn)行本系統(tǒng)所有操作姓名,、性別、電話、地址等錄入的結(jié)果(提醒“倉(cāng)庫(kù)管理員的系統(tǒng)初始密碼為該ID”)2管理員登錄管理員登錄倉(cāng)儲(chǔ)管理系統(tǒng)用戶名、密碼用戶登錄是否成功3入庫(kù)管理員對(duì)貨物進(jìn)行入庫(kù)供應(yīng)商、貨物名稱、數(shù)量等貨物入庫(kù)是否成功4出庫(kù)管理員對(duì)貨物進(jìn)行出庫(kù)供應(yīng)商、貨物名稱、數(shù)量等貨物出庫(kù)是否成功5供應(yīng)商信息添加添加供應(yīng)商信息供應(yīng)商名稱、負(fù)責(zé)人、電話、地址等提示添加的結(jié)果6客戶信息添加添加客戶信息客戶名稱、負(fù)責(zé)人、電話、地址等提示添加的結(jié)果7貨物信息添加添加貨物信息貨物相名稱、貨物類型、貨物尺寸、貨物價(jià)值提示添加的結(jié)果8倉(cāng)庫(kù)信息添加添加倉(cāng)庫(kù)信息倉(cāng)庫(kù)地址、倉(cāng)庫(kù)面積、倉(cāng)庫(kù)狀態(tài)、倉(cāng)庫(kù)面試提示添加的結(jié)果9貨物查詢查詢貨物相關(guān)信息貨物ID、倉(cāng)庫(kù)顯示所有貨物10更改密碼管理員密碼更改原密碼新密碼是否修改成功11系統(tǒng)日志顯示所有管理員的操作無(wú)顯示所有操作日志12登錄日志顯示所有管理員的登錄IP無(wú)顯示所有登錄IP13管理員查詢顯示所有管理員無(wú)顯示所有管理員2.3數(shù)據(jù)流圖管理員和超級(jí)管理員都可以通過(guò)登錄系統(tǒng)的界面來(lái)進(jìn)入系統(tǒng),如下圖所示:圖2-1數(shù)據(jù)流圖用戶在倉(cāng)儲(chǔ)管理調(diào)試系統(tǒng)時(shí),系統(tǒng)通過(guò)賬號(hào)和密碼判斷登錄的是超級(jí)管理員還是管理員,再根據(jù)登錄的角色跳轉(zhuǎn)到不同的頁(yè)面上,用戶在系統(tǒng)內(nèi)操作時(shí),根據(jù)操作的不同數(shù)據(jù)會(huì)從頁(yè)面流向Mysql數(shù)據(jù)庫(kù),再?gòu)臄?shù)據(jù)庫(kù)中拿到數(shù)據(jù)反饋給用戶。2.4相關(guān)技術(shù)介紹2.4.1MyBatis框架介紹文使用MyBatis作為持久層框架,該框架有很多優(yōu)勢(shì),主要可以根據(jù)sql語(yǔ)句動(dòng)態(tài)配置來(lái)對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)操作,該框架同時(shí)包含數(shù)據(jù)庫(kù)的高級(jí)特性如觸發(fā)器,函數(shù),存儲(chǔ)過(guò)程等。MyBatis使用配置文件的方式記錄數(shù)據(jù)庫(kù)連接參數(shù)實(shí)現(xiàn)連接,不需要采用傳統(tǒng)的Jdbc模式就能拿到存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù),采用這種連接方式能有效的減少創(chuàng)建數(shù)據(jù)表和銷毀數(shù)據(jù)表時(shí)的開(kāi)銷。此外,該框架以配置文件的形式實(shí)現(xiàn)SQL語(yǔ)句進(jìn)而操縱數(shù)據(jù)庫(kù),Java的類映射成數(shù)據(jù)庫(kù)中的數(shù)據(jù)。Mybatis框架主要分為接口層、數(shù)據(jù)處理層、基礎(chǔ)支撐層這三層架構(gòu),如下圖所示。圖2-2Mybatis結(jié)構(gòu)圖Mybatis的結(jié)構(gòu)概述:(1)第一層接口:api接口層提供相關(guān)功能的接口,服務(wù)層調(diào)用這些接口后。實(shí)際處理業(yè)務(wù)層只需要使用這些接口就可以獲得相應(yīng)的功能,從而完成對(duì)數(shù)據(jù)庫(kù)的操作。當(dāng)系統(tǒng)調(diào)用某一接口后,Mybatis框架就可以獲取配置文件中對(duì)應(yīng)的sql語(yǔ)句對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)增刪改查。

(2)第二層數(shù)據(jù):當(dāng)服務(wù)層調(diào)用接口層的接口后,數(shù)據(jù)層會(huì)找到相應(yīng)的配置文件中的sql語(yǔ)句對(duì)數(shù)據(jù)庫(kù)進(jìn)行增刪改查,操作數(shù)據(jù)庫(kù)后數(shù)據(jù)庫(kù)會(huì)返回相應(yīng)數(shù)據(jù)。數(shù)據(jù)層主要是將原始操作封裝為接口以便調(diào)用,當(dāng)其他層調(diào)用這些接口后可以非常簡(jiǎn)單的對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)增刪改查。(3)第三層支撐:基礎(chǔ)支撐層主要上存儲(chǔ)連接數(shù)據(jù)庫(kù)操作數(shù)據(jù)庫(kù)的基本的參數(shù),例如操作數(shù)據(jù)庫(kù)的驅(qū)動(dòng),數(shù)據(jù)庫(kù)的用戶名及密碼等。2.4.2Spring框架概要本文使用Spring框架作為主要設(shè)計(jì)層框架,該框架是目前較為流行的開(kāi)源層框架,該框架主要負(fù)責(zé)業(yè)務(wù)層和其它層的耦合問(wèn)題,該框架主要是采用接口解決耦合問(wèn)題,雖然有一定弊端,但是可以解決一部分耦合問(wèn)題。在任何TomCat和JBoss這類服務(wù)器中,Spring框架可以承受不同環(huán)境的影響,使用基礎(chǔ)功能。同時(shí)Spring框架不會(huì)受到特定的服務(wù)器限制,不會(huì)將自身和指定項(xiàng)目和對(duì)象相綁定,這一特性展現(xiàn)了Spring框架的優(yōu)勢(shì):在Spring框架中已經(jīng)配置好的對(duì)象可以在不同的項(xiàng)目和不同環(huán)境中執(zhí)行。所以Spring框架可以被不同服務(wù)器重用,降低耦合性,增加可擴(kuò)展性。Spring框架的體系結(jié)構(gòu)如下圖所示。圖2-3Spring體系結(jié)構(gòu)在Spring框架中每個(gè)模塊或組件都是獨(dú)立的,他們可以單一的被調(diào)用,或者多個(gè)聯(lián)合被調(diào)用。主要包括核心容器、Sprisng上下文和SpringAOP。(1)Spring中最基本的功能模塊(特性)由核心容器實(shí)現(xiàn)。該容器采用對(duì)象工廠來(lái)創(chuàng)建、加載實(shí)例。該容器的功能主要利用控制反轉(zhuǎn)對(duì)資源進(jìn)行操作,將原本資源控制權(quán)限從雙方控制轉(zhuǎn)變?yōu)橛蒘pring的核心容器來(lái)控制,進(jìn)而減弱了JAVA對(duì)象的耦合度,從而讓實(shí)現(xiàn)功能時(shí)主要關(guān)注使用對(duì)象而不是創(chuàng)建對(duì)象。(2)Spring上下文主要是通過(guò)Spring-content.xml這一配置文件保存框架功能的相關(guān)參數(shù)信息,當(dāng)工程啟動(dòng)時(shí)Spring框架可以自動(dòng)讀取Spring-content.xml該配置文件并對(duì)所有模塊進(jìn)行初始化。在Spring-content.xml配置文件中的Spring-content標(biāo)簽中配置相關(guān)功能,例如檢驗(yàn)輸入字段的有效性,管理程序異常等。(3)Spring框架中除了IOC功能外之外,該框架還有另外一個(gè)叫做AOP的功能也十分強(qiáng)大。該功能本質(zhì)上是一個(gè)阻斷器,主要的功能是操作某些將要執(zhí)行或者已經(jīng)執(zhí)行完成的方法。使用該功能,我們可以將倉(cāng)儲(chǔ)管理系統(tǒng)中設(shè)計(jì)的核心功能和一些通用的方法分開(kāi),易于實(shí)現(xiàn)日志管理,數(shù)據(jù)庫(kù)基本信息的管理從而減少代碼冗余,將核心代碼和通用代碼更加具體、清晰的表現(xiàn)出來(lái)。2.4.3SpringMVC框架介紹SpringMVC框架主要核心思想的采用一個(gè)分發(fā)器來(lái)處理用戶的各個(gè)請(qǐng)求,當(dāng)有一個(gè)請(qǐng)求進(jìn)來(lái)后,該分發(fā)器會(huì)將這個(gè)請(qǐng)求分配給相應(yīng)的程序進(jìn)行處理,此外,該框架還可以進(jìn)行地址映射、數(shù)據(jù)庫(kù)視圖分析、程序參數(shù)檢驗(yàn)、對(duì)文件進(jìn)行便捷的上傳下載等功能。該框架主要采用注解的方式來(lái)表示不同功能,通過(guò)Controller注解來(lái)獲取所有請(qǐng)求,拿到請(qǐng)求后用RequestMapping注解來(lái)處理請(qǐng)求。該框架的主要的體系結(jié)構(gòu)如下圖所示。圖2-4Spring體系結(jié)構(gòu)Spring-mvc主要由七個(gè)核心部件組成,共同完成從請(qǐng)求到響應(yīng)再獲取數(shù)據(jù)庫(kù)數(shù)據(jù),再到返回?cái)?shù)據(jù)這一流程。在這里我們主要介紹前端控制器(DispatcherServlet)、處理器映射器(HandlerMapping)、處理器(Handler)、處理器適配器(HandlAdapter)、:視圖解析器(ViewResolver)和視圖(View)。(1)前端控制器(DispatcherServlet)主要處理用戶的請(qǐng)求,當(dāng)用戶的請(qǐng)求到達(dá)后,該控制器作為MVC設(shè)計(jì)模式中的controller來(lái)控制整體的數(shù)據(jù)流動(dòng),該組件可以協(xié)同其它組件完成用戶請(qǐng)求,采用分發(fā)器的形式來(lái)減少組件之間的耦合度。(2)處理器映射器(HandlerMapping)主要是根據(jù)用戶不同的相應(yīng),將任務(wù)分配給不同處理器,主要采用配置文件實(shí)現(xiàn)接口和注解的不同映射。(3)處理器(Handler)主要功能是控制后端程序,根據(jù)DispatcherServlet分發(fā)的不同請(qǐng)求處理器進(jìn)而處理用戶的不同請(qǐng)求,改模塊通常是由程序員根據(jù)業(yè)務(wù)進(jìn)行自定義,因此該模塊可塑性很強(qiáng)。(4)處理器適配器(HandlAdapter)主要上用來(lái)針對(duì)Handler無(wú)法處理的某些請(qǐng)求,DispatcherServlet分發(fā)任務(wù)后發(fā)現(xiàn)沒(méi)有handler可以解決,這時(shí)會(huì)發(fā)送到該模塊上進(jìn)行處理。(5)視圖解析器(ViewResolver)主要是將handler處理后的結(jié)果轉(zhuǎn)化為View視圖,主要流程上首先將邏輯視圖轉(zhuǎn)化為頁(yè)面,然后生成對(duì)象,最后對(duì)該視圖進(jìn)行渲染,然后根據(jù)靜態(tài)資源CSS配置后顯示給用戶。(6)視圖(View)主要包括jsp頁(yè)面、html頁(yè)面和xml頁(yè)面等。該功能模塊主要上根據(jù)具體的不同業(yè)務(wù)進(jìn)行具體的開(kāi)發(fā)。2.4.4Hadoop技術(shù)本系統(tǒng)使用Hadoop技術(shù)作為倉(cāng)庫(kù)的集群。Hadoop是一個(gè)使用Java語(yǔ)言編寫(xiě)的大數(shù)據(jù)管理平臺(tái),該技術(shù)采用MapReduce作為分布式架構(gòu)。本架構(gòu)是最基礎(chǔ)的架構(gòu),允許用戶依靠該技術(shù)進(jìn)行簡(jiǎn)單的模型編程,對(duì)數(shù)據(jù)進(jìn)行分布式處理,其設(shè)計(jì)模式可以從單一的服務(wù)器到數(shù)千臺(tái)機(jī)器,每個(gè)服務(wù)器都能提供本地的存儲(chǔ)功能。本文開(kāi)發(fā)的倉(cāng)儲(chǔ)物料管理系統(tǒng)中,每個(gè)倉(cāng)庫(kù)可以當(dāng)做一個(gè)獨(dú)立的服務(wù)器進(jìn)行部署,最后將所有數(shù)據(jù)匯總,這樣可以并行的處理海量的數(shù)據(jù)。Hadoop是Apache開(kāi)源組織的一個(gè)分布式計(jì)算開(kāi)源框架,是一個(gè)包含有很多子項(xiàng)目的大家族,圖1顯示了Hadoop整個(gè)家族的各個(gè)子項(xiàng)目。圖2-5Hadoop整體結(jié)構(gòu)MapReduce是一種編程模式,主要分兩部分:map函數(shù)、reduce函數(shù)。MapReduce編程中,主要就是實(shí)現(xiàn)這兩個(gè)函數(shù),其執(zhí)行過(guò)程見(jiàn)圖2-6。圖2-6Mapreduce模型MapReduce是一種主從結(jié)構(gòu),它有一個(gè)JobTracker和多個(gè)TaskTracker,通過(guò)JobTracker把任務(wù)分成多份,分別讓多個(gè)TaskTracker并行執(zhí)行,這樣可以加快任務(wù)執(zhí)行速度,提高系統(tǒng)的性能。HDFS是分布式文件系統(tǒng),是AHC項(xiàng)目的一部分。圖2-7HDFS結(jié)構(gòu)圖圖2-7是HDFS的體系結(jié)構(gòu)圖,下面介紹主從結(jié)構(gòu)的組成。(1)NameNote:主節(jié)點(diǎn)。(2)DataNode:負(fù)責(zé)存儲(chǔ)文件,在這里,把一個(gè)文件被分割成很多的block存放在Linux系統(tǒng)中,為了保證文件的安全性,文件有很多的冗余副本。HBase的索引是RowKey、ColumnFamily、以及時(shí)Timestamp,每個(gè)值是一個(gè)未經(jīng)解析的支付串。其結(jié)構(gòu)見(jiàn)圖2-8。圖2-8HBase結(jié)構(gòu)圖2.4.5Mysql數(shù)據(jù)庫(kù)隨著計(jì)算機(jī)技術(shù)的發(fā)展,傳統(tǒng)的采取文件存儲(chǔ)數(shù)據(jù)的方式不再適用與現(xiàn)代計(jì)算機(jī)的需求,所以工程師設(shè)計(jì)了數(shù)據(jù)庫(kù)來(lái)解決計(jì)算機(jī)數(shù)據(jù)存儲(chǔ)的問(wèn)題。數(shù)據(jù)庫(kù)的出現(xiàn),使計(jì)算機(jī)的發(fā)展邁進(jìn)了一大步,有了良好的數(shù)據(jù)管理軟件,計(jì)算機(jī)的程序免去了針對(duì)復(fù)雜數(shù)據(jù)的設(shè)計(jì)。MySQL是一款目前較為流行的輕量級(jí)開(kāi)源的數(shù)據(jù)庫(kù)軟件,由于其免費(fèi)的特性得到很多人的青睞,是目前使用人數(shù)最多的數(shù)據(jù)庫(kù)。在命令提示符下操作MySQL數(shù)據(jù)庫(kù)的方式不太方便,所以本文使用的MySQL圖形化管理工具是NavicatforMySQL,該工具界面清晰明了,操作相對(duì)簡(jiǎn)單,便于用戶對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行管理,它使用的圖形化用戶界面可以讓用戶使用和管理更為簡(jiǎn)潔和明了。Mysql數(shù)據(jù)庫(kù)可以以獨(dú)立的進(jìn)程運(yùn)行,這使得程序員可以輕易的根據(jù)其所提供的接口進(jìn)行數(shù)據(jù)操作。通常數(shù)據(jù)庫(kù)接口采用驅(qū)動(dòng)進(jìn)行連接,這些驅(qū)動(dòng)通常由數(shù)據(jù)庫(kù)廠商提供。2.4.6JSP技術(shù)本系統(tǒng)使用JSP頁(yè)面進(jìn)行編寫(xiě),JSP是一種網(wǎng)頁(yè)開(kāi)發(fā)技術(shù),是動(dòng)態(tài)的技術(shù),該技術(shù)可以讓Java代碼嵌入在HTML網(wǎng)頁(yè)中,動(dòng)態(tài)的修改網(wǎng)頁(yè)上的數(shù)據(jù),達(dá)到動(dòng)態(tài)可視化的目的。JSP本質(zhì)上是Java中的servlet,主要是用于Javaweb程序中用戶界面與服務(wù)器界面的交互,該技術(shù)除了可以在HTML頁(yè)面中嵌入Java代碼,還可以在XHTML和XML中進(jìn)行相同的操作。JSP頁(yè)面主要是通過(guò)網(wǎng)頁(yè)中提交表單的形式,獲取用戶的數(shù)據(jù),對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的操作,當(dāng)數(shù)據(jù)庫(kù)響應(yīng)后再動(dòng)態(tài)的創(chuàng)建HTML頁(yè)面。JSP有很多標(biāo)簽,每個(gè)標(biāo)簽的功能都不相同,如有訪問(wèn)數(shù)據(jù)庫(kù)的,有記錄用戶選擇的等等。2.5本章總結(jié)本章主要針對(duì)倉(cāng)儲(chǔ)管理系統(tǒng)的功能需求、可行性分析、數(shù)據(jù)庫(kù)設(shè)計(jì)和相關(guān)技術(shù)幾個(gè)方面展開(kāi),利用圖表的形式展示了系統(tǒng)中各個(gè)部分的設(shè)計(jì)情況,并配有文字詳細(xì)描述了各個(gè)功能模塊的設(shè)計(jì)使用情況。

3系統(tǒng)總體設(shè)計(jì)3.1系統(tǒng)總體設(shè)計(jì)倉(cāng)儲(chǔ)管理系統(tǒng)由管理員進(jìn)行管理,具體功能模塊如下圖所示。圖3-1系統(tǒng)功能圖倉(cāng)儲(chǔ)管理系統(tǒng)系統(tǒng)其中主要包括庫(kù)存管理,出入庫(kù)管理,人員信息管理,基礎(chǔ)數(shù)據(jù)和系統(tǒng)維護(hù)功能。其中基礎(chǔ)數(shù)據(jù)主要是管理倉(cāng)管、供應(yīng)商等信息。3.2系統(tǒng)功能模塊設(shè)計(jì)(1)登錄功能模塊該模塊的主要功能是判斷管理員是否登錄,只有登錄后才可以使用本系統(tǒng)的相關(guān)功能在賬號(hào)與密碼驗(yàn)證成功的情況下,跳轉(zhuǎn)到主界面,該模塊是整個(gè)系統(tǒng)的入口。(2)出入庫(kù)功能模塊該模塊主要包含出庫(kù)功能和入庫(kù)功能,本功能只有登錄后才能使用,當(dāng)貨物被運(yùn)送到倉(cāng)庫(kù)后,管理員使用入庫(kù)功能,將貨物的基本信息錄入。當(dāng)貨物被提走后,管理員需要使用出庫(kù)功能,錄入相關(guān)信息。(3)人員管理功能模塊該功能模塊主要是使用超級(jí)管理員賬號(hào),為倉(cāng)庫(kù)管理員添加信息,建立賬號(hào),管理倉(cāng)庫(kù)。(4)基礎(chǔ)數(shù)據(jù)功能模塊該模塊的主要功能是完善倉(cāng)庫(kù)信息,貨物信息,供應(yīng)商信息以及客戶信息。簡(jiǎn)化管理員的工作步驟,不用每次入庫(kù)時(shí)都對(duì)貨物信息進(jìn)行錄入,直接查看現(xiàn)有的是否已經(jīng)存在,如果不存在再進(jìn)行錄入。(5)系統(tǒng)維護(hù)功能模塊改模塊主要是記錄管理員的各種操作,以及登錄IP地址,防止貨物丟失,防止貨物被盜。3.3數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)模型的分析設(shè)計(jì)的實(shí)現(xiàn)能力主要指基于對(duì)數(shù)據(jù)庫(kù)實(shí)體類數(shù)據(jù)表的模型設(shè)計(jì)的分析研究能力與具體分析模型設(shè)計(jì)的實(shí)現(xiàn)的結(jié)果,本節(jié)在文章結(jié)構(gòu)中還將會(huì)盡量主要詳細(xì)地提出從數(shù)據(jù)庫(kù)分析設(shè)計(jì)中的最主要的概念模型設(shè)計(jì)出發(fā)并將給出ER圖,并也將具體給出最主要的類型的數(shù)據(jù)表型設(shè)計(jì)的一些詳細(xì)分析設(shè)計(jì)內(nèi)容。倉(cāng)儲(chǔ)管理系統(tǒng)采用Mysql數(shù)據(jù)庫(kù),本系統(tǒng)主要包括系統(tǒng)管理員表、客戶表、供應(yīng)商表、倉(cāng)庫(kù)表、貨物表、操作動(dòng)作表、入庫(kù)表、出庫(kù)表、登錄日志表等11個(gè)表,每個(gè)表的具體設(shè)計(jì)情況如下所示。數(shù)據(jù)庫(kù)E-R圖如下所示。圖3-1全局E-R圖管理員內(nèi)容表(admin)用來(lái)存儲(chǔ)平臺(tái)管理員的基本內(nèi)容,表字段內(nèi)容如表3-1所示。表3-1系統(tǒng)管理員表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1USER_IDInt4自增10

2USER_USERNAMEVarChar50是255

3USER_PASSWORDVarChar50是255

系統(tǒng)管理員角色表(admin_role)用來(lái)存儲(chǔ)平臺(tái)管理員的角色信息,表字段內(nèi)容如表3-2所示。表3-2系統(tǒng)管理員角色表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1ROLE_IDInt4是10

2USER_IDVarChar4是10

系統(tǒng)供應(yīng)商表(supplier)用來(lái)存儲(chǔ)倉(cāng)儲(chǔ)系統(tǒng)供應(yīng)商信息表字段內(nèi)容如表3-3所示。表3-3供應(yīng)商表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1SUPPLIER_IDInt4自增10

2SUPPLIER_NAMEVarChar50是255

3SUPPLIER_PERSONVarChar50是255

4SUPPLIER_TELVarChar50是255

5SUPPLIER_EMAILVarChar50是255

6SUPPLIER_ADDRESSVarChar500是255

系統(tǒng)操作記錄表(action)用來(lái)存儲(chǔ)平臺(tái)管理員操作表字段內(nèi)容如表3-4所示。表3-4操作記錄表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1ACTION_IDInt4是10

2ROLE_IDInt4是10

倉(cāng)庫(kù)表(repo)用來(lái)存儲(chǔ)倉(cāng)儲(chǔ)系統(tǒng)中倉(cāng)庫(kù)表字段內(nèi)容如表3-5所示。表3-5倉(cāng)庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1REPO_IDInt4自增10

2REPO_ADDRESSVarChar50是255

3REPO_STATUSVarChar50是255

4REPO_AREAVarChar50是255

5REPO_DESCVarChar50是255

存儲(chǔ)表(record)用來(lái)存儲(chǔ)倉(cāng)儲(chǔ)系統(tǒng)中庫(kù)存信息的內(nèi)容,存儲(chǔ)表字段內(nèi)容如表3-6所示。表3-6存儲(chǔ)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1RECORD_IDInt4是10

2RECORD_REPOSITORYInt4是10

3RECORD_NUMBERInt4是10

入庫(kù)表(record_in)用來(lái)存儲(chǔ)倉(cāng)儲(chǔ)系統(tǒng)中入庫(kù)信息的內(nèi)容,入庫(kù)表字段內(nèi)容如表3-7所示。表3-7入庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1RECORD_IDInt4自增10

2RECORD_SUPPLIERIDInt4是10

3RECORD_GOODIDInt4是10

4RECORD_NUMBERInt4是10

5RECORD_TIMEDateTime0是0

6RECORD_PERSONVarChar50是255

7RECORD_REPOSITORYIDInt4是10出庫(kù)表(record_out)用來(lái)存儲(chǔ)倉(cāng)儲(chǔ)系統(tǒng)中出庫(kù)信息的內(nèi)容,出庫(kù)表字段內(nèi)容如表3-8所示。表3-8出庫(kù)表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1RECORD_IDInt4自增10

2RECORD_CUSTOMERIDInt4是10

3RECORD_GOODIDInt4是10

4RECORD_NUMBERInt4是10

5RECORD_TIMEdatetime0是0

6RECORD_PERSONVarChar50是255

7RECORD_REPOSITORYIDInt4是10

貨物表(good)用來(lái)存儲(chǔ)倉(cāng)儲(chǔ)系統(tǒng)中存儲(chǔ)貨物的信息,貨物表字段內(nèi)容如表3-9所示。表3-9貨物表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1GOOD_IDInt4自增10

2GOOD_NAMEVarChar50是255

3GOOD_RYPEVarChar50是255

4GOOD_SIZEVarChar50是255

5GOOD_VALUEVarChar50是255

客戶表(record_out)用來(lái)存儲(chǔ)倉(cāng)儲(chǔ)系統(tǒng)中客戶信息的內(nèi)容,出客戶表字段內(nèi)容如表3-10所示。表3-10客戶表序號(hào)字段名稱字段類型大小允許為空最大長(zhǎng)度備注1CUSTOMER_IDInt4自增編號(hào)10

2CUSTOMER_NAMEVarChar50是255

3CUSTOMER_PERSONVarChar50是255

4CUSTOMER_TELVarChar50是255

5CUSTOMER_EMAILVarChar50是255

6CUSTOMER_ADDRESSVarChar50是2553.4本章總結(jié)本章主要介紹了本系統(tǒng)總體設(shè)計(jì),以及每個(gè)模塊的主要功能。

4系統(tǒng)實(shí)現(xiàn)4.1安裝Hadoop先在master機(jī)器上安裝:(1)關(guān)閉防火墻。(2)解壓并重命名hadoop-1.1.2.targz為hadoop(3)配置hadoop環(huán)境變量。在/etc/profle中加入環(huán)境變量:exportHADOOP_HOME=/usr/local/hadoop(4)編輯SHADOOP_HOME/conf/hadoop-env.sh文件。#配置Java環(huán)境ExportJAVA_HOME=/usr/lacal/jdk/(5)編輯$HADOOP_HOME/conf/core-sit.xml,詳見(jiàn)圖6。圖4-1core.site.xml配置(6)編輯$HADOOP_HOME/conf/hdfs-sit.xml,詳見(jiàn)圖4-2。圖4-2hdfs.site.xml配置(7)編輯mapred-site.xml,詳見(jiàn)圖4-3所示。圖4-3mapred-.site.xml配置(8)編輯master,將master添加進(jìn)去。(9)編輯slaves,將slave1和slave2添加進(jìn)去。(10)安裝好后拷貝至如上兩位置。同時(shí)對(duì)slave1和slave2上的/etc/profile文件進(jìn)行相應(yīng)的修改。(11)驗(yàn)證Hadoop是否安裝成功在master上執(zhí)行start-all.sh命令,然后執(zhí)行jps查看java進(jìn)程,如果界面如圖4-4所示,則表示安裝成功。圖4-4master上Hadoop效果4.2主界面的實(shí)現(xiàn)本文實(shí)現(xiàn)的是一個(gè)倉(cāng)儲(chǔ)管理系統(tǒng),該系統(tǒng)包含庫(kù)存管理模塊、出入庫(kù)管理模塊、人員管理模塊、基礎(chǔ)信息管理模塊、系統(tǒng)管理模塊和系統(tǒng)管理模塊,主界面如圖所示。圖4-5系統(tǒng)主界面4.3登錄模塊的實(shí)現(xiàn)用戶登錄分為超級(jí)管理員、普通管理員。首先用戶輸入賬號(hào)和密碼,點(diǎn)擊登錄后系統(tǒng)調(diào)取數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行比對(duì),首先對(duì)比賬號(hào)密碼是否正確,如果正確則返回用戶的權(quán)限,然后系統(tǒng)進(jìn)入相應(yīng)的主界面。登錄模塊流程圖如下圖所示。圖4-6登錄流程圖登錄界面如下圖所示。圖4-7登錄界面4.4出入庫(kù)管理模塊的實(shí)現(xiàn)當(dāng)管理員登錄后,可以進(jìn)行出庫(kù)入庫(kù)操作,如果想要入庫(kù)操作,首先選擇倉(cāng)庫(kù),輸入對(duì)應(yīng)供應(yīng)商和入庫(kù)貨物以及入庫(kù)數(shù)量,出庫(kù)的操作類似,如果供應(yīng)商和貨物不存在則需要先添加相關(guān)信息。出入庫(kù)管理流程圖如下圖所示。圖4-8出入庫(kù)管理流程圖入庫(kù)頁(yè)面如下圖所示。圖4-9入庫(kù)界面出庫(kù)頁(yè)面如下圖所示。圖4-10出庫(kù)頁(yè)面4.5基礎(chǔ)數(shù)據(jù)管理模塊的實(shí)現(xiàn)在管理員已經(jīng)登錄的情況下,管理員點(diǎn)擊基礎(chǔ)數(shù)據(jù),可以對(duì)供應(yīng)商,客戶,倉(cāng)庫(kù),貨物等信息進(jìn)行錄入、更新修改、查詢及刪除?;A(chǔ)數(shù)據(jù)管理流程圖如下所示。圖4-11基礎(chǔ)數(shù)據(jù)管理流程圖由于篇幅顯示,在這里只展示基礎(chǔ)數(shù)據(jù)管理中供應(yīng)商部分,界面如下圖所示。圖4-12基礎(chǔ)數(shù)據(jù)供應(yīng)商管理頁(yè)面4.6系統(tǒng)維護(hù)模塊的實(shí)現(xiàn)當(dāng)管理員成功登錄后,可以點(diǎn)擊系統(tǒng)維護(hù)進(jìn)行相關(guān)操作。該界面可以查詢倉(cāng)庫(kù)管理員的操作以及登錄IP等信息。圖4-13系統(tǒng)維護(hù)模塊管理流程圖系統(tǒng)維護(hù)模塊如下圖所示。圖4-14系統(tǒng)維護(hù)模塊界面4.7修改密碼在用戶成功登陸系統(tǒng)后,可以點(diǎn)擊左側(cè)修改密碼選項(xiàng)。點(diǎn)擊后跳轉(zhuǎn)到修改密碼界面,在改頁(yè)面中需要填寫(xiě)原始密碼,以及兩次新密碼。如果兩次新密碼不一致,則系統(tǒng)會(huì)彈出“對(duì)不起,兩次密碼不一至,請(qǐng)重新輸入”的信息。如果原密碼不正確,則系統(tǒng)會(huì)彈出“原密碼輸入錯(cuò)誤”的信息,如果修改成功則會(huì)退出系統(tǒng),重新登錄。修改密碼模塊流程圖如下所示。圖4-15修改密碼流程圖 修改密碼界面如下圖所示。圖4-16修改密碼界面圖4.8本章總結(jié)本章針對(duì)倉(cāng)儲(chǔ)管理系統(tǒng)主要介紹了系統(tǒng)的幾個(gè)核心部分的功能實(shí)現(xiàn)以及所需要的運(yùn)行環(huán)境,核心功能主要主界面的實(shí)現(xiàn)、登錄模塊的實(shí)現(xiàn)、出入庫(kù)管理模塊的實(shí)現(xiàn)、基礎(chǔ)數(shù)據(jù)管理模塊的實(shí)現(xiàn)、系統(tǒng)維護(hù)模塊的實(shí)現(xiàn)與修改密碼模塊的實(shí)現(xiàn)。為了便于理解,本章在每個(gè)核心功能介紹部分附上了流程圖、系統(tǒng)頁(yè)面以及核心代碼。

5系統(tǒng)測(cè)試5.1測(cè)試目的為了倉(cāng)儲(chǔ)管理系統(tǒng)的穩(wěn)定性與可用性,需要進(jìn)行一定程度的測(cè)試來(lái)檢驗(yàn)系統(tǒng),本章主要針對(duì)系統(tǒng)的界面以及功能性進(jìn)行測(cè)試,目的是保證倉(cāng)儲(chǔ)管理系統(tǒng)在部署到生產(chǎn)環(huán)境下可以正常,有效的運(yùn)轉(zhuǎn)。分析倉(cāng)儲(chǔ)物料管理系統(tǒng),確定要測(cè)試的內(nèi)容并制定測(cè)試計(jì)劃,本系統(tǒng)在Windows1064位專業(yè)版上運(yùn)行只進(jìn)行功能測(cè)試。本文只進(jìn)行功能測(cè)試,未進(jìn)行壓力測(cè)試。測(cè)試主要分倉(cāng)儲(chǔ)物料管理系統(tǒng)的功能模塊測(cè)試。執(zhí)行測(cè)試,準(zhǔn)備搭建測(cè)試環(huán)境,并記錄測(cè)試內(nèi)容。提交并解決測(cè)試中的bug。本次測(cè)試主要針對(duì)Web端的使用以及后臺(tái)調(diào)用數(shù)據(jù)庫(kù)是否正常進(jìn)行測(cè)試,Web端主要對(duì)出入庫(kù)管理、基礎(chǔ)信息管理和系統(tǒng)功能維護(hù)功能進(jìn)行測(cè)試,測(cè)試其是否正常運(yùn)行,以及可能會(huì)出現(xiàn)的問(wèn)題[8-10]。5.2測(cè)試方案5.2.1界面測(cè)試本文采用黑盒測(cè)試Web端的界面,主要測(cè)試字體,窗口,以及其他元素是否正常。Web端界面測(cè)試項(xiàng)目如下表所示。表5-1用戶界面測(cè)試表檢查項(xiàng)測(cè)試人測(cè)試結(jié)果窗口切換、移動(dòng)、改變大小時(shí)正常嗎?本人正常各種界面元素的文字正確嗎?(如標(biāo)題、提示等)本人正常各種界面元素的狀態(tài)正確嗎?(如有效、無(wú)效、選中等狀態(tài))本人正常各種界面元素支持鍵盤操作嗎?本人正常數(shù)據(jù)項(xiàng)能正確回顯嗎?本人正常執(zhí)行有風(fēng)險(xiǎn)的操作時(shí),有“確認(rèn)”、“放棄”等提示嗎?本人正常有聯(lián)機(jī)幫助嗎?本人正常各種界面元素的布局合理嗎?美觀嗎?本人正常5.2.2功能測(cè)試(1)用戶登錄測(cè)試當(dāng)用戶以超級(jí)管理員身份登錄,輸入賬號(hào)或密碼為空時(shí),提示框會(huì)提示右側(cè)會(huì)出現(xiàn)“用戶名不能為空”。當(dāng)輸入錯(cuò)誤的賬號(hào)或密碼時(shí),會(huì)彈出提示框顯示“用戶名或密碼錯(cuò)誤”。圖5-1用戶登錄測(cè)試界面當(dāng)用戶使用正確的賬號(hào)和密碼登錄時(shí),系統(tǒng)會(huì)彈出提示框顯示“登陸成功!”。這時(shí)頁(yè)面會(huì)自動(dòng)跳轉(zhuǎn)到相應(yīng)的角色主界面。圖5-2用戶登錄測(cè)試界面(2)系統(tǒng)用戶信息管理測(cè)試對(duì)系統(tǒng)用戶信息管理進(jìn)行測(cè)試時(shí),采用黑盒測(cè)試法中的等效性法和邊界值法相結(jié)合的測(cè)試方法對(duì)功能進(jìn)行測(cè)試,例如輸入錯(cuò)誤的數(shù)據(jù),輸入非法的字段或者輸入超越輸入框規(guī)定范圍的數(shù)字(如年齡、手機(jī)號(hào)、QQ號(hào)和銀行賬號(hào)等)。系統(tǒng)用戶信息管理測(cè)試表如下表所示。表5-2系統(tǒng)用戶信息管理測(cè)試功能A描述以管理員身份登錄,添加、修改、查詢用戶信息用例目的是否能夠正確修改信息前提條件用戶安全登錄系統(tǒng)界面輸入/動(dòng)作輸入實(shí)際情況示例:典型值…年齡5353示例:邊界值…年齡—10輸入數(shù)據(jù)有誤示例:異常值…年齡a輸入數(shù)據(jù)有誤如果輸入的測(cè)試數(shù)據(jù)完全正確,則彈出對(duì)話框顯示“倉(cāng)庫(kù)管理員添加成功”,這時(shí)表示系統(tǒng)添加用戶成功,具體對(duì)話框如下圖所示。圖5-3錄入用戶信息成功界面(3)部分功能測(cè)試為了驗(yàn)證系統(tǒng)功能的有效性及完整性,本文做了大量黑盒測(cè)試。下表展示了部分測(cè)試實(shí)例。表5-3部分測(cè)試用例表模塊用例描述預(yù)期結(jié)果備注管理員登錄用戶名文本框中不輸入任何數(shù)據(jù)提示“請(qǐng)?zhí)顚?xiě)完整的信息”測(cè)試用戶名是否為空在密碼文本框中輸入“123”三個(gè)字符提示“密碼長(zhǎng)度最少為6位”測(cè)試密碼位數(shù)是否正確密碼修改在密碼文本框和確認(rèn)密碼文本框中分別輸“123456”和“258769”提示“兩次輸入的密碼不匹配”測(cè)試用戶兩次輸入的密碼是否匹配在用戶管理中修改密碼,原始密碼若輸入不正確提示“原始密碼錯(cuò)誤”測(cè)試原始密碼是否正確添加客戶客戶信息內(nèi)容為空系統(tǒng)提示客戶信息內(nèi)容為空,客戶信息添加失敗測(cè)試客戶信息是否為空輸入客戶信息系統(tǒng)提示客戶信息添加成功測(cè)試客戶信息是否成功添加供應(yīng)商直接點(diǎn)擊添加系統(tǒng)提示請(qǐng)輸入相關(guān)信息測(cè)試添加供應(yīng)商功能是否可用輸入供應(yīng)商信息系統(tǒng)提示添加成功測(cè)試添加供應(yīng)商功能是否可用5.3測(cè)試結(jié)果進(jìn)過(guò)一系列的測(cè)試后,倉(cāng)儲(chǔ)管理系統(tǒng)基本可以按照開(kāi)發(fā)需求正常運(yùn)行,能夠滿足倉(cāng)庫(kù)的基本需求。本次測(cè)試項(xiàng)目主要針對(duì)系統(tǒng)日常使用進(jìn)行測(cè)試,由于條件有限只進(jìn)行了界面測(cè)試和系統(tǒng)測(cè)試,在未來(lái)可以嘗試對(duì)系統(tǒng)進(jìn)行一定程度的壓力測(cè)試,檢驗(yàn)系統(tǒng)的承載能力。5.4本章總結(jié)本章主要針對(duì)倉(cāng)儲(chǔ)管理系統(tǒng)設(shè)計(jì)開(kāi)發(fā)完成后進(jìn)行一些列的黑盒測(cè)試,目的是在系統(tǒng)交付給倉(cāng)庫(kù)時(shí),可以真正的直接部署在生產(chǎn)環(huán)境中。雖然本系統(tǒng)經(jīng)過(guò)了界面測(cè)試和系統(tǒng)測(cè)試,但是

溫馨提示

  • 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ù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論