广州大学学生实验报告(一)
开课学院及实验室:
学院 | 年级/专业/班 | 姓名 | 学号 | ||||
实验课程名称 | 软件工程导论实验 | 成绩 | |||||
实验项目名称 | 指导老师 |
一、实验目的
掌握需求建模技术,能够撰写需求规格说明文档。
二、实验器材
- 计算机一台;
- Rational Rose 等支持需求建模的软件。
三、实验内容
本实验需要完成如下任务:
- 系统概述以及自己负责的功能模块或子系统的描述;
系统概述:
网络书城系统是一个综合性的电子商务平台,旨在为用户提供便捷、多样化的图书购物和浏览体验。系统主要分为网络书城用户管理系统和网络书城商品管理系统两大模块,涵盖了游客、用户、商家和客服等多个角色,以满足不同用户需求和提供良好的服务体验。
网络书城系统通过用户管理和商品管理两大模块的协同作业,为用户提供了全面的购物和服务体验,涵盖了从浏览图书到下单购买再到售后服务的完整流程。
网络书城用户管理系统(该部分由我的小组同学负责):
网络书城用户管理系统主要包括系统中图书的查询与购买等操作、账号的注册与登录等操作、个人信息的修改等。该子系统的主要参与人员为游客和用户。具体如下:
游客的相关行为:
①游客具有查询图书信息和在线浏览图书的权限。由查询图书信息拓展出来了普通查询和高级查询的查询选项;
②游客具有登录账号的权限。由此扩展出了忘记密码用例和注册账号用例。其中,注册账号又可以泛化为手机号注册、微信注册、QQ注册;
用户的相关行为:
①用户具有查询图书信息和在线浏览图书的权限。由查询图书信息拓展出来了普通查询和高级查询的查询选项;
②用户具有登录账号的权限。由此扩展出了忘记密码用例和注册账号用例。其中,注册账号又可以泛化为手机号注册、微信注册、QQ注册;
③用户具有查询浏览记录的权限。由此扩展出了删除浏览记录的用例;
④用户具有修改个人信息的权限。修改个人信息的范围包括:绑定/修改手机号、绑定/修改QQ、绑定/修改微信、修改支付密码、修改昵称、修改个人简介、修改收货地址;
⑤用户具有购买图书的权限。用户购买图书时,可以选择直接将需要购买的图书直接提交订单,也可以先将需要购买的图书加入到购物车中,然后再进行提交订单;
⑥用户能够通过客服进行咨询。由此扩展出了评价客服的用例。
网络书城商品管理系统:
网络书城商品管理系统主要包括系统中图书订单的处理操作、图书的管理等。该子系统的主要参与人员为商家和客服。具体如下:
商家的相关行为:
①商家具有发布图书信息的权限。由此拓展出来了图书信息发布后的更新图书信息功能;
②商家具有查询某类图书的库存信息和更新图书库存信息的权限;
③商家具有处理图书订单的权限,具体包括:修改客户订单、删除客户订单、拆分订单(实际上这个操作由系统自动完成,无需商家手动操作)、查询订单。
客服的相关行为:
①客服具有查询图书订单的权限;
②客服具有查询某类图书的库存信息的权限;
③客服应该与客户进行对接,其需要处理客户咨询,必要时,记录下客户的有效反馈信息。
系统自动完成的行为:
①用户提交订单后,系统会自动生成相应的订单,并提示用户在规定时间内需要完成订单的支付。若超过规定时间,该订单自动取消;
②系统自动生成相应的订单后,用户可以取消订单或修改个人信息。其中,修改个人信息包括修改收货地址和修改收货联系方式;
③用户完成订单支付的方式包括三种,即银行卡支付、微信支付、支付宝支付。用户完成订单支付后不想购买次商品了,若用户尚未收到图书,可以选择退款;若已收到图书,可以选择退货退款。若用户拍错了图书或者是图书质量欠佳,也可以选择换货。
- 绘制完整用例图,并对其中的3个用例进行用例描述;
用例编号 | UC001 |
用例名称 | 生成订单。 |
用例描述 | 该用例描述用户下单的行为。 |
参与者 | 用户。 |
前置事件 | 用户成功登录网络书城系统并点击图书信息发布选项。 |
后置事件 | 如果满足要求,下单成功,提示“订单支付成功”;否则,提示“用户订单未完成”。 |
基本事件流 |
|
扩展事件流 | 5a、该单品号对应的库存量为空,提示“无货”; 9a、用户取消支付,提示“订单待支付”。 |
用例编号 | UC002 |
用例名称 | 库存更新。 |
用例描述 | 该用例描述商家对图书库存进行更新的行为。 |
参与者 | 商家。 |
前置事件 | 商家成功登录网络书城系统并点击库存更新选项。 |
后置事件 | 如果满足要求,图书库存更新成功;否则,提示“图书库存更新失败”。 |
基本事件流 |
|
扩展事件流 | 2a、商家权限异常,图书库存更新出错,提示“无法进行图书库存更新”; 6a、指定图书类型对应的库存数量为空,提示“图书库存更新失败”; |
用例编号 | UC003 |
用例名称 | 拆分订单。 |
用例描述 | 该用例描述一个订单拆分为多个订单的行为。 |
参与者 | 系统。 |
前置事件 | 用户下单并成功支付。 |
后置事件 | 如果满足要求,订单已成功拆分,进行发货处理;否则,提示“拆分出错”,等待下一步处理。 |
基本事件流 |
7、订单中的所有订单项拆分成功。 |
扩展事件流 | 4a、该商家号对应的商品型号库存为空,订单拆分出错,提示“某商家号某型号的商品库存不足”; 5a、商家号及其商品型号已存在于送货单中,在该商家号对应的型号中添加新的产品号,送货单中该型号的产品数量+1; 6a、用户修改订单,满足用户修改订单的相关请求; 6b、用户取消订单,将所有相关记录作废(但不删除记录),返还用户支付费用。 |
四、实验感想
1、在本实验中,我们根据课堂上写过的网络书城系统用例图进行优化升级,更加深入地领悟到了用例图的设计思想以及用例描述的撰写。
2、在网络书城系统这个用例图中,没有用包含关系,因为包含关系的条件(父用例的实现要求所有子用例均满足)在此系统中没有得到满足。反而,用到的更多的是直线的形式来表示不同用例之间的关系,因为在很多情况下,用例之间的关系不满足包含关系、泛化关系和扩展关系,所以用直线表示。
3、在网络书城系统用例图的设计过程中,我和小组成员共同设计,查漏补缺,从系统参与人员的视角和系统子模块的视角来设计用例图。