软件需求
1. 需求分类
其中,功能需求的开发围绕:目标(业务需求)---> 任务(用户需求)---> 交互(系统及需求)
的路线进行。
2 示例
2.1 项目需求
- 项目成本要控制在 60 万元人民币以下;
- 项目要在 6 个月内完成。
2.2 过程需求
- 开发过程中,开发者要提交软件需求规格说明文档;
- 项目要是用持续集成方法进行开发。
2.3 软件需求
2.3.1 功能需求
- 管理会员信息。(业务需求)
- 系统应记录会员的购买信息(用户需求)
- 收银员输入购买商品的标识时,系统要显示该商品的描述、单价。(系统及需求)
2.3.2 性能需求
- 所有的用户查询都必须在 10 秒内完成。
2.3.3 质量属性
- 在客户端与服务器端通信时,如果网络故障,系统不能出现故障。(可靠性)
- 系统的可用性要达到98%。(可用性)
- 收银员只能查看,不能修改、删除会员的信息。(安全性)
- 如果系统要增加新的特价类型,要能够在两个人月内完成。(可维护性,可维护性包括可扩展性和可修改性)
- 服务器要能够在一个人月内从 Windows7操作系统 更换到 Solaris10操作系统。(可移植性)
- 首次使用系统的户要能够在 10分钟内完成一次余额查询操作。(易用性 – 易学性)
- 使用系统一个月的收银员进行销售处理效率要达到 10件商品 /分钟。(易用性 – 效率)
- 五天内第二次使用系统的户要能够在 3分钟内完成一次余额查询操作。 (易用性 – 易记性)
- 收银员完成一次商品交易过 程中操作失误的数不得超3次 ,且每失误都能在 5秒内更正。(易用性 – 出错率)
- 系统投入运行后,通过调查问卷的方式用户满意程度应在 70%以 上。(易用性 – 主观满意度)
2.3.4 对外接口
- 每日报表中,标题的形式必须是
每日报告:dd-mm-yy
。 (对外接口包括用户界面、硬件软网络通信)
2.3.5 约束
- 系统要使用 Java语言 进行开发。
2.3.6 数据需求
- 系统要存储 1年内的销售记录和退货。
2.4 硬件需求
- 系统要购买专用服务器,其规格不低于 …
2.5 其他需求
- 系统投入使用时,要对户进行 1个
3. 习题
3.1 、下列描述中哪些是有效的功能性需求?请给出你选择理由。
- 在销售商品之后,系统应该更新库存的数量如果低于最低限值,系统应该发出警示信号。
- 属于有效的功能性需求。属于功能需求。
- 用户在使喷嘴给汽车加过油之后,应该将其放回原处。
- 不是有效的功能型需求。不属于软件开发需求。
- 每一个收银员都应该有一个记录,记录的内容包括名字和 ID号。记录应该被建立成链表的形式。
- 属于有效的功能性需求。属于数据需求。
- 开发组应该创建完整、有效的需求规格说明文档、体系结构设计、详细设计文档和测试过程记录日志。
- 属于有效的功能性需求。属于过程需求。
3.2 、说明下列需求分别属于哪种类型:
- 开发团队需要给出
SRS
文档。- 过程需求;针对开发过程的期望。
- 经过 10天培训的收银员就能够熟练使用系统。
- 质量属性 – 易用性。
- 一个从来没有使用过
ATM
的新顾客,也能够顺利使用系统完成自动取款。- 质量属性 – 易用性。
- 系统开发的成本不超过 10 万元人民币。
- 项目需求;针对项目的整体期望(成本)。
- 顾客使用信卡付款时,系统必须银联专刷设备与行交易。
- 约束;属于软件需求,是进行系统构造时需要遵守的约定,是对硬件设施的约定。
- 使用银联专刷卡设备,向行传递的交易数据格式为 …
- 对外接口;系统间的通信所规定息传递数据格式。
- 当订单数量大于现有时,系统必须通知操作员。
- 功能需求。
- 产品在发布 1 年之后,必须在出版的 A、B、C 三个产品评论刊物中被评为最可靠的产品。
- 质量属性;可靠性。
- 系统每小时必须处理至少 3000 次呼叫。
- 性能需求(吞吐量);性能需求包括:速度、容量、吞吐量、负载、实时性。
- 每日报表中,标题的形式必须是
每日报告:dd-mm-yyyy
。- 对外接口;对用户界面的限定。
- 过期商品的每日报表必须列出其名称、制造商和批号。
- 数据需求;数据需求是需要在数据库、文件或者其他介质中存储的数据描述。
- 商品的标识是由 0~24 位字母、数字混合组成的字符串。
- 约束;商品的标识是商品行业的一个统一的约定。
- 电梯的默认停运楼层必须是最低楼层到最高楼层范围内的某个整数。
- 约束;约束是进行系统构造时需要遵守的约定,是不受软件系统影响的,却会给软件系统带来极大影响的问题域特性,开发电梯系统,楼层的规定是系统必须满足的问题域特征。
- 付款单上,默认的信用卡类型是
银联
。- 约束:是银行的统一标准