第章软件项目需求与变更管理.ppt
文本预览下载声明
第8章 软件项目需求与变更管理 本章学习目标 掌握软件需求的概念 熟悉需求管理的方法与过程 掌握任务分解的方法与步骤 了解需求变更的原因 掌握需求变更控制的策略 8 .1 软件项目需求管理概述 一、软件需求定义 需求是来源于用户调查,即客户的需要。 需求分析是指软件分析人员通过研究用户在软件问题上的需求意愿,分析出软件系统的功能、性能、数据等诸方面应该达到的目标,从而获得有关软件的需求规格定义的过程。 明确的需求是项目的基础 1.需求的生命周期: 需求产生(变化、内部、外部) 需求认识(现存、潜在、超前、前景分析) 需求表达: 让提出需求的人尽可能清楚地说明他们的需求; 对需求提出下列一系列问题:(见下页) 作一些必要的研究工作,更好地理解需求 根据以上三步得出结论,尽可能清楚地描述这个需求 听听用户对你的阐述的反映,并作适当修改。 对需求提出下列一系列问题: 提出需求的人是如何描述需求的? 需求真实吗,是真正需求还是表面现象? 我们能满足这个需求吗,其他人能满足吗,是不是真的有解决方法? 需求重要吗,值得去满足他吗? 满足需求的关键问题在那里,会不会有新的需求产生,还要进一步满足其他需求吗,新的需求能取代目前这个需求吗? 需求直接涉及什么人,他们认为这是一个必要的需求吗,满足需求后对他们有什么影响,他们的反映会怎么样? 需求对机构的影响是什么,对我的影响是什么? 功能和技术要求 把需求变成功能要求; 功能要求应描述项目最终交付产品的特征 技术要求根据功能要求产生 功能要求应用日常语言陈述清楚 定义需求时的问题 含糊的需求: 1、不断变化的需求(人员变化、预算变化、技术变化、商业环境变化) 2、误解需求(我说不清楚我所需要的是什么,但我见到东西时就会知道—感觉会随环境变化) 过早作出结论(截断需要表达过程——需求分析需要耐心和自我控制) 与真正的用户讨论需求 多种用户,多种需求(确定优先级,即需求层次) 曲解用户的需求 需求镀金 对用户的需求有选择的过滤 包办代替 项目需求包含面向用户的需求和面向开发者的系统需求两个方面的内容: 1.用户需求 特点: (1)用户需求直接来源于用户 (2)用户需求需要以文档的形式提供给用户审查 (3)可以把用户需求理解为用户对软件的合理请求 (4)用户需求主要是为用户方的管理层、用户方的技术代表、操作者以及开发方的高层技术人员撰写的 2.系统需求 (1)功能需求 全面性、一致性、可理解、可维护、可追踪 (2)非功能性需求 性能需求、可靠性、可用性需求、系统安全以及系统对开发过程、时间、资源等方面的约束和标准,关心系统的整体特性 。 (3)数据要求 输入数据、输出数据、加工中的数据和保存在存储设备上的数据等。 3.需求规格说明书 需求规格说明书的描述要求: 1)清晰 2)完整 3)一致 4)可测试 二、需求管理 需求管理就是一种获取、组织并记录系统需求的系统化方案,以及一个使客户与项目团队对不断变更的系统需求达成并保持一致的过程。 1.需求管理复杂性分析 需求的描述问题 需求的完备程度问题 需求开发的工期问题 需求的细致程度问题 需求的变化问题 2.需求管理的基本原则 需求管理必须与需求工程的其它活动紧密整合 需求必须是文档化的、正确的、最新的、可管理的、可理解的 只要需求变化了,需求变更的影响就必须被评估 需求必须分优先级 需求一定要分类管理 3.需求管理的方法 确定需求变更控制过程 进行需求变更影响分析 建立需求基准版本和需求控制版本文档 维护需求变更的历史记录 跟踪每项需求的状态 衡量需求稳定性 三、需求管理过程 1.定义需求 2.需求确认 3.建立需求状态 4.需求评审 评判需求优劣的主要指标有:正确性、清晰性、无二义性、一致性、必要性、完整性、可实现性、可验证性、可测性。 5.需求承诺 6.需求跟踪 正向跟踪:以用户需求为切入点,检查《需求规格说明书》中的每个需求是否都能在后继工作产品中找到对应点。 逆向跟踪:检查设计文档、代码、测试用例等工作产品是否都能在《需求规格说明书》中找到出处。 7.需求变更控制 8 .2 软件项目任务分解 一、工作分解结构(WBS) 项目的分解结构就是将项目的产品或服务、组织、过程这3种不同的结构综合为项目分解结构的过程,也就是给项目的组织人员分派各自角色和任务的过程。 基于成果或功能的分解方法,以完成该项目应该交付的成果为导向,确定相关的任务、工作、活动和要素。 基于流程的分解方法,以完成该项目所应经历的流程为导向,确定相关的任务、工作、活动和要素。 8 .3 软件需求的变更控制 第*页 * 软件项目需求
显示全部