摘 要:本系統(tǒng)采用SSH框架、選擇B/S架構(gòu),開發(fā)出社區(qū)超市在線購物系統(tǒng)。本文從系統(tǒng)的功能性和非功能性兩方面進行需求分析,并在此基礎(chǔ)上制訂了系統(tǒng)的總體設(shè)計方案,包括系統(tǒng)的功能設(shè)計、架構(gòu)設(shè)計、系統(tǒng)建模以及數(shù)據(jù)庫設(shè)計。
關(guān)鍵詞:在線購物系統(tǒng);SSH框架;B/S架構(gòu)
1 系統(tǒng)的需求分析
1.1 設(shè)計目標
本系統(tǒng)旨在帶給居民更加高效、便捷的購物體驗。具體目標包括以下五個方面的內(nèi)容。
①系統(tǒng)符合超市的購物流程。②系統(tǒng)維護和更新方便,適用范圍廣。③界面友好,能提供更多的操作提示。④系統(tǒng)能快速穩(wěn)定地運行。⑤系統(tǒng)具有很高的擴展性,便于及時添加新的功能模塊。
1.2 可行性分析
1.2.1 操作可行性分析
系統(tǒng)設(shè)計應(yīng)該遵循的原則是簡單易用。因此系統(tǒng)的界面必須采用人性化的設(shè)計以符合方便快捷的特性。本系統(tǒng)采用B/S架構(gòu)的設(shè)計模式,能夠讓用戶更快地熟悉系統(tǒng),了解各項功能的操作并及時得到提示信息。
1.2.2 技術(shù)可行性分析
①硬件可行性分析。本系統(tǒng)的硬件要求比較低,只需在一般的臺式電腦或筆記本電腦上安裝一個瀏覽器,就可以實現(xiàn)對數(shù)據(jù)庫的訪問等業(yè)務(wù)操作。另一方面,對服務(wù)器的硬件水平要求較高,要求服務(wù)器端的處理器、存儲和空間都要達到系統(tǒng)的最低配置,這些要求在企業(yè)內(nèi)部都是容易實現(xiàn)的,所以本系統(tǒng)的硬件具有可行性。②軟件可行性分析。Java語言是一種簡單易學(xué)、功能強大的語言。利用Java語言實現(xiàn)B/S架構(gòu)非常方便,并且Java語言提供了多種接口和編程方法,保證了安全性。SSH框架是開源易用的框架,在設(shè)計MVC三層架構(gòu)的系統(tǒng)這一方面具有絕對的優(yōu)勢。因此本系統(tǒng)的軟件也具有可行性。
1.3 功能性需求分析
從實際生活的角度出發(fā),再結(jié)合購物網(wǎng)站的設(shè)計標準,對本系統(tǒng)的角色劃分為管理員和用戶。管理員:主要包括增刪改查商品和類別信息、受理訂單、查詢營業(yè)記錄、查詢用戶信息等操作。用戶:主要包括增刪改查購物車信息、查看和取消訂單、修改個人信息等操作。
1.4 非功能性需求分析
從用戶體驗和軟件開發(fā)過程的角度出發(fā),本系統(tǒng)非功能性需求包括以下個方面的內(nèi)容。
①實用性。系統(tǒng)界面簡潔美觀、操作方便,同時滿足用戶多種購物需求。②先進性。系統(tǒng)必須采用目前先進的開發(fā)技術(shù)以便高效地開發(fā)出應(yīng)用程序,節(jié)省時間,降低開發(fā)成本。③可擴展性。系統(tǒng)在日后的升級或維護中必須很方便地擴充功能以滿足用戶多種購物需求。④安全性。本系統(tǒng)的主要功能是在線購物,因此保證用戶的消費安全和個人信息安全尤為重要。⑤交互性。對用戶和管理員的操作必須能及時提示相對應(yīng)的信息。
2 系統(tǒng)的概要設(shè)計
(1)開發(fā)環(huán)境。本項目采用SSH框架、SQL Server 2008數(shù)據(jù)庫、Tomcat服務(wù)器、選擇B/S架構(gòu),開發(fā)出社區(qū)超市在線購物系統(tǒng),實現(xiàn)了前臺模塊和后臺模塊的功能。
(2)系統(tǒng)架構(gòu)設(shè)計。
①架構(gòu)選擇。本系統(tǒng)選擇軟件行業(yè)先進的輕量級框架SSH作為總體架構(gòu)。Hibernate封裝JDBC減輕了程序員編寫代碼的負擔(dān),Spring AOP的動態(tài)注入技術(shù)使事務(wù)處理更加靈活、高效,通過集成SSH框架,本系統(tǒng)的開發(fā)工作變得相對簡單。
②架構(gòu)層次分析。系統(tǒng)技術(shù)架構(gòu)中,包括視圖層、核心控制層、業(yè)務(wù)控制層以及DAO層。視圖層主要由 JSP 網(wǎng)頁構(gòu)成,此外還包括 Action Form Bean、Validation 等,這部分組件提供對國際化、接收客戶端輸入的表單數(shù)據(jù)、表單驗證及錯誤處理等的支持。視圖層包括 index.jsp、allUser.jsp、myCart.jsp等JSP頁面。Action Servlet類是Struts框架自帶的核心控制器組件,也是本系統(tǒng)核心控制層,它的主要作用是截獲用戶的操作請求,然后按照系統(tǒng)配置將操作請求傳遞給相應(yīng)的業(yè)務(wù) Action 對象。業(yè)務(wù)控制層能夠從 Action Form 類中獲得客戶端輸入的表單數(shù)據(jù),也能夠?qū)碜韵到y(tǒng)模型層的數(shù)據(jù)存放至 Action Form Bean 中,然后再將它返回到視圖。Dao主要負責(zé)對數(shù)據(jù)庫的操作,目的是降低組件耦合度。Dao 類包括 OneUserBuyDAO類、TuserDAO類、BusinessLogDAO類等。從以上層次分析可以看出,本系統(tǒng)各個層次之間相互獨立,每一個層次具備特定的服務(wù),使用SSH架構(gòu)提高了系統(tǒng)的耦合性和可擴展性。
2.3 系統(tǒng)功能設(shè)計
(1)用戶模塊①登錄:輸入正確的用戶名和密碼后跳轉(zhuǎn)到用戶主頁面。格式要求:用戶名必須是15位有效字符;密碼必須是6位純數(shù)字。②注冊:提交符合要求的用戶名、手機號、密碼、性別、住址后才能注冊成功。其中,手機號輸入要求:必須是11位純數(shù)字;不能與已注冊的手機號重復(fù);現(xiàn)實中存在的手機號。性別設(shè)置成“男”“女”兩個單選按鈕。住址內(nèi)容不作具體要求,用戶填寫自己的住址即可。③修改個人信息:可以修改手機號、密碼、住址。④重置密碼:輸入注冊信息與數(shù)據(jù)庫進行校驗,校驗通過后,用戶填寫新密碼完成操作。⑤購物車管理:顯示用戶已訂購的商品信息和數(shù)量,統(tǒng)計消費金額。付款完成后生成訂單,同時清空當(dāng)前購物車。⑥訂單管理:顯示訂單列表。其中,訂單狀態(tài)分為“已受理”和“未受理”,用戶只能在“未受理”的狀態(tài)下取消訂單。⑦注銷:清空購物車并退出登錄,回到系統(tǒng)首頁。
(2)管理員模塊①登錄:輸入正確的用戶名和密碼后跳轉(zhuǎn)到管理員主頁。②修改登錄密碼:輸入正確的原密碼和格式正確的新密碼才能修改成功。③查看注冊用戶信息:出于用戶信息安全的考慮,管理員只能查看和搜索除密碼以外的用戶信息。④營業(yè)記錄管理:顯示總收入數(shù)目和每條進賬記錄。⑤商品類別管理:包括增刪改查操作。⑥商品管理:包括增刪改查操作。⑦訂單管理:每條訂單都包含訂購明細信息,受理訂單后,營業(yè)總收入會累加該訂單的消費金額。⑧注銷:退出登錄,回到系統(tǒng)首頁。
本文從系統(tǒng)的需求分析、功能設(shè)計、架構(gòu)設(shè)計、系統(tǒng)建模以及數(shù)據(jù)庫設(shè)計等方面進行設(shè)計,開發(fā)出社區(qū)超市在線購物系統(tǒng),實現(xiàn)了前臺模塊和后臺模塊的功能。
參考文獻
[1]谷岳青.基于JSP的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)[D].廈門:廈門大學(xué),2014.
[2]劉瑾.Java語言課程教學(xué)改革研究[J].福建電腦, 2014(9):161-162.
[3]胡元發(fā).基于J2EE架構(gòu)的SSH組合框架的設(shè)計與應(yīng)用[D].江蘇:蘇州大學(xué),2006.
山東協(xié)和學(xué)院實驗開放項目:社區(qū)超市在線購物系統(tǒng)的設(shè)計與實現(xiàn)(2017SYKF35)
作者簡介
王夢霞,女,山東莒南,副教授,碩士,研究方向:軟件工程