版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
學院本科畢業(yè)設計(論文)基于Hadoop的手機產品推薦系統(tǒng)的設計與實現(xiàn)摘要隨著移動設備的發(fā)展,手機逐漸滲透到人們的日常生活中,人們對手機產品的選擇也變得更加多樣化,目前,基本上所有大型商品推薦系統(tǒng),如京東,淘寶,拼多多等都使用了各種形式的推薦功能,但用戶很難從不同類目的商品數(shù)據中尋找到自己的目標手機產品,根據為用戶挖掘推薦興趣相似手機產品的實際需求,開發(fā)手機產品推薦系統(tǒng)可以針對用戶購買手機產品的需求,為用戶在尋找判斷的過程中節(jié)省時間,同時可以滿足不同用戶的個性化需求。手機產品推薦系統(tǒng)通過搭建Hadoop分布式框架,采用Java語言,HTML,CSS,JavaScript等技術開發(fā),使用MySQL數(shù)據庫存儲數(shù)據,手機產品推薦系統(tǒng)的主要功能模塊有:反饋功能,訂單管理功能,訂單創(chuàng)建功能,用戶管理功能,評論發(fā)表功能和推薦功能等,在推薦模塊主要通過協(xié)同過濾算法對用戶的行為數(shù)據進行分析計算,從而篩選出合適的手機產品。本文根據軟件工程的生命周期思想對系統(tǒng)展開研究,分析手機產品推薦系統(tǒng)的需求,從而對系統(tǒng)進行詳細設計并實現(xiàn),最終經過測試,顯示各個模塊功能完整且能夠正常運行。但是由于時間有限,該手機產品推薦系統(tǒng)的前臺頁面較為簡單,在以后需要進一步完善。關鍵詞:Hadoop,協(xié)同過濾,數(shù)據收集DesignandImplementationofaMobileProductRecommendationSystemBasedonHadoopAbstractWiththedevelopmentofmobiledevices,mobilephonesgraduallypenetrateintopeople'sdailylife,people'schoiceofmobilephoneproductshasbecomemorediversified,atpresent,basicallyalllarge-scalecommodityrecommendationsystems,suchasJingdong,Taobao,Pinduoduo,etc.haveusedvariousformsofrecommendationfunctions,butitisdifficultforuserstofindtheirtargetmobilephoneproductsfromdifferentcategoriesofcommoditydata,accordingtotheactualneedsofuserstoexploreandrecommendsimilarinterestsofmobilephoneproducts,Thedevelopmentofamobilephoneproductrecommendationsystemcansavetimeforusersintheprocessoffindingjudgmentsaccordingtotheneedsofuserstopurchasemobilephoneproducts,andatthesametimecanmeetthepersonalizedneedsofdifferentusers.ThemobilephoneproductrecommendationsystemisdevelopedbybuildingaHadoopdistributedframework,usingJavalanguage,HTML,CSS,JavaScriptandothertechnologies,usingMySQLdatabasetostoredata,themainfunctionalmodulesofthemobilephoneproductrecommendationsystemare:feedbackfunction,ordermanagementfunction,ordercreationfunction,usermanagementfunction,commentpublishingfunctionandrecommendationfunction,etc.,intherecommendationmodulemainlythroughthecollaborativefilteringalgorithmtoanalyzeandcalculatetheuser'sbehaviordata,soastoscreenouttheappropriatemobilephoneproducts。Thispaperstudiesthesystemaccordingtothelifecycleideaofsoftwareengineering,analyzestherequirementsofthemobilephoneproductrecommendationsystem,andthendesignsandimplementsthesystemindetail,andfinallytestsittoshowthateachmoduleisfunctionalcompleteandcanoperatenormally.However,duetothelimitedtime,thefrontpageofthemobilephoneproductrecommendationsystemisrelativelysimple,anditneedstobefurtherimprovedinthefuture.KeyWords:Hadoop,collaborativefiltering,datacollection目錄218091緒論 緒論1.1課題的背景網絡的發(fā)展使人類由信息不足走向信息超載,由于各種類型的數(shù)據信息的激增,使得信息的效力和使用效率大為下降,而人們很難從海量信息中完美地找到最適合自己的有效信息,在用戶尋找與自己的需求定位相匹配的信息這個過程中難免會浪費大量的時間。在數(shù)據量大、目的不明的情形下,為滿足用戶多樣化的信息需要,推薦系統(tǒng)可以有效地彌補現(xiàn)有的信息檢索系統(tǒng)的不足。從目前的智能機行業(yè)競爭情況來看,為了增強企業(yè)競爭力,很多手機品牌都開始在電子領域進行布局,以此來擴大企業(yè)的品牌認知度。而在這時,手機產品推薦系統(tǒng)的出現(xiàn)將會大大提高用戶留存率,在海量信息中,人們在尋找自己心儀手機產品的同時也在互聯(lián)網上留下了自己的軌跡,手機產品推薦系統(tǒng)能夠根據這些軌跡抽取出用戶的標簽,并以此來建立用戶畫像,便可以得到用戶感興趣的相關信息,從而實現(xiàn)個性化推薦。正是由于手機產品推薦技術使得電商行業(yè)可以發(fā)展蓬勃。1.2研究現(xiàn)狀在當前互聯(lián)網環(huán)境下,消費者主要通過相關的購物平臺,網絡門戶,搜索引擎等獲得移動產品的信息,盡管這些平臺能夠為用戶篩選出一部分有用的信息,但也僅能滿足用戶檢索的需求。由于人們對需求的不確定,以及信息的爆炸性增加,使得推薦系統(tǒng)具有長期的實用性,因此,手機產品推薦系統(tǒng)將隨著人類的進步而不斷地發(fā)展演變。根據最新手機銷售報告可以看出,2023年智能手機整體銷售量為增長趨勢,阿里營收2341.56億元,同比增長14%;淘寶銷售額為1149.53億元,同比增長12%,雖然目前已經存在大量的商品推薦系統(tǒng),但是僅僅銷售手機產品的推薦系統(tǒng)卻并不多,其中,京東,淘寶等購物系統(tǒng)將熱銷產品或者點擊量較高的商品展示推薦給用戶,但是無法就手機產品這一單獨類目為用戶推薦,其包含大量不同類別的商品,使用戶無法快速挑選相關手機產品,因此,手機產品推薦系統(tǒng)的開發(fā)變得格外重要。1.3課題的意義該手機產品推薦系統(tǒng)的研究意義如下:1.提高了產品推薦效率和準確性。消費者的需求差異性很大,傳統(tǒng)的人工推薦系統(tǒng)無法適應個性化的推薦需求。Hadoop平臺的手機產品推薦系統(tǒng)能更好地解決這一系列的問題,從而滿足用戶個性化推薦。2.提高了用戶留存率和市場競爭力。對使用者而言,手機產品推薦系統(tǒng)可以更加方便地找到其感興趣的手機產品并找到用戶潛在感興趣的其他手機產品。3.解決了海量數(shù)據處理方面的問題。傳統(tǒng)推薦算法在處理大規(guī)模數(shù)據時,其計算復雜度和運算時長成為了限制推薦算法發(fā)展的瓶頸。為用戶尋找自己想要的手機產品節(jié)約了大量的時間。1.4論文主要工作為了方便用戶對手機產品在短時間內可以快速了解,各種用戶對手機產品類型的喜好可以通過智能算法實現(xiàn)。前期基于目前市場客戶對于手機產品的各類需求及喜歡以及各類品牌做出調研。再借鑒目前市場流行的智能推薦方式,最后設計出適用于各類用戶接受手機產品推薦查詢算法。用戶可以隨時根據自己的喜好查詢了解各類手機參數(shù),并且系統(tǒng)會根據用戶的喜好來推薦產品。本文的主要工作安排如下:1.手機產品推薦系統(tǒng)客戶端設計所采用的方式和技術研究;2.針對管理員和用戶的需求進行分析;3.系統(tǒng)各個功能模塊的詳細設計;4.系統(tǒng)的實現(xiàn),對系統(tǒng)各個模塊功能進行具體的分析講解;5.測試系統(tǒng)整體功能,確保系統(tǒng)能夠正常運轉。1.5論文結構安排本文結構安排如下:第一章對系統(tǒng)的背景意義展開介紹。第二章對系統(tǒng)中后臺管理員和前臺消費者用戶的功能需求展開分析。第三章重點設計了系統(tǒng)數(shù)據庫以及各個功能模塊。第四章根據第三章的設計內容對系統(tǒng)功能進行實現(xiàn)。第五章測試系統(tǒng)模塊功能是否按預期執(zhí)行。第六章總結本系統(tǒng)的研究過程。本文采用理論和實驗測試相結合的研究方法,立足于手機產品推薦的實際需求,進行平臺整體設計,開發(fā)多個功能模塊,在此基礎上對系統(tǒng)手機功能數(shù)據庫進行研究,構建手機產品推薦系統(tǒng)平臺。
2需求分析2.1系統(tǒng)需求概述在軟件開發(fā)的過程中十分重要的一步就是需求分析,這一步主要是對用戶需求的了解和收集,從而更加準確的設計和開發(fā)出符合用戶需求的軟件系統(tǒng)。用戶需求分析:對于本系統(tǒng)來說,用戶需求就是核心。要提前了解用戶的基本信息、用戶的偏好以及還需要考慮用戶的行為數(shù)據。數(shù)據分析:手機產品推薦系統(tǒng)要收集大量的手機產品數(shù)據,包括手機的品牌、內存、型號、價格等。此外,還要見這些數(shù)據與用戶數(shù)據相結合,從而實現(xiàn)個性化推薦。系統(tǒng)架構設計:Hadoop作為一個大數(shù)據處理框架,適合處理海量數(shù)據。所以在系統(tǒng)設計中要考慮Hadoop的架構,包括HDFS,MapReduce,springboot,VUE等組件的使用。推薦算法選擇:本系統(tǒng)采用了協(xié)同過濾推薦算法,在選擇算法的同時也要考慮系統(tǒng)性能。安全性設計分析:在設計系統(tǒng)的過程中要充分考慮數(shù)據的安全性和消費者的的隱私問題,要對用戶數(shù)據實施加密措施。系統(tǒng)性能分析:在設計系統(tǒng)的過程中要考慮系統(tǒng)的性能問題??梢酝ㄟ^采用數(shù)據分片和緩存等技術手段來提高系統(tǒng)性能。2.2業(yè)務描述基于Hadoop的手機產品推薦系統(tǒng)是為了向用戶推薦其感興趣的手機產品的個性化系統(tǒng)。其中,后臺系統(tǒng)可以添加和刪除商品,更新訂單狀態(tài),刪除評價以及查看用戶反饋等。前臺系統(tǒng)登錄注冊之后可以在系統(tǒng)中自行查找需要的手機產品,修改個人信息,加購或者收藏產品,評價產品以及對平臺進行反饋等等。消費者的業(yè)務流程:用戶在登錄之后,可以在首頁的搜索框中查找手機產品,并且能夠加購或者收藏產品,用戶在購買產品前要輸入個人地址,電話等相關信息,可以對當前產品進行評價,進入購物車或者收藏模塊可以刪除購物車或者收藏產品,并可以對平臺進行反饋。管理員的業(yè)務流程:管理員能夠查看用戶的相關信息,刪除用戶,查看用戶的反饋以及用戶對某個產品的評論等,對手機產品進行編輯,查看訂單信息,以及對訂單進行發(fā)貨等。管理員業(yè)務流程圖如圖2-1。圖2-1業(yè)務流程圖2.3功能需求分析手機產品推薦系統(tǒng)主要是為了能夠更好地存儲手機產品信息,使用戶查找目標產品的過程更加便捷。本系統(tǒng)能夠實現(xiàn)的功能分為用戶和管理員兩部分。1.消費者用戶從消費者角度來看,新用戶需要在系統(tǒng)中進行注冊,系統(tǒng)對用戶行為軌跡進行識別分析,為其展示個性化的推薦內容。消費者通過系統(tǒng)可以實現(xiàn)以下的操作:用戶注冊登錄:用戶輸入相關個人信息之后點擊注冊,注冊成功后進入登錄頁面,輸入正確用戶名,密碼和驗證碼之后進行登錄。個人信息管理:用戶點擊用戶名便可以進入個人信息頁面編輯個人基本信息。創(chuàng)建訂單:用戶可以在商品頁和購物車選中自己想要的商品進行購買。發(fā)表評論:用戶點開商品的詳情頁之后,可以對產品發(fā)表評論。反饋留言:用戶可以對系統(tǒng)進行反饋。消費者的用例圖如圖2-2所示。圖2-2消費者用例圖用戶登錄用例描述如下表2-1所示:表2-1用戶登錄用例描述用例編號1用例名稱用戶登錄參與者用戶用例描述要使用本系統(tǒng),必須注冊,不然不能購買商品,完成注冊后,正確輸入用戶名,密碼以及驗證碼,可登錄系統(tǒng)并使用其功能。執(zhí)行者消費者前置條件已經注冊過后置條件正確填寫用戶名、密碼和驗證碼基本事件流1.用戶進入系統(tǒng)2.用戶通過點擊登錄或注冊按鈕來完成登錄注冊操作3.用戶完成注冊后,跳轉至登錄頁面,輸入正確用戶名,密碼和驗證碼4.用戶點擊登錄按鈕5.用戶登錄成功,進入系統(tǒng)功能頁面或用戶登錄失敗返回繼續(xù)登錄用戶創(chuàng)建訂單用例描述如下表2-2:表2-2用戶訂單用例描述用例編號2用例名稱訂單創(chuàng)建參與者用戶續(xù)表2-2用例描述用戶可以選中商品結算執(zhí)行者消費者前置條件用戶登錄網站后置條件用戶成功創(chuàng)建訂單基本事件流1.用戶登錄系統(tǒng)2.用戶點擊商品跳轉到商品的詳情頁3.點擊購買商品或者加購商品4.點擊下單5.輸入地址,電話等個人基本信息6.用戶創(chuàng)建訂單成功用戶管理個人信息用例描述如下表2-3:表2-3用戶個人信息管理用例描述用例編號3用例名稱用戶修改個人信息參與者用戶用例描述用戶點擊個人賬戶便可以進入個人信息頁面,可以編輯個人基本信息執(zhí)行者消費者前置條件用戶成功登錄本系統(tǒng)后置條件用戶修改個人信息成功基本事件流1.用戶登錄系統(tǒng)跳轉到系統(tǒng)首頁2.點擊用戶頭像進入個人信息頁面3.編輯個人的基本信息4.編輯成功用戶反饋留言用例描述如下表2-4所示:表2-4用戶反饋用例描述用例編號4用例名稱用戶反饋參與者用戶用例描述用戶點擊個人賬戶便可以進入個人信息頁面,可以點擊反饋進行留言執(zhí)行者消費者前置條件用戶成功登錄本系統(tǒng)后置條件用戶反饋成功續(xù)表2-4基本事件流1.用戶登錄系統(tǒng)跳轉到系統(tǒng)首頁2.點擊用戶名進入個人信息3.點擊反饋4.輸入反饋內容點擊提交5.反饋成功用戶評論用例描述如下表2-5:表2-5用戶發(fā)表評論用例描述用例編號5用例名稱用戶評論參與者用戶用例描述用戶點擊商品便可以進入商品詳情頁,點擊評論框輸入內容,點擊確定成功發(fā)表評論執(zhí)行者消費者前置條件用戶成功登錄本系統(tǒng)后置條件用戶發(fā)表評論成功基本事件流1.用戶登錄系統(tǒng)跳轉到系統(tǒng)首頁2.點擊商品進入商品詳情頁3.點擊輸入框填寫評論內容4.點擊確定,成功發(fā)表評論用戶推薦用例描述如下表2-6:表2-6用戶推薦用例描述用例編號6用例名稱用戶推薦參與者用戶用例描述用戶登入系統(tǒng),可以通過查看本期推薦尋找自己感興趣的產品執(zhí)行者消費者前置條件用戶成功登錄本系統(tǒng)后置條件用戶查看推薦成功基本事件流1.用戶登錄系統(tǒng)跳轉到系統(tǒng)首頁2.查看本期推薦3.點擊本期推薦的手機產品4.成功進入商品詳情頁2.管理員用戶管理員通過系統(tǒng)有以下的操作:用戶管理:管理員能夠查看用戶相關信息,并可以對其進行刪除。反饋管理:管理員有權限查閱用戶的反饋,對這些信息進行已讀標記,并可以刪除已讀反饋。訂單管理:管理員能查看訂單列表,對訂單進行發(fā)貨處理,并且可以刪除訂單。管理員用戶用例圖如圖2-3所示。圖2-3管理員用例圖管理員管理用戶信息用例描述如下表2-7:表2-7管理員用戶管理用例描述用例編號1用例名稱管理用戶參與者管理員用例描述管理員可以查看用戶列表,對用戶進行刪除。執(zhí)行者管理員前置條件管理員成功登錄本系統(tǒng)后置條件管理用戶信息成功基本事件流1.管理員登錄后臺系統(tǒng)2.對用戶進行添加刪除處理3.操作成功管理員進行反饋管理用例描述如下表2-8:表2-8管理員反饋管理用例描述用例編號2用例名稱反饋管理參與者管理員用例描述管理員可以對反饋進行已讀處理或刪除該條反饋。執(zhí)行者管理員前置條件管理員成功登錄本系統(tǒng)后置條件反饋編輯成功基本事件流1.管理員成功登錄后臺系統(tǒng)2.已讀反饋或刪除反饋3.編輯成功管理員進行訂單管理管理用例描述如下表2-9:表2-9管理員進行訂單管理用例描述用例編號3用例名稱管理員進行訂單管理參與者管理員用例描述管理員可以對未發(fā)貨訂單進行發(fā)貨處理,刪除已完成訂單執(zhí)行者管理員前置條件管理員成功登錄本系統(tǒng)后置條件訂單編輯成功基本事件流1.管理員登錄后臺系統(tǒng)2.點擊側邊欄進入訂單管理3.對訂單進行發(fā)貨處理或刪除已完成訂單4.編輯成功3系統(tǒng)設計3.1系統(tǒng)總體設計1.系統(tǒng)的總體架構設計本系統(tǒng)通過用戶的行為數(shù)據,通過協(xié)同過濾算法從已有數(shù)據中為用戶篩選出合適的產品。為了能夠讓手機產品推薦系統(tǒng)的設計更加完善,同時為了提高系統(tǒng)的可拓展性和可維護性。本系統(tǒng)將會采用以Hadoop為主的分布式系統(tǒng)以及Mahout開源軟件、以MySQL為主的數(shù)據庫存儲系統(tǒng)。可以最大程度增強系統(tǒng)的穩(wěn)定性,使整個系統(tǒng)可以正常運轉,并實時為用戶提供推薦根據以上描述,可以設計出該系統(tǒng)的設計框架圖如下圖3-1所示,數(shù)據處理過程圖如下圖3-2所示。圖3-1系統(tǒng)設計框架圖圖3-2數(shù)據處理過程圖基于上述的需求分析,在細節(jié)上進行相關設計,并將系統(tǒng)的架構劃分為圖3-3所示。圖3-3系統(tǒng)結構層次圖本手機產品推薦系統(tǒng)對相關手機產品進行數(shù)據收集,為本推薦系統(tǒng)提供了數(shù)據支撐,從而生成最后的結果并展示給用戶。2.系統(tǒng)的功能結構設計前臺用戶功能:用戶注冊登錄,個人信息的增,刪,改功能,訂購手機產品,對系統(tǒng)留言反映,對手機進行評論;后臺管理員功能:移除用戶,刪除反饋,更新反饋狀態(tài),刪除評論。推薦功能:數(shù)據收集,結果處理。系統(tǒng)功能結構圖如下圖3-4。圖3-4系統(tǒng)功能結構圖3.2Hadoop的框架設計1.HDFS架構設計HDFS的設計目標主要是把大量數(shù)據集群存儲到普通計算機上,從而使服務吞吐量更高,HDFS架構主要為存儲海量數(shù)據,所以其要能在集群中拓展多個不同節(jié)點,并且HDFS要擁有完善的冗余備份機制。當客戶端請求或者存儲文件時,先查找DataNode的位置,然后和DataNode交互,在NameNode啟動時,將會啟用SecondaryNameNode從而加快Hadoop重啟的速度。NameNode和DataNode架構如圖3-5所示。圖3-5NameNode和DataNode架構如圖2.MapReduce框架設計MapReduce框架主要包括JobTracker和TaskTracker兩個組件,其中TaskTracker在HDFS的DataNode節(jié)點上運行計算任務,當JobTracker和TaskTracker面對同一個任務時,JobTracker將為這個任務單獨啟動一個JVM進程。當客戶端向JobTracker提交任務時,過程如下:第一步,JobTracker接收請求。第二步,JobTracker參照任務的參數(shù)向NameNode請求DataNode節(jié)點列表。第三步,JobTracker確定Map,Reduce的任務數(shù)量,并且將其進行分配。第四步,JobTracker向TaskTracker節(jié)點提交所有任務。第五步,當所有任務完成后,JobTracker將工作狀態(tài)更新為完成,若是其中一些任務未完成,工作將會被標記為失敗。第六步,JobTracker發(fā)布工作運行狀態(tài)給Client端。3.3系統(tǒng)前臺功能設計3.3.1用戶登錄注冊功能設計用戶在進入系統(tǒng)之前,首先要進行注冊和登錄,用戶在未登錄的狀態(tài)下可以使用系統(tǒng)的部分功能,但是無法使用創(chuàng)建訂單,加購或者收藏商品,發(fā)表評論,反饋留言等功能,用戶如果想要使用系統(tǒng)的全部功能,必須要進行登錄。1.用戶注冊新用戶需要先注冊賬號,輸入相關信息確認無誤后點擊注冊,若每個字段全部符合規(guī)范,則注冊成功。2.用戶登錄用戶注冊成功之后,進入登錄頁面,用戶輸入用戶名,密碼和驗證碼,確認無誤后登錄,系統(tǒng)后臺判定用戶是否存在,如果用戶存在且用戶名,密碼和驗證碼均無誤則登錄成功,當密碼出錯時,系統(tǒng)會提示用戶密碼存在錯誤,如果驗證碼錯誤則提示用戶驗證碼錯誤。圖3-6展示了注冊和登錄模塊的具體流程。圖3-6用戶注冊登錄流程圖3.3.2個人信息管理功能設計用戶點擊用戶名進入個人信息管理可以查看和修改信息。個人信息的設置和修改主要是對一個表單的修改,用戶輸入修改的信息之后,系統(tǒng)會進行信息的校驗,向后端發(fā)送post請求,然后服務器端對請求進行處理,最后返回結果。其中個人信息的設置主要包括基本的信息,用戶對這些信息進行修改和保存之后,會同步數(shù)據庫中的數(shù)據。用戶信息管理的流程圖如圖3-7。圖3-7用戶信息管理流程圖3.3.3訂單創(chuàng)建功能設計用戶在登錄系統(tǒng)之后才能創(chuàng)建訂單,用戶進入商品的詳情頁,點擊購買,填寫收貨信息后生成訂單。用戶也可以將此商品加入購物車,在首頁點擊進入購物車之后進行購買,從而創(chuàng)建了一個新的訂單,產生的訂單號便于用戶查詢,同時也能將用戶購買的商品信息進行保存。用戶創(chuàng)建訂單的流程圖如下圖3-8。圖3-8用戶創(chuàng)建訂單流程圖3.3.4反饋功能設計用戶登錄并進入系統(tǒng)之后,可以通過反饋頁面來反饋對系統(tǒng)的意見,進入反饋頁面,將自己的意見填入反饋框之后,點擊確定即可將反饋內容上傳到后臺,用戶可以在反饋頁面查看自己的歷史反饋,同時也可以對自己的反饋進行刪除操作,刪除后前臺將提示用戶刪除成功。用戶反饋的流程圖如下圖3-9所示。圖3-9用戶反饋流程圖3.3.5評論功能設計用戶登錄并進入系統(tǒng)后,點擊產品可以進入商品詳情頁,用戶可以對該產品進行評論,在評論框里輸入評論內容,點擊發(fā)表評論,系統(tǒng)將評論存入后臺數(shù)據庫,同時系統(tǒng)提示用戶發(fā)布成功。流程圖如下圖3-10所示。圖3-10用戶反饋流程圖3.3.6推薦功能設計用戶登入后,后臺通過收集用戶的行為數(shù)據組成數(shù)據集,形成一個用戶-物品矩陣,然后進行相似度的計算,可以得到一個相似用戶集合,通過對用戶集合的產品偏好的計算,篩選出用戶感興趣的產品進行排序輸出,最后展示在前臺頁面,實現(xiàn)產品的推薦。推薦功能的流程圖如圖3-11所示。圖3-11用戶反饋流程圖3.4系統(tǒng)后臺模塊設計3.4.1用戶管理功能設計管理員登錄并進入后臺系統(tǒng)頁面之后,點擊用戶管理可以查看所有用戶的信息,管理員可以通過后臺對用戶進行刪除,所更新的數(shù)據會被系統(tǒng)存入數(shù)據庫的用戶表中,同時管理員可以通過點擊搜索框輸入關鍵字來查找相關用戶。用戶管理模塊的功能結構圖如下圖3-12所示。圖3-12用戶管理功能圖3.4.2反饋管理功能設計管理員在反饋管理模塊,可以查看用戶對系統(tǒng)提出的意見,反饋人的信息以及反饋的當前狀態(tài),管理員也可以對歷史反饋內容進行刪除,管理員點擊已讀可以更新用戶反饋的狀態(tài),同時反饋狀態(tài)會更新到前臺頁面,使用戶看到自己的反饋狀態(tài)。管理員進行反饋管理的功能結構圖如下圖3-13所示。圖3-13管理員反饋管理功能結構圖3.4.3訂單管理功能設計用戶購買手機產品之后,管理員后臺可查看全部訂單信息以及用戶的相關信息,可以進行發(fā)貨操作來更新訂單的狀態(tài),更新狀態(tài)之后將會更新到前臺。訂單管理模塊的流程圖如圖3-14所示。圖3-14管理員訂單管理流程圖3.5數(shù)據庫設計3.5.1數(shù)據庫結構設計1.數(shù)據庫概念結構設計概念結構設計通過綜合用戶需求,并根據手機產品推薦系統(tǒng)的需求分析抽象出了用戶,管理員,商品,商品類別,訂單,反饋和評論等七個實體。(1)用戶實體用戶實體屬性:用戶ID,用戶名,密碼,真實姓名,年齡,手機號,郵箱,地址,注冊時間,性別。用戶實體圖如圖3-15。圖3-15用戶實體圖(2)管理員實體管理員實體屬性:管理員ID,用戶名,密碼。管理員實體圖如圖3-16。圖3-16管理員實體圖(3)手機實體手機實體屬性:手機ID,手機標題,品牌,價格,上架時間,總數(shù)。手機實體圖如圖3-17。圖3-17手機實體圖(4)手機類別實體手機類別實體屬性:類別ID,類別名稱。商品類別實體圖如圖3-18。圖3-18手機類別實體圖(6)反饋實體反饋實體屬性:反饋ID,反饋人用戶名,反饋內容,反饋狀態(tài),反饋人ID,反饋時間。反饋實體圖如圖3-19。圖3-19反饋實體圖(7)評論實體評論實體屬性:評論ID,評論人用戶名,評論人ID,評論內容,評論手機ID,評論時間,評論手機名稱。評論實體圖如圖3-20。圖3-20評論實體圖手機產品推薦系統(tǒng)的E-R圖如圖3-21。圖3-21系統(tǒng)E-R圖2.數(shù)據庫邏輯結構設計用戶表(用戶ID,用戶名,密碼,真實姓名,年齡,手機號,郵箱,地址,注冊時間,性別)管理員表(管理員ID,用戶名,密碼)商品表(手機ID,手機標題,品牌,價格,上架時間,總數(shù))商品類別表(類別ID,類別名稱)反饋表(反饋ID,反饋人用戶名,反饋內容,反饋狀態(tài),反饋人ID,反饋時間)評論表(評論ID,評論人用戶名,評論人ID,評論內容,評論手機ID,評論時間,評論手機名稱)3.5.2數(shù)據庫表設計1.用戶表(mall_user)如表3-1所示。表3-1用戶表字段名稱數(shù)據類型主鍵是否空說明user_idintyesno用戶IDreal_namevarchr(50)nono真實姓名passwordvarchr(50)nono密碼emailvarchr(50)nono郵箱genderintnono性別ageintnoyes年齡phonevarchr(11)nono手機號addressvarchr(45)nono地址usernamevarchr(50)nono用戶名register_timedatetimenono注冊時間2.管理員表(admin)如表3-2所示。表3-2管理員表字段名稱數(shù)據類型主鍵是否空說明idchar(32)yesno管理員IDadmin_namechar(32)nono用戶名admin_passwordchar(10)nono密碼3.商品表(mall_book)如表3-3所示。表3-3手機表字段名稱數(shù)據類型主鍵是否空說明book_idintyesno手機IDbook_namevarchar(50)nono手機標題pricechar(32)nono價格book_manvarchr(45)nono品牌totalintnono總數(shù)add_timedatetimenono上架時間4.手機類別表(mall_category)如表3-4所示。表3-4商品類別表字段名稱數(shù)據類型主鍵是否空說明category_idintyesno類別IDcategory_namevarchar(45)nono類別名稱5.反饋表(feedback)如表3-5所示。表3-5反饋表字段名稱數(shù)據類型主鍵是否空說明idintyesno反饋IDuser_namevarchr(50)nono反饋人用戶名feedback_infovarchr(50)nono反饋內容feedback_readintnono反饋狀態(tài)user_idintnono反饋人IDfeedback_timedatetimenono反饋時間6.評論表(comment)如表3-6所示。表3-6反饋表字段名稱數(shù)據類型主鍵是否空說明idintyesno評論IDuser_namevarchr(50)nono評論人用戶名comment_infovarchr(50)nono評論內容book_namevarchr(50)nono評論手機名稱user_idintnono評論人IDcomment_timedatetimenono評論時間4系統(tǒng)實現(xiàn)4.1Hadoop集群搭建本系統(tǒng)采用B/S架構,通過瀏覽器來供用戶進行使用,不但充分展現(xiàn)了平臺功能的基礎性,而且極大地增加了系統(tǒng)的拓展性。本系統(tǒng)的前端基于Vue3.0框架,實現(xiàn)了頁面的開發(fā)。在配置的過程中,NameNode的主要作用是對目錄進行管理。假如NameNode不存在的話,將無法獲得從NameNode映射到DateNode的關系,從而數(shù)據無法實現(xiàn)共享。如果DateNode宕機或程序報錯,就不能在第一時間處理REF_Ref4903\r\h[1]。DateNode可以根據NameNode發(fā)出的指令進行調度和檢索。還可以定期向NameNode匯報,其主要作用是寫入數(shù)據塊內容,所以集群的每個服務器中都有一個DateNodeREF_Ref4903\r\h[1]。本系統(tǒng)主要使用Java語言,所以要安裝JDK,本實驗選用的是JDK1.8版本,JDK1.8不僅速度更快,便于并行,而且使用的范圍也更廣泛。JDK安裝完成之后,開始安裝3.0版本的Hadoop。ResourceManager負責調度整個集群,NodeManager只管理一個節(jié)點。當客戶端發(fā)送task時,ResourceManager先確定某個節(jié)點,將任務放進Container,接下來DataNode找到相對的MapTask。以上即為MapReduce的Map階段。最后匯總結果并寫入HDFS,在NameNode進行一次記賬操作。HDFS,YARN,MapReduce三者關系如圖4-1所示。圖4-1HDFS,YARN,MapReduce三者關系啟動Hadoop集群時,輸入start-all.sh指令啟動集群,再用JPS指令檢驗,若是有NameNode,DataNode(負責管理各個存儲節(jié)點),NodeManager(執(zhí)行實際工作)就表示啟動成功,然后可以訪問Web界面HDFS中的文件信息進行查看。HDFS管理頁面如圖4-2所示。圖4-2HDFS管理頁面4.2數(shù)據集及數(shù)據處理1.數(shù)據爬取本系統(tǒng)的數(shù)據來自于網站中關村中的數(shù)據集,選取了多條手機產品信息,數(shù)據集的質量對整個算法最終的準確率來說影響特別大,使用已有的數(shù)據集可以提高系統(tǒng)的穩(wěn)定性。在爬取不同手機產品信息時,通過不同的參數(shù)來構造不同的URL鏈接,然后再使用python爬蟲進行爬取。在編寫爬取模塊的時候,定義爬取過程的請求頭headers信息,其中請求頭headers中的內容可以通過瀏覽器的F12查看。具體步驟為:(1)導入必備庫(2)定義爬取URL地址和設置請求頭(3)使用Requests獲取數(shù)據(4)使用Xpath篩選數(shù)據源(5)通過循環(huán)迭代生成數(shù)據(6)通過調用函數(shù)進行預獲得(7)數(shù)據篩選,通過Next方法對生成器中內容提取并將其加在表頭中(8)構造run函數(shù)(9)循環(huán)迭代,在main函數(shù)中啟動,開始爬取2.MapReduce數(shù)據預處理數(shù)據集里面可能會存在一些重復,不完整的缺失數(shù)據。其中有的數(shù)據無法直接使用,否則可能會降低算法的準確率,都會直接或者間接改變最終的輸出內容,為了使數(shù)據質量得到提高,需要對數(shù)據進行預處理。通過JSON工具格式化處理數(shù)據內容,將手機產品信息的result字段儲存,查看儲存手機產品信息的相關字段。然后將其進行數(shù)據預處理后,將結果存入HDFS中REF_Ref29296\r\h[2]。通過MapReduce程序采集的數(shù)據進行預處理得到最終數(shù)據。數(shù)據預處理過程如圖4-3所示。圖4-3數(shù)據預處理過程圖對數(shù)據去重,處理無效值,刪除數(shù)據中的空缺值之后,最后得到了產品的相關信息,其中包括產品的品牌,內存,價格,圖片,發(fā)行日期等信息。最終得到的數(shù)據具體實現(xiàn)如圖4-4所示。圖4-4數(shù)據實現(xiàn)4.3系統(tǒng)的后臺功能實現(xiàn)4.3.1用戶管理界面的實現(xiàn)管理員登錄后臺系統(tǒng)之后,可以調用AdminController類中的getUserList()方法首先獲取所有用戶的信息,然后可以點擊刪除按鈕對用戶信息進行刪除,系統(tǒng)將會調用controller層的AdminController類中removeUserById()方法對用戶信息進行刪除,最后調用dao層AdminDao類中的removeUserByIdDao()方法向數(shù)據庫更新用戶表。管理員用戶管理時序圖如圖4-5。圖4-5管理員用戶管理時序圖管理員進行用戶管理界面如圖4-6所示。圖4-6用戶管理模塊實現(xiàn)4.3.2反饋管理界面的實現(xiàn)管理員可以查看用戶反饋信息,以及反饋是否已讀REF_Ref414\r\h[5]。管理員可以點擊已讀更新反饋的狀態(tài),同時已經解決的反饋信息可以點擊刪除從而刪除歷史反饋,當管理員點擊已讀按鈕之后,將會調用HTML方法提示該條反饋信息已讀成功,同時后臺將會訪問AdminController類,通過調用adminService類中的updataReadByIdSer()方法,將指定id的反饋信息標記為已讀,然后通過調用AdminController類中的updataReadById()方法判斷是否標記成功,如果成功則返回包含標記數(shù)目的ResponseResult對象。最后調用dao層中AdminDao類的updataReadByIdDao()方法將反饋信息狀態(tài)修改為已讀,進而將數(shù)據封裝在反饋實體。管理員已讀反饋信息時序圖如圖4-7所示,管理員反饋管理如圖4-8。圖4-7管理員反饋管理時序圖圖4-8管理員反饋管理實現(xiàn)4.3.3訂單管理界面的實現(xiàn)管理員在菜單欄點擊訂單管理選項,后臺通過調用AdminController類中的getOrderList()方法將會獲取所有的未發(fā)貨訂單,然后將查詢結果放入PageInfo對象中,便于前端進行分頁展示,管理員如果點擊發(fā)貨,后臺將會調用AdminController類中的updataOrder()方法進而將請求發(fā)送到Service層,然后通過調用AdminService類中的updataOrderSer()方法向Dao層進一步提交請求,最后Dao層通過調用AdminDao類中的updataOrderDao()方法向數(shù)據庫更新訂單狀態(tài),進而將數(shù)據封裝在訂單實體。管理員更新訂單狀態(tài)時序圖如下圖4-9所示。圖4-9管理員訂單管理時序圖管理員未發(fā)貨訂單頁面實現(xiàn)如圖4-10,更新狀態(tài)成功頁面實現(xiàn)圖4-11。圖4-10未發(fā)貨訂單頁面實現(xiàn)圖4-11更新狀態(tài)成功頁面實現(xiàn)4.4系統(tǒng)的前臺功能實現(xiàn)4.4.1用戶登錄注冊功能的實現(xiàn)用戶在進行注冊時需要按照頁面提供的信息進行填寫,要輸入用戶相關個人信息并點擊注冊,注冊過程中,將會調用前端UserRegister.vue中data()方法對表單進行規(guī)則驗證,系統(tǒng)將會發(fā)送POST請求并調用controller模塊里面ResponseResult類對表單數(shù)據進行獲取,經過registerUser類檢查表單數(shù)據格式是否正確,如果用戶輸入信息不符合規(guī)范,則通過HTML方法添加提示信息,用戶輸入完成之后點擊注冊,然后調用service層的registerUserSer方法,將user傳遞到dao層,從而將用戶相關數(shù)據封裝在用戶實體,如果注冊成功,將創(chuàng)建一個新用戶。用戶注冊登錄時序圖如圖4-12。圖4-12用戶注冊登錄時序圖頁面展示如圖4-13。圖4-13用戶注冊界面用戶登錄時,系統(tǒng)在前端可以獲取到用戶的信息,接著后端對數(shù)據庫中用戶信息數(shù)據表進行遍歷查找,跟數(shù)據中存儲的信息匹配REF_Ref29799\r\h[3]。用戶在進入系統(tǒng)之后,點擊登錄就可以跳轉到登錄功能頁面,在登錄頁面,需要填寫用戶名,密碼和驗證碼,填寫完成之后,系統(tǒng)將會調用前端vue的UserLogin中的loginFormRules()方法對輸入內容進行規(guī)則檢驗,如果不通過,將通過HTML方法在前臺添加提示信息,如果輸入內容規(guī)范性驗證通過,將會調用UserVontroller類中的ResponseResult()方法進而調用UserMapper類中的userLoginSer()方法匹配用戶信息。用戶登錄頁面實現(xiàn)如圖4-14。圖4-14用戶的登錄界面4.4.2個人信息管理功能的實現(xiàn)用戶登錄系統(tǒng)后,點擊用戶名進入用戶的個人信息頁面,可以修改個人信息,填寫完成后點擊確定,可以調用vue中的UserInfo模塊的data()方法對輸入的內容進行規(guī)則驗證,從而來驗證用戶輸入內容是否符合規(guī)范,同時UserController類中的editUserInfo()方法將前端傳遞過來的數(shù)據參數(shù)用字符串接收,如果輸入內容不符合規(guī)范,則會調用html方法在前臺添加提示信息,如果輸入內容格式正確,則會調用service層的editUserInfoSer()方法,將用戶修改的信息傳遞到dao層。用戶修改個人信息時序圖如圖4-15。圖4-15用戶個人信息管理時序圖用戶修改個人信息界面的實現(xiàn)如下圖4-16。圖4-16用戶個人信息管理界面4.4.3產品推薦功能的實現(xiàn)1.協(xié)同過濾算法的實現(xiàn)基于用戶的協(xié)同過濾算法通過將用戶的行為數(shù)據整理成一個數(shù)據集,通過計算用戶之間的相似度,給用戶推薦與其個人喜好相似度較高的產品。首先,我們需要建立一個用戶-產品評分矩陣,用戶相似度計算完成后,可以根據相似度來進行手機產品推薦,用戶偏好如圖4-17所示。圖4-17用戶偏好關系圖皮爾遜相關系數(shù)的計算公式如下4-1,該系數(shù)可以看出不同用戶之間相似程度。ρx,y=NXY下表4-1為多用戶對多個商品進行評分的示例。表4-1用戶對商品評分示例表商品1商品2商品3商品4商品5用戶A3.45.5用戶B3.65.1用戶C5.23.2用戶D4.92.8用戶E5.33.1通過計算用戶對產品的評分數(shù)據,可以獲得用戶間聯(lián)系。得出不同用戶相似度如下表4-2。表4-2用戶相似度用戶A&B用戶A&C用戶A&D用戶A&E用戶B&C用戶B&D用戶B&E用戶C&D用戶C&E用戶D&E0.9998-0.8478-0.8418-0.9152-0.8417-0.8353-0.910.9990.97630.9698當對用戶C進行推薦時,首先檢查之前的相似度列表,可以看出用戶C和用戶D和E的相似度較高,這三個用戶擁有相同的偏好,因此,可以對用戶C推薦D和E的商品,但不能重復推薦REF_Ref2546\r\h[6]。2.推薦功能的實現(xiàn)用戶根據購買,收藏或者加購商品等行為,調用Mapper1類中的Text()方法得到用戶,物品的評分矩陣,然后訪問Mapper2類,利用評分矩陣構建用戶間的相似度矩陣,通過用戶間的相似度矩陣進行計算判斷用戶的喜愛商品REF_Ref3660\r\h[7]然后調用Mapper3類中的Text()方法將評分矩陣轉置。系統(tǒng)推薦模塊時序圖如圖4-18,系統(tǒng)商品推薦模塊實現(xiàn)如圖4-19。圖4-18推薦模塊實現(xiàn)圖4-19推薦模塊實現(xiàn)4.4.4訂單創(chuàng)建功能的實現(xiàn)用戶購買商品通過調用dao層中的addShoppingCartDao方法進行將商品加入訂單的操作,然后通過UserController模塊里面的addShoppingCart方法,在用戶加入訂單后修改產品庫存和數(shù)量,用戶下單之后,頁面把用戶的請求提交到MallOrder類通過set()方法將其封裝給Product對象,調用MallOrder()方法將用戶請求發(fā)送給service層,最后向數(shù)據庫中添加訂單數(shù)據。用戶下單成功之后,系統(tǒng)可以將此訂單及時生成,用戶可以查看個人訂單信息,默認下單后的狀態(tài)是待發(fā)貨,交易中是已發(fā)貨,交易結束是已完成的狀態(tài)REF_Ref32143\r\h[4]。訂單模塊一方面方便了用戶對自己訂單的查詢,核查自己的訂單信息,另一方面還提高了后臺管理員的管理效率。用戶創(chuàng)建訂單過程實現(xiàn)如圖4-20,圖4-21,用戶創(chuàng)建訂單時序圖如圖4-22所示。圖4-22用戶創(chuàng)建訂單時序圖圖4-20用戶填寫收貨信息實現(xiàn)圖4-21用戶訂單頁面實現(xiàn)4.4.5反饋功能的實現(xiàn)用戶在進入推薦系統(tǒng)之后,點擊個人賬戶中的反饋信息,可以查看自己歷史的反饋狀態(tài),為管理員已讀和管理員未讀兩種狀態(tài),同時用戶可以針對在購買商品過程中所遇到的問題,對該系統(tǒng)做出評價,進而實現(xiàn)反饋,頁面再把用戶的反饋提交到Controller層中的UserController類中,然后調用方法將用戶的請求提交至service層,通過調用service層的addFeedbackSer()方法再向dao層進一步提交請求,最后調用dao層的addFeedbackDao()方法向數(shù)據庫中更新反饋信息,然后將數(shù)據庫信息封裝到實體。用戶反饋的時序圖如圖4-23所示。圖4-23用戶反饋時序圖用戶反饋的展示頁面如圖4-24。圖4-24用戶反饋頁面實現(xiàn)4.4.6用戶評論功能的實現(xiàn)用戶在進入推薦系統(tǒng)之后,點開商品,用戶可以在評論框輸入對本商品的評論內容,點擊提交可以實現(xiàn)評價,頁面再把用戶的評價提交到Controller層中UserController類中,然后調用addComment()方法將用戶的請求提交至service層,通過調用service層的addCommentSer()方法再向dao層進一步提交請求,最后調用Dao層的addCommentDao()方法向數(shù)據庫中更新評論信息,然后將數(shù)據庫信息封裝到實體。用戶評論的時序圖如圖4-25。圖4-25用戶評論時序圖用戶評論的頁面實現(xiàn)如圖4-26所示,用戶的評論展示頁面如圖4-27所示。圖4-26用戶評論頁面實現(xiàn)圖4-27用戶評論展示頁面實現(xiàn)5系統(tǒng)測試在保證系統(tǒng)質量和穩(wěn)定運行方面,軟件測試有著重要作用,系統(tǒng)測試可以識別和糾正可能存在的缺陷和錯誤,包括功能性錯誤,性能問題,兼容性問題,安全漏洞等,通過對系統(tǒng)全面的測試,可以確定系統(tǒng)是否能滿足用戶需求和預期REF_Ref4205\r\h[8],高質量的系統(tǒng)可以提高客戶留存率,增強用戶體驗,促進業(yè)務發(fā)展。5.1前臺功能測試5.1.1注冊模塊測試測試目的:主要對密碼格式和非空進行測試。測試方法:黑盒測試REF_Ref19908\r\h[9]注冊模塊測試數(shù)據如下表5-1。表5-1用戶注冊模塊測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1驗證注冊功能正確性1.成功打開注冊頁面2.輸入正確用戶名3.輸入正確密碼4.點擊注冊用戶名:yyy密碼:123456注冊成功正確2進行錯誤密碼格式校驗1.成功打開注冊頁面2.輸入正確用戶名3.輸入錯誤密碼4.點擊登錄用戶名:yyy密碼:12345注冊失敗,用戶名的長度在6-15個字符之間正確3進行空密碼校驗1.成功打開登錄頁面2.輸入正確用戶名3.輸入空密碼4.點擊登錄用戶名:yyy密碼:注冊失敗,請輸入密碼正確4進行空用戶名校驗1.成功打開注冊頁面2.輸入空用戶名3.輸入正確密碼4.點擊登錄用戶名:密碼:123456登錄失敗,請輸入用戶名正確續(xù)表5-15驗證空用戶名校驗1.成功打開登錄頁面2.輸入空用戶名3.輸入正確密碼4.輸入錯誤驗證碼5.點擊登錄用戶名:密碼:12345登錄失敗,請輸入用戶名正確5.1.2登錄模塊測試測試目的:對用戶名,密碼以及驗證碼的正確性進行測試。測試方法:黑盒測試登錄模塊測試數(shù)據如下表5-2。表5-2登錄模塊測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1進行準確性校驗1.成功打開登錄頁面2.輸入正確用戶名3.輸入正確密碼4.輸入正確驗證碼5.點擊登錄用戶名:yyy密碼:123456登錄成功正確2進行錯誤用戶名校驗1.成功打開登錄頁面2.輸入錯誤用戶名3.輸入正確密碼4.輸入正確驗證碼5.點擊登錄用戶名:yy密碼:123456登錄失敗,用戶名或密碼錯誤正確3進行錯誤密碼校驗1.成功打開登錄頁面2.輸入正確用戶名3.輸入錯誤密碼4.輸入正確驗證碼5.點擊登錄用戶名:yyy密碼:12345登錄失敗,用戶名或密碼錯誤正確4進行錯誤驗證碼校驗1.成功打開登錄頁面2.輸入正確用戶名3.輸入正確密碼4.輸入錯誤驗證碼5.點擊登錄用戶名:yyy密碼:12345登錄失敗,驗證碼錯誤正確續(xù)表5-25驗證空用戶名校驗1.成功打開登錄頁面2.輸入空用戶名3.輸入正確密碼4.輸入錯誤驗證碼5.點擊登錄用戶名:密碼:12345登錄失敗,請輸入用戶名正確6驗證空密碼校驗1.成功打開登錄頁面2.輸入正確用戶名3.輸入空密碼4.輸入正確驗證碼5.點擊登錄用戶名:yyy密碼:登錄失敗,請輸入密碼正確5.1.3個人信息管理功能測試測試目的:主要對密碼正確性以及功能性進行測試測試方法:黑盒測試個人信息管理模塊測試數(shù)據如下表5-3。表5-3個人信息管理功能測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1修改信息功能正確性校驗1.打開個人信息頁面2.輸入正確密碼3.點擊確定用戶名:張強密碼:123457修改信息成功正確2錯誤密碼格式校驗1.打開個人信息頁面2.輸入錯誤密碼3.點擊確定用戶名:張強密碼:12345用戶名長度在6-15字符之間正確3進行空密碼校驗1.成功打開個人信息頁面2.輸入空密碼3.點擊確定用戶名:張強密碼:請輸入密碼正確5.1.4推薦功能測試測試目的:驗證協(xié)同過濾推薦算法的準確性;推薦內容多樣性測試。測試方法:在線對比測試。(1)推薦算法準確性測試推薦功能測試數(shù)據如下表5-4。表5-4推薦功能準確性測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1驗證功能正確性1.針對已知用戶興趣和需求,模擬用戶加購商品行為2.檢查推薦內容是否與用戶行為相關。用戶:張三品牌:華為推薦品牌為華為正確2驗證功能正確性1.針對已知用戶興趣和需求,模擬用戶收藏商品行為2.檢查推薦內容是否與用戶行為相關。用戶:張三品牌:小米推薦品牌為小米正確3驗證功能正確性1.針對已知用戶興趣和需求,模擬用戶購買商品行為2.檢查推薦內容是否與用戶行為相關。用戶:張三品牌:蘋果推薦品牌為蘋果正確4驗證功能正確性1.創(chuàng)建測試用戶賬號,利用已有用戶進行加購商品行為2.測試用戶推薦內容是否與已有用戶的推薦一致測試用戶:yyy已知用戶:張三品牌:華為推薦品牌為華為正確5驗證功能正確性1.創(chuàng)建測試用戶賬號,利用已有用戶進行收藏商品行為2.測試用戶推薦內容是否與已有用戶的推薦一致測試用戶:yyy已知用戶:張三品牌:小米推薦品牌為小米正確6驗證功能正確性1.創(chuàng)建測試用戶賬號,利用已有用戶模擬購買商品行為2.測試用戶推薦內容是否與已有用戶的推薦一致測試用戶:yyy已知用戶:張三品牌:蘋果推薦品牌為蘋果正確7驗證功能正確性1.用戶以游客身份直接進入系統(tǒng)的首頁2.查看推薦模塊能否根據其他用戶的加購產品行為來為游客進行推薦用戶:已知用戶:張三品牌:華為推薦品牌為華為正確8驗證功能正確性1.用戶以游客身份直接進入系統(tǒng)的首頁2.查看推薦模塊能否根據其他用戶的收藏產品行為來為游客進行推薦用戶:已知用戶:張三品牌:小米推薦品牌為小米正確續(xù)表5-49驗證功能正確性1.用戶以游客身份直接進入系統(tǒng)的首頁2.查看推薦模塊能否根據其他用戶的購買產品行為來為游客進行推薦用戶:已知用戶:張三品牌:蘋果推薦品牌為蘋果正確(2)推薦內容多樣性測試推薦功能測試數(shù)據如下表5-5。表5-5推薦內容多樣性測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1驗證內容多樣性1.模擬用戶瀏覽,加購,收藏商品2.測試推薦內容是否為不同屬性用戶:黃麗推薦內容為不同品牌且屬性不同的手機商品正確2驗證內容多樣性1.模擬已有用戶瀏覽,加購,收藏商品2.創(chuàng)建測試用戶,觀察推薦內容是否為不同屬性測試用戶:yyy已知用戶:黃麗推薦內容為不同品牌且屬性不同的手機商品正確3驗證內容多樣性1.模擬已有用戶瀏覽,加購,收藏商品,2.以游客身份進入系統(tǒng),觀察推薦內容是否為不同屬性用戶:空已知用戶:黃麗推薦內容為不同品牌且屬性不同的手機商品正確5.1.5訂單創(chuàng)建功能測試測試目的:主要對購買商品過程進行以及輸入收貨人電話格式的正確性測試測試方法:黑盒測試訂單創(chuàng)建功能測試數(shù)據如下表5-6。表5-6訂單創(chuàng)建功能測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1驗證創(chuàng)建訂單正確性1.成功打開商品信息頁面2.點擊購買3.輸入正確電話格式4.點擊確定電話買成功正確續(xù)表5-62進行錯誤電話格式校驗1.成功打開商品信息頁面2.點擊購買3.輸入錯誤電話格式4.點擊確定電話輸入正確的電話號正確3進行空電話校驗1.成功打開商品信息頁面2.點擊購買3.輸入空電話格式4.點擊確定電話:空請輸入電話號碼正確5.1.6反饋功能測試測試目的:主要對反饋內容是否為空進行測試測試方法:黑盒測試反饋功能測試數(shù)據如下表5-7。表5-7反饋功能測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1驗證反饋過程正確性1.成功打開反饋頁面2.輸入反饋內容3.點擊反饋用戶:反饋內容:1添加反饋信息成功正確2進行空反饋內容校驗1.成功打開反饋頁面2.輸入反饋內容3.點擊反饋用戶:徐天反饋內容:請輸入反饋信息正確5.1.7評論功能測試測試目的:主要對反饋內容是否為空進行測試測試方法:黑盒測試評論功能測試數(shù)據如下表5-8。表5-8反饋功能測試結果序號測試用例描述操作過程測試數(shù)據預期結果驗證結果1驗證反饋過
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工智能算法測試員安全技能測試強化考核試卷含答案
- 職業(yè)生涯規(guī)劃師安全管理能力考核試卷含答案
- 基材人造板處理與飾面材料選配工沖突管理評優(yōu)考核試卷含答案
- 外延工安全培訓效果評優(yōu)考核試卷含答案
- 液晶顯示器件制造工崗前安全理論考核試卷含答案
- 重介質制備回收工崗前趨勢考核試卷含答案
- 數(shù)控水射流切割機操作工安全防護測試考核試卷含答案
- 抖音提成合同范本
- 快遞租房合同范本
- 抖音火花合同協(xié)議
- CMK自動計算公式表格模板
- 2023年考研考博考博英語東北大學考試歷年高頻考試題專家版答案
- 商場保安隊夜間清場安全檢查制度
- 《伶官傳》原文及譯文
- 2023-2024學年內蒙古自治區(qū)赤峰市小學語文四年級期末高分考試題詳細參考答案解析
- 組合房計算書
- 宋濂《送東陽馬生序》同步測練
- GB/T 36624-2018信息技術安全技術可鑒別的加密機制
- GB/T 34108-2017金屬材料高應變速率室溫壓縮試驗方法
- GB/T 2900.63-2003電工術語基礎繼電器
- GB/T 20329-2006端鍵傳動的銑刀和銑刀刀桿上刀座的互換尺寸
評論
0/150
提交評論