- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章软件项目需求管理 第二章 软件项目需求管理 本章主要内容: 2.1 软件需求 2.2 需求工程 2.3 需求管理 2.4 需求管理质量保证 2.5 小结 本章重点: 需求管理中的问题举例 项目:变换计数器 “变化计数器”是一个用来统计程序大小的软件工具,当你在修改程序时,或是在几个开发周期中开发程序时,知道在程序的各个版本之间有多少行代码被增加,修改,或删除,是一件非常重要的事情。“变化计数器”就是用来代替人手工统计这些数据的软件。 需求管理中的问题举例 对于提交的产品,用户感觉不是自己希望的工具 操作及其不方便 看不到希望看到的信息 只有在一定的条件下能够给出正确计算 错误很多,没有应有的提示 性能及其不稳定 是开发过程的半成品,不是项目的提交物 在软件需求阶段,开发人员更多的是想着“如何做” ,而不是想“做什么”。。。。。 问题? 软件项目需求管理面临的问题? 2.1 软件需求 软件需求是指用户对软件的功能和性能的要求,就是用户希望软件能做什么事情,完成什么样的功能,达到什么性能。 著名软件需求学家Davis归纳了要完全描述系统需要做的五项主要事情,通过定义以下五项内容来确定一组完整的软件需求: (1)系统的输入 (2)系统的输出 (3)系统的功能 (4)系统的属性 (5)系统环境的属性 软件的需求包括: 功能需求 性能需求 环境需求 可靠性需求 安全保密要求 用户界面需求 资源使用需求 成本消耗需求 开发进度需求 预先估计以后系统可能达到的目标 软件需求的层次 2.软件需求在软件项目中的作用 软件需求在软件项目中占有重要地位,是软件设计和软件实现的基础。需求的改变将导致其后一系列过程的更改,因而软件需求与软件项目中其他过程有着密切关系。 二、软件需求类别 1.软件需求的抽象层次 2.用户需求 用户需求从用户的角度描述系统的需求,以便没有专业技术背景的用户能看懂。它只描述系统的外部行为,尽量避免涉及系统内部的设计特性,因而用户需求就不可能使用任何实现模型来描述,而只能通过自然语言、图表、图形等来叙述。 使用自然语言来描述时,可能会出现如下问题: (1)描述困难 (2)需求混乱 在编写用户需求文档时,为避免上述问题,应该遵守如下一些简单的原则: (1)标准的格式 (2)使用一致的语言 (3)使用特殊文本 (4)尽量避免专业术语 3.系统需求 系统需求是比用户需求更为详细和专业的需求描述,是系统实现的依据。一个完整且一致的系统需求描述,是软件设计的起点。为避免自然语言带来的不足,系统需求描述通常采用结构化语言和过程设计语言PDL,由于二者各有利弊,所以一种有效的使用方法是将它们结合起来,扬长避短,以发挥更大的作用。 系统需求的描述语言 4.系统需求的分类 (1)功能需求,是最主要的需求 需要计算机系统解决的问题,就是对数据处理的要求。 (2)非功能需求,是一些限制要求 实际使用环境所要求的需求 如性能要求,可靠性要求,安全性要求等等。 (3)领域需求 软件需求管理的过程 软件需求的任务 准确地表达被接受的用户要求 深入描述软件的功能和性能 确定软件设计的约束和软件同其它系统元素的接口细节 定义软件的其它有效性需求 确定被开发软件系统的系统元素 将功能和信息结构分配到这些系统元素中 需求工程基本任务 需求获取图示 需求获取 需求分析定义 需求分析是为最终用户所看到的系统建立一个概念模型,是对需求的抽象描述。 三、软件需求文档 1.需求文档的编制与作用 需求文档的作用如下表所示: 需求规格 需求分析工作完成的一个基本标志是形成了一份完整的、规范的需求规格说明书 需求规格说明书的编制是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解,使之成为整个开发工作的基础。 2.软件需求规格说明 软件需求规格SRS也称为功能规格说明、需求协议或系统规格说明,精确地阐述一个软件系统必须提供的功能和性能以及它所要考虑的限制条件,是对外部行为和系统环境(软件、硬件、通信端口和人)接口的简洁完整的描述性文档。 软件需求规格说明的原则 从现实中分离功能,即描述要“做什么”而不是“怎样实现” 采用一定的规格说明语言 如果被开发软件只是一个大系统中的一个元素,那么整个大系统也包括在规格说明的描述之中 规格说明应该包括系统运行环境 规格说明应该是一个认识模型 规格说明应该容许不完备性并允许扩充 四、软件需求度量 1.正确性 2.无歧义 3.完备性 4.一致性 5.根据重要性和稳定性分级 6.可验证性 7.可修改性 8.可跟踪性 9.可理解性 2.2 需求工程
文档评论(0)