摘 要:本系统采用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)
作者简介
王梦霞,女,山东莒南,副教授,硕士,研究方向:软件工程