软件工程 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1 |
---|---|
作业要求 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10769 |
作业目标 | 项目需求分析模型 |
作业正文 | 详见下文 |
参考文献 | 百度 |
《二手交易市场》项目需求分析模型
一、非功能性需求
1.性能(PErformance)需求
PE-1:数据精确度
- 查询信息时应保证查全率,所有相应域包含查询关键字的记录都应该查到。
- 查询信息应保证查准率,查到的记录应与给定的查询条件完全匹配。
PE-2:时间特性
- 该APP具体时间特性要求要根据网速来决定。我们将最大限度的减少系统响应时间,最小化更新处理时间和数据转换时间。
PE-3:系统容量需求
- 注册用户:3500以上
- 在线用户:1500以上
- 并发数:500以上
PE-4:适应性
- 满足用户的使用需求。
2.安全性(SEcurity)需求
SE-1:所有涉及功能信息或个人身份信息的网络事务都要进行加密操作。
SE-2:除了浏览页面外,用户必须登录到“校园二手书交易的移动应用平台”才能完成其他的操作。
SE-3:用户的登录受计算机系统访问控制策略的限制。
SE-4: 系统只允许用户浏览他们自己以前的订单,而不能浏览其他用户的订单。
SE-5:网络安全:能经受来自互联网的一般性恶意攻击。
SE-6:数据库安全:数据库级备份和恢复。数据库级用户进行角色和权限授权。使得在异常情况发生时,系统得以快速恢复,避免数据的丢失或将其影响降到最低限度。同样,要保证存储过程中数据不被非法访问和篡改。
3.软件质量属性
正确性:
- 要求发布的网页达到用户的预期目标,运行时基本无错误。
可靠性:
- 对于编写好的软件,会进行大量的测试,不断地查找里面出现的bug,并及时的对其进行修改,尽可能的减少bug的数量。随着用户量的增加,我们会及时的更新我们的服务器和数据库,从而保证网站的可靠性。避免用户量太大,而造成服务器瘫痪,影响网站的可靠性。
效率性:
- 对于浏览、查询、添加、删除、更新等一般操作,要求及时响应,在2~3秒内。
- 要求能在发生意外的情况下,保证不丢失数据。
易使用性:
- 对于网站的主界面设计,我们是参考了一些成功的网站设计,借鉴了这些网站的成功的经验。深入的研究他们用户界面的设计,吸取精华。
- 在设计网站的时候,将每个模块都分别独立开来,对于一些页面,我们将其做成了模板,在使用的时候进行母版页加载即可。这样可以集中精力放在代码块的构造与实现上。避免了一些不必要的困扰。在代码设计过程中,尽可能的减少模块之间的耦合性。做到模块和模块之间的分离。这样,日后的维护具有较好的方便性。
可测试性:
- 设计时尽可能减少测试本软件的各项功能所需的工作量。
复用性:
- 设计时应采取模块化的方法进行设计,对系统内各模块接口尽可能达到聚、低耦合的程度,以提高各模块的复用性。
可理解性:
- 对于本网站提供的各种命令,各种信息提示,应易于用户理解。
互联性:
- 要求提供数据得到如何导入和导出接口,以易于同其他系统的连接。
可移植性:
- 支持其他服务器部署及使用。
二、功能性需求
1.用例图
-
第2次团队作业链接:https://www.cnblogs.com/Ultramaneight/p/12774130.html
-
第一张是围绕用户展开的用例图。
-
用户在注册前可以找回密码和查询商品信息,它们是关联关系。
-
注册后才可登录,所以登录用例依赖于注册用例;发布商品、购买商品等用例依赖于登录用例,它们都是依赖关系。
-
第二张是围绕管理员展开的用例图。
-
同理管理员登录前可查询商品信息,它们是关联关系。
-
审核商品信息、查看个人信息等用例依赖于登录用例,它们是依赖关系。
2.用例描述
2.1.注册
- 用例名:注册
- 用例编号:01
- 用例描述:填写相关信息进行注册。
- 参与者:用户。
- 前置条件:该用户不能是已经注册的用户(账号不能已经存在)。
- 基础事件流:1.点击注册2.系统显示注册页面3.用户填写账号密码等信息,再点击注册4.注册成功后跳转到登录页面进行登录。
- 后置条件:后台系统正确地收集用户提交的信息并保存到数据库中。
2.2.登录
- 用例名:登录
- 用例编号:02
- 用例描述:通过账户名和密码进行登录。
- 参与者:用户,管理员。
- 前置条件:1.用户已经注册成功,进入登录页面2.数据库中有相关管理员信息,进入登录页面。
- 基础事件流:1.填入账号、密码,点击提交2.系统验证账号和密码3.验证成功,跳转到首页。
- 后置条件:用户或者管理员所输入的信息与后台系统数据库表中保存的信息一致。
2.3.找回密码
- 用例名:找回密码
- 用例编号:03
- 用例描述:通过注册时候的邮箱来找回密码。
- 参与者:用户。
- 前置条件:用户已经注册成功,登录时忘记账户密码。
- 基础事件流:1.点击找回密码2.填写邮箱等信息,点击提交。
- 后置条件:数据库中查找到该用户密码并邮箱发送给该用户。
2.4.查看个人信息
- 用例名:查看个人信息
- 用例编号:04
- 用例描述:用户查看自己的个人信息。
- 参与者:用户。
- 前置条件:该用户已经注册并且登录。
- 基础事件流:1.点击首页导航栏中的“我的”。2.查看页面显示的个人信息。
- 后置条件:无
2.5.查询商品信息
- 用例名:查询商品信息
- 用例编号:05
- 用例描述:在搜索栏中进行指定商品信息、或者点击分类浏览。
- 参与者:用户,管理员。
- 前置条件:1.用户已经登录2.管理员已经登录。
- 基础事件流:1.点击商品图片或者文字描述进入商品页详情2.查看商品页详情。
- 后置条件:无
2.6.发布商品
- 用例名:发布商品
- 用例编号:06
- 用例描述:用例主要功能是发布商品,包括商品的图片、名称、价格、描述、分类、以及其他信息(几成新、不讲价、自提等)。
- 参与者:用户。
- 前置条件:卖家已经过登录,并且进入到发布界面。
- 基本事件流:1参与者动作:添加图片、填写商品信息、商品描述。
- 系统响应:后台数据库进行相关的写入操作。
- 其他事件流:显示商品发布成功,发布的商品出现在自己的已发布商品和首页中。
- 后置条件:无
2.7.求购商品
- 用例名:求购商品
- 用例编号:07
- 用例描述:用例主要功能是发布求购商品,包括商品的图片、名称、能够接受的价格、求购描述、分类、以及其他信息。
- 参与者:用户
- 前置事件流:卖家已经过登录,并且进入到发布界面。
- 基本事件流:1 参与者动作:添加图片、填写求购商品的信息、商品描述。
- 系统响应:后台数据库进行相关的写入操作。
- 其他事件流:显示商品发布求购成功,求购的商品出现在我的求购商品和首页中。
- 后置条件:连接数据库,向表中添加刚刚买家填入的信息。
2.8.审核商品信息
- 用例名:审核商品信息
- 用例编号:08
- 用例描述:管理员输入要查看的商家的商品信息,网站显示该商家的商品信息。
- 参与者:管理员。
- 前置条件:管理员登录到网站。
- 后置条件:输入要查看的商家商品信息后,显示该商家商品的详细信息。
- 基本事件流:1.管理员输入查看某商家的某商品信息2.管理员提交输入信息3.网站对输入商家商品信息查看数据库4.网站返回商家商品的信息。
2.9.处理售后
- 用例名:处理售后
- 用例编号:09
- 用例描述:管理员对买卖家之间出现的售后问题进行调解。
- 参与者:管理员,用户。
- 前置条件:管理员登录到网站。
- 后置条件:接收到经买(卖)家请求介入买卖双方的交易纠纷。
- 基本事件流:1.管理员接收到请求2.管理员联系买(卖)家了解纠纷起因3.管理员就纠纷起因进行调解。
2.10.进行评价
- 用例名:进行评价
- 用例编号:10
- 用例描述:买家对交易体验进行评价。
- 参与者:用户
- 前置条件:已经购买商品,已收货。
- 基础事件流:1.用户登录到网站2.打开“我买到的”,点击评价3.写一段评价,点击提交。
- 后置条件:无
2.11.购买商品
- 用例名:购买商品
- 用例编号:11
- 用例描述:用户相中心仪的商品并购买。
- 参与者:用户
- 前置条件:用户已经登录账号,查看该商品并与该商品卖家进行会话。
- 基础事件流:1.用户登录到网站2.点进商品详情页,点击“我想买”与卖家会话3.会话顺利,购买商品。
- 后置条件:无
2.12.会话
- 用例名:会话
- 用例编号:12
- 用例描述:查看商品详情后很心仪,用户与卖家用户对商品细节之类的进行会话。
- 参与者:用户
- 前置条件:用户已经登录账号。
- 基础事件流:买家用户:1.用户登录到网站2.点进商品详情页,点击“我想买”与卖家会话3。与卖家用户线上会话。
- 卖家用户:1.会话页收到买家用户的信息2.与买家用户线上会话
- 后置条件:无
3.顺序图
- 以下顺序图是经过组员一起讨论修改后的。
- 顺序图中UI是边界类,我们把二手交易市场所有网站界面都归于这个类。
3.1.注册
3.2.登录
3.3.找回密码
3.4.查看个人信息
3.5.查询商品信息
3.6.发布商品
3.7.求购商品
3.8.审核商品信息
3.9.处理售后
3.10.进行评价
3.11.购买商品
3.12.会话
4.分析类图
- IUserBO负责用户的属性;IUserBiz负责用户的行为。
- IAdministratorBO负责管理员的属性;IAdministratorBiz负责管理员的行为。
- IGoodsBO负责用户的属性;IGoodsBiz负责用户的行为。