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