1概述
1.1系统目标
建立一个网上书店系统,提供在线浏览、选购图书、结算和查询订单等功能,方便顾客购买图书,提高书店的销售额和顾客满意度。
1.2 业务描述
(1)用户认证:包括未注册用户注册和已注册用户登录功能,用于对用户身份进行识别和验证。
(2)书籍浏览:将图书按照内容、体裁、作者等分类展示给顾客,方便顾客查询和选购。
(3)书籍选购:顾客可将喜欢的图书加入购物车,随时查看已选购的图书或放弃购买。
(4)用户结算:顾客选购完毕后,可选择结算方式,生成订单并支付,系统保存订单信息。
(5)用户信息管理:管理员可对用户信息进行查询和更新,保证用户信息的准确性和安全性。
(6)书籍信息管理:管理员可对图书进行添加、删除、修改和分类等操作,保证图书信息的完整性和准确性。
(7)订单信息管理:管理员可对订单进行存储、查询和删除等操作,保证订单信息的安全性和准确性。
1.3约束和限制
(1)用户认证:用户需要注册并登录才能进行购买和查询订单等操作。
(2)书籍浏览:顾客只能查看当前库存的图书信息。
(3)书籍选购:顾客在购物车中的图书数量不能超过库存数量。
(4)用户结算:顾客需要选择合适的支付方式,并确保支付成功。
(5)用户信息管理:管理员只能查询和更新用户信息,不能随意修改和删除用户信息。
(6)书籍信息管理:管理员只能对已有的图书进行操作,不能添加重复的图书信息。
(7)订单信息管理:管理员只能对未发货的订单进行修改或删除,已发货的订单只能由系统自动删除。
1.4系统运行环境
(1)网络环境:需要有稳定的网络连接,顾客和管理员可以通过互联网访问系统。
(2)服务器环境:需要有一台服务器来存储和处理用户、图书和订单等信息。
(3)数据库环境:需要有一个数据库用于存储用户、图书和订单等信息。
(4)前端界面:需要有一套用户友好的前端界面,方便顾客进行浏览、选购和结算等操作。
(5)后台管理界面:需要有一套后台管理界面,方便管理员对用户、图书和订单等信息进行管理和操作。
2业务现状分析
2.1业务流程模型
以下是书店的主要业务流程模型,按照不同的角色进行分泳道,包括顾客、销售人员、采购部、收银员和管理员:
书店业务流程模型
划分四个泳道:顾客,销售人员,采购部,收银员。
顾客 -->找书-->找到,购买。
-->找不到,询问销售人员-->有货,顾客挑选,销售开票,收银员收集书费,购买成功。
-->没货,顾客预定书籍,销售人员通知采购部进货,预定成功。
图2.1.1购买书籍业务活动图
只有一个泳道:销售人员。
销售人员-->按类别登记-->摆放位置-->寻找畅销书籍-->摆放畅销区。
图2.1.2整理书籍业务活动图
划分两个泳道:销售人员,采购部。
销售人员整理客户预定信息-->设置VIP客户-->征询意见。
销售人员整理票据-->登记畅销书-->计算库存量-->通知采购部-->采购部进货。
销售人员整理书籍预定信息-->通知采购部-->采购部进货。
图2.1.3购买书籍业务活动图
2.2业务改进点
根据以上业务流程模型,可以提出以下几个业务改进点:
引入自助购物系统:在书店内提供自助购物系统,顾客可以通过扫描图书的条形码或使用电子商务平台进行自助选购和结算,提高购物效率和便利性。
网上书店的建设:建设网上书店,使顾客可以通过互联网浏览、选购和支付图书,提供更多便捷的购书方式。
建立会员制度:根据顾客购买频率和金额等指标,建立会员制度,给予会员更多的优惠和特殊服务,以增加顾客的忠诚度和购买欲望。
数据分析和预测:对图书销售和预定信息进行统计分析,通过数据挖掘和机器学习等技术,预测热销图书和库存需求,以便更好地管理库存和满足顾客需求。
提供个性化推荐:根据顾客的购买历史和偏好,提供个性化的图书推荐,增加顾客的购买兴趣和体验。
完善售后服务:建立健全的售后服务机制,包括退换货政策、图书损坏的赔偿和维修等,提高顾客满意度和忠诚度。
引入无人书店技术:利用无人书店技术,实现自动化的书籍存取和结算,减少人力成本和提高服务效率。
3需求获取
3.1系统用例模型
系统参与者:
顾客:使用网上书店进行书籍浏览、选购、结算等操作的用户。
管理员:负责对用户信息、书籍信息、订单信息进行管理和维护的系统管理员。
系统用例:
用户认证
(1)未注册用户注册
(2)已注册用户登录
书籍浏览
(1)按内容、体裁、作者等分类展示书籍
书籍选购
(1)将书籍加入购物车
(2)查看已选书籍
(3)从购物车中删除书籍
用户结算
(1)显示客户订单
(2)选择结算方式
(3)下订单
(4)查询订单
(5)取消订单
用户信息管理
(1)查询用户信息
(2)更新用户信息
书籍信息管理
(1)添加书籍
(2)删除书籍
(3)修改书籍信息
(4)分类书籍
订单信息管理
(1)存储订单
(2)查询订单
(3)删除订单
用例模型
图3.1.1书店管理系统用例模型
用例之间的关系:
(1)用户认证包含:用户登录、用户注册。
(2)书籍选购包含:加入购物车、查看已选书籍、购物车删除书籍。
(3)用户结算包含:显示客户订单、选择结算方式、下订单、查询订单、取消订单。
(4)下订单包含存储订单,通过下订单将结算信息进行存储并返回订单详细信息。
(5)订单信息管理包含:存储订单、查找订单、删除订单。
(6)用户信息管理包含:查询用户信息、更新用户信息。
(7)书籍信息管理包含:添加书籍、删除书籍、修改书籍、分类书籍。
(8)书籍浏览的扩展为:按内容分类展示、按体裁分类展示、按作者分类展示。
重构后的用例模型:
图3.1.2书店管理系统重构后的用例模型
3.2系统用例描述
表3-2-1 “用户认证”用例文档
表3-2-2 “书籍浏览”用例文档
表3-2-3 “书籍选购”用例文档
表3-2-4 “用户结算”用例文档
表3-2-5 “用户信息管理”用例文档
表3-2-6 “书籍信息管理”用例文档
表3-2-7 “订单信息管理”用例文档
4系统分析
4.1 用户认证用例
1. 类模型
图4.1.1用户认证VOPC类图
2. 对象交互模型
(1)确定参与者:图书管理系统、顾客、数据库。
(2)确定事件触发:用户点击注册按钮或登录按钮。
(3)用户发送注册请求给系统,系统将用户注册信息存储到数据库中,注册成功转到登录界面,用户发送登录请求给系统,系统验证信息合法性后查询数据库中是否存在该用户的信息,系统反馈登录成功或失败的信息给用户。
图4.1.2用户认证动态交互模型
- 分析类定义
(1)定义用户类:首先定义一个用户类,包括用户的基本信息,如用户名、密码、邮箱等。
(2)注册功能设计:
用户输入注册信息,包括用户名、密码、邮箱等。
验证信息:对输入的注册信息进行验证,如检查用户名是否已经存在、密码是否符合要求等。
存储信息:将验证通过的注册信息存储到数据库中,创建一个新用户。
返回结果:返回注册结果,如注册成功或者注册失败的原因。
(3)登录功能设计:
用户输入登录信息,包括用户名和密码。
验证信息:对输入的登录信息进行验证,如检查用户名是否存在、密码是否正确等。
返回结果:返回登录结果,如登录成功或者登录失败的原因。
图4.1.3用户认证分析类图
4.2 书籍浏览用例
1. 类模型
图4.2.1书籍浏览VOPC类图
2. 对象交互模型
(1)确定参与者:图书管理系统、顾客、数据库。
(2)确定事件触发:用户选择分类浏览方式。
(3)用户发送查询请求给系统,系统将查询信息在数据库中查找,查询成功返回数据库信息,最后将查询结果展示在界面上。
图4.2.2书籍浏览动态交互模型
3. 分析类定义
(1)定义书籍信息类:首先定义一个书籍信息类,包括书籍的基本信息,如图书名称、作者、ISBN号等。
(2)定义图书类别类:其次定义一个图书类别信息类,包括图书类别基本信息,如类别名、类别概要信息等。
(3)书籍浏览功能设计:
分类查询:用户输入查询信息,书名或者具体的类别等。
选购:在浏览的同时可以进行选购。
图4.2.3书籍浏览分析类图
4.3 书籍选购用例
1. 类模型
图4.3.1书籍选购VOPC类图
2. 对象交互模型
(1)确定参与者:图书管理系统、顾客、数据库。
(2)确定事件触发:添加、删除、查看选购。
(3)用户选择书籍加入购物车,将书籍加入到购物车,数据库信息进行更新,更新成功后将购物车信息返回,将结果展示在页面上。
图4.3.2书籍选购动态交互模型
3. 分析类定义
(1)定义购物车信息类:首先定义一个购物车信息类,包括选购的基本信息,如图书名称、数量、单价、日期等。
(2)书籍选购功能设计:
查询已选购:用户点击已选购,展示已选购的书籍信息和选购信息。
取消选购:用户可以对已经选购的书籍进行取消选购。
图4.3.3书籍选购分析类图
4.4 用户结算用例
1. 类模型
图4.4.1用户结算VOPC类图
2. 对象交互模型
(1)确定参与者:图书管理系统、顾客、数据库。
(2)确定事件触发:用户点击结算,进行结算流程。点击查询,进行本人订单查看。点击取消订单,对订单取消。
(3)用户点击结算,选择订单结算方式,将结算信息添加到数据库中,添加成功后返回数据库信息,将订单展示在界面上。
用户查询订单,用户可以看到全部的订单信息,输入具体查询信息,在数据库中进行查询,查询成功返回数据库信息,将结果展示在界面上。
用户取消订单,点击取消,在数据库中进行删除,取消成功返回数据库信息,将取消后结果展示在界面上。
图4.4.2用户结算动态交互模型
3. 分析类定义
(1)定义结算信息类:首先定义一个结算信息类,包括结算的基本信息,如书名、单价、购买数量等。
(2)用户结算功能设计:
显示订单:用户点击结算后,显示详细的订单的信息。
结算方式选择:用户选择需要的结算方式。
下订单:用户点击下订单,将结算信息保存到数据库中。
查询订单:用户输入查询信息,进行查询,将查询结果显示在界面上。
取消订单:用户点击取消订单,将取消后的结果显示在界面上。
图4.4.3用户结算分析类图
4.5 订单信息管理用例
1. 类模型
图4.5.1订单信息管理VOPC类图
2. 对象交互模型
(1)确定参与者:图书管理系统、管理员、数据库。
(2)确定事件触发:查找、删除。
(3)用户输入查询条件,查询订单,在数据库中按条件进行查询,查询成功后,将查询结果展示在界面上;用户删除订单,数据库删除相应的订单,删除成功后,将删除后的信息展示在界面上。
图4.5.2订单信息管理动态交互模型
3. 分析类定义
(1)定义订单信息类:首先定义一个订单信息类,包括订单的基本信息,如图书名称、数量、单价、总金额、订单编号、日期等。
(2)订单信息管理功能设计:
查找订单:用户输入查找条件,点击查找,展示查找的订单。
删除订单:管理员对订单进行删除,点击删除,展示删除后的订单信息。
存储订单:系统对订单进行存储,下订单后,系统将结算信息存储到订单信息中,并生成订单编号和总金额等具体信息。
图4.5.3订单信息管理分析类图
4.6 用户信息管理用例
1. 类模型
图4.6.1用户信息管理VOPC类图
2. 对象交互模型
图4.6.2用户信息管理动态交互模型
3. 分析类定义
图4.6.3用户信息管理分析类图
4.7 书籍信息管理用例
1. 类模型
图4.7.1书籍信息管理VOPC类图
2. 对象交互模型
图4.7.2书籍信息管理动态交互模型
3. 分析类定义
图4.7.3书籍信息管理分析类图
5总结与展望
总结:
1.该系统用户可以通过注册和登录功能进行身份识别和验证,浏览图书并按照分类进行查询和选购,将喜欢的图书加入购物车,随时查看已选购的图书或放弃购买,选择合适的支付方式进行结算并生成订单,管理员可以对用户信息、图书信息和订单信息进行管理和操作。
2.系统设置了一些约束和限制,包括用户需要注册并登录才能进行购买和查询订单等操作,顾客只能查看当前库存的图书信息,顾客在购物车中的图书数量不能超过库存数量,顾客需要选择合适的支付方式并确保支付成功,管理员只能查询和更新用户信息,不能随意修改和删除用户信息,管理员只能对已有的图书进行操作,不能添加重复的图书信息,管理员只能对未发货的订单进行修改或删除,已发货的订单只能由系统自动删除。
3.本系统需要有稳定的网络连接,顾客和管理员可以通过互联网访问系统。需要有一台服务器来存储和处理用户、图书和订单等信息,同时需要一个数据库用于存储用户、图书和订单等信息。另外,需要有一套用户友好的前端界面和一套后台管理界面,方便顾客进行浏览、选购和结算等操作,方便管理员对用户、图书和订单等信息进行管理和操作。
4.用例图从用户角度描述系统功能,并指出各功能的操作者。通过本次实验,我熟悉rational rose建模环境,更加清楚的了解了用例图的语义和功能,如何清晰明了的识别参与者、用例,学会了如何使用事件流描述用例。同时掌握了用例间的类属关系、include关系和extend关系的语义、功能和应用。最后通过本次实验学习了如何使用用例图为系统的上下文以及系统的需求建模。
5.类图是面向对象系统建模最常用的图,通过本次实验,加深了我对类图语义的理解和功能的应用,掌握了类之间的联系,关联、依赖、聚合等,同时基本掌握了在rational rose中绘制类的关联、依赖、泛化关系。
7.顺序图描述了对象之间的动态合作关系,实验过程中由于对rational rose工具软件的不熟识,导致出现了不该出现的错误。在设计阶段,顺序图中需要引入边界类和控制类,在识别对象职责的基础上,需要将消息转换为类的方法,为方法定义参数、返回值类型,便于计算机的实现。其中,为方法定义参数、返回值类型的时候,还是不能够快速准确的作出判断。
展望:
引入推荐系统:根据用户的购买历史、浏览记录和兴趣偏好等信息,为用户推荐相关图书,提高用户购买的准确性和便捷性。
增加评价和评论功能:用户可以对购买过的图书进行评价和评论,方便其他用户了解图书质量和内容,提高用户满意度和购买决策的准确性。
引入会员制度:设立不同级别的会员,提供不同的优惠政策和特权,增加用户的忠诚度和购买意愿。
拓展商品范围:除了图书,可以考虑增加其他相关商品的销售,如文具、文化衍生品等,扩大产品线,增加销售额。
加强安全保护:加强用户信息和支付信息的安全保护措施,确保用户的隐私和资金安全。
扩展到移动端:开发移动端的应用程序,方便用户随时随地进行图书选购和结算等操作,提升用户体验。
总之,随着电子商务的快速发展,图书管理系统作为一个在线销售平台,具有广阔的发展前景。通过不断改进和优化,可以提升用户体验,提高销售额和顾客满意度,为用户提供更便捷、高效的图书购买服务。
6心得体会
通过本次实验,我大概掌握了面向对象建模的基本方法,掌握软件系统分析的一般建模过程,能够运用建模工具(例如Rational ROSE)绘制UML图,能够运用面向对象原理、方法与技术进行系统分析,熟练运用UML图建立系统业务模型和分析模型。完成用例图之后,给我最大的感受就是一定要把课堂上学到的知识用到实践中。以前总觉得老师在上课讲的东西很简单,当真正操作起来的时候,才发现没那么容易,将课堂知识运用到实践中才是真正掌握了知识。实训的日子即将结束,回想这一周,有过痛苦,有过烦恼,有过喜悦和有过成功。痛苦烦恼的是自己对所学书本知识掌握得不是很扎实,面对着从书本上学到的知识与实际联系不起来,总结起来就是自己的动手练习的时间太少。而喜悦的是,在做的过程中遇到了困难和问题,主动向老师和会的同学请教,然后再做,直至做正确做成功后的那种喜悦。
团队的力量是无穷的,通过组员的共同努力,完成了实训项目。虽然,我们这组的项目存在着诸多的不足和缺点,但这正是以后学习和工作需要弥补的。这次实训将为我们以后进入社会提过了一笔宝贵的财富,是对我们能力的一个见证。最后,不得不感谢指导教师王俊华老师的辛勤指导,和小组成员的共同努力!