资源预览内容
第1页 / 共56页
第2页 / 共56页
第3页 / 共56页
第4页 / 共56页
第5页 / 共56页
第6页 / 共56页
第7页 / 共56页
第8页 / 共56页
第9页 / 共56页
第10页 / 共56页
亲,该文档总共56页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
,第1/48页,软件项目需求管理概述,1,软件项目任务分解,第8章 软件项目需求与变更管理,软件需求的变更控制,第2页,学习目标 掌握软件需求的概念 熟悉需求管理的方法与过程 掌握任务分解的方法与步骤WBS 了解需求变更的原因 掌握需求变更控制的策略,第7章 项目招投标与合同管理,第3页,Hot Tip,软件需求定义 需求是来源于用户调查,即客户的需要。 需求分析是指软件分析人员通过研究用户在软件问题上的需求意愿,分析出软件系统的功能、性能、数据等诸方面应该达到的目标,从而获得有关软件的需求规格定义的过程。,8 .1 软件项目需求管理概述,第4页,Hot Tip,软件需求定义 1用户需求 特点: (1)用户需求直接来源于用户 (2)用户需求需要以文档的形式提供给用户审查 (3)可以把用户需求理解为用户对软件的合理请求 (4)用户需求主要是为用户方的管理层、用户方的技术代表、操作者以及开发方的高层技术人员撰写的?p123,8 .1 软件项目需求管理概述,第5页,Hot Tip,2系统需求 (1)功能需求 全面性 一致性 可理解 可维护 可追踪等,8 .1 软件项目需求管理概述,(2)非功能性需求 性能需求、可靠性、可用性需求、系统安全以及系统对开发过程、时间、资源等方面的约束和标准 关心系统的整体特性 (3)数据要求,业务需求,用户需求,系统需求,功能需求,质量属性,其他非功能需求,约束条件,项目视图与范围文档,使用实例文档,软件需求规格说明,用户能有效的纠正文档中的拼写错误,找出文档中的拼写错误并通过一个提供的替换项列表来供选择替换拼错的词。,找到并高亮度提示错词; 显示提供替换词的对话框以及实现整个文档范围的替换。,需求组成,业务需求:组织机构/客户对软件的高层次目标 用户需求:用户对软件的要求 功能需求:软件做什么,如何做 如小型超市商品查询: 业务需求:保证及时进货; 用户需求: 查询商品的价格,库存,销售及盈利 功能需求:怎样查询/短信缺货提示 ,提供哪些信息,第8页,Hot Tip,3需求规格说明书的写作规范 1)清晰 2)完整 3)一致 4)可测试,8 .1 软件项目需求管理概述,需求管理活动,需求过程所涉及的工作,软件项目需求管理的重要性,影响软件项目成败的因素(1/3),软件缺陷修复的成本,第13页,Hot Tip,需求管理 1需求管理复杂性分析 需求的描述问题 需求的完备程度问题 需求开发的工期问题 需求的细致程度问题 需求的变化问题,8 .1 软件项目需求管理概述,第14页,Hot Tip,需求管理 2需求管理的基本原则 需求管理必须与需求工程的其它活动紧密整合 需求必须是文档化的、正确的、最新的、可管理的、可理解的 只要需求变化了,需求变更的影响就必须被评估 需求必须分优先级 需求一定要分类管理,8 .1 软件项目需求管理概述,第15页,Hot Tip,3需求管理的方法 确定需求变更控制过程 进行需求变更影响分析 建立需求基准版本和需求控制版本文档 维护需求变更的历史记录 跟踪每项需求的状态 衡量需求稳定性,8 .1 软件项目需求管理概述,第16页,Hot Tip,需求管理过程 1定义需求 2需求确认 3建立需求状态 4需求评审 评判需求优劣的主要指标有:正确性、清晰性、无二义性、一致性、必要性、完整性、可实现性、可验证性、可测性。,8 .1 软件项目需求管理概述,第17页,Hot Tip,需求管理过程 5需求承诺(签字生效) 6需求跟踪 正向跟踪:以用户需求为切入点,检查需求规格说明书中的每个需求是否都能在后继工作产品中找到对应点。 逆向跟踪:检查设计文档、代码、测试用例等工作产品是否都能在需求规格说明书中找到出处。 7需求变更控制,8 .1 软件项目需求管理概述,确定需求变更控制过程 建立需求变更控制委员会 进行需求变更影响分析 建立需求基准版本和需求控制版本文档 维护需求变更的历史记录 跟踪每项需求的状态 跟踪所有受需求变更影响的工作产品 衡量需求稳定性(尽量避免、减少变化),需求变更管理活动:,第20/48页,Hot Tip,工作分解结构 项目的分解结构就是将项目的产品或服务、组织、过程这3种不同的结构综合为项目分解结构的过程,也就是给项目的组织人员分派各自角色和任务的过程。 基于成果/功能的分解方法,以完成该项目应该交付的成果为导向,确定相关的任务、工作、活动和要素 基于流程的分解方法,以完成该项目所应经历的流程为导向,确定相关的任务、工作、活动和要素。,8 .2 软件项目任务分解,8 .2 软件项目任务分解,项目分解目的 明确项目所包含的各项工作;项目分解的结果就是WBS (任务分解结构)图 项目分解意义 WBS(任务分解结构)图是实施项目、创造最终产品或服务所必须进行的全部活动的一张清单,也是进度计划、人员分配、预算计划的基础 项目分解内容 项目分解就是先把复杂的项目逐步分解成一层一层的要素(工作),直到具体明确为止 项目分解工具 项目分解的工具是工作分解结构原理,它是一个分级的树型结构,是一个对项目工作由粗到细的分解过程,软件项目分解,WBS Work Breakdown Structure主要是将一个项目分解成易于管理的几个部分或几个细目,以便确保找出完成项目工作范围所需的所有工作要素它是一种在项目全范围内分解和定义各层次工作包的方法 WBS Work Breakdown Structure结构层次越往下层则项目组成部分的定义越详细,WBS最后构成一份层次清晰,可以具体作为组织项目实施的工作依据 WBS Work Breakdown Structure通常是一种面向“成果”的“树”,其最底层是细化后的“可交付成果”,该树组织确定了项目的整个范围。但WBS的形式并不限于“树”状,还有多种形式。,软件项目分解,WBS分解类型 基于可交付成果的划分 上层一般为可交付成果为导向 下层一般为可交付成果的工作内容 基于工作过程的划分 上层按照工作的流程分解 下层按照工作的内容划分,8 .2 软件项目任务分解,软件项目分解,基于可交付成果的划分WBS举例:信息网络工程,软件项目分解,基于工作过程的划分WBS举例:网络系统工程,第26页,Hot Tip,工作分解结构 (1)图表形式 分解层次与结构,8 .2 软件项目任务分解,软件项目分解,项目工作分解结构表,第28页,Hot Tip,工作包是完成一项具体工作所要求的一个特定的、可确定的、可交付以及独立的工作包,可为项目控制提供充分而合适的管理信息。 (树叶) WBS编码设计 (编号=层次),8 .2 软件项目任务分解,用PROJECT生成的WBS例,第30页,Hot Tip,(2)清单形式 需求分析计划 流程优化 编写需求说明书 编写需求规格词汇表 绘制业务流程 抽象业务类 建立数据模型 将需求分析图示加入规格文档 需求规格测试 需求规格确认,8 .2 软件项目任务分解,第31页,Hot Tip,任务分解过程 1分解步骤 (1)确认并分解项目的主要组成要素。 (2)确定分解标准 (3)确认分解是否详细,分解结果是否可以作为费用和时间估计的标准,明确责任。 (4)确定项目交付成果。 (5)验证分解正确性,验证分解正确性后,建立一套编号系统。,8 .2 软件项目任务分解,第32页,Hot Tip,任务分解过程 2分解的标准:一般不能采用双重标准。选择一种项目分解标准之后,在分解过程中应该统一使用此标准,避免因使用不同标准而导致的混乱。 3分解结果的检验 核实分解的正确性: 更低层次的细目是否必要和充分? 最底层要素是否有重复? 每个细目都有明确的、完整的定义吗? 是否每个细目可以进行适当的估算?谁能担负起完成这个任务?,8 .2 软件项目任务分解,第33页,Hot Tip,4任务分解的注意事项 注意收集与项目相关的所有信息。 任务分解结果必须有利于责任分配。 最底层的工作包一般要有全面、详细和明确的文字说明,并汇集编制成项目工作分解结构词典。 避免不必要的过细,最好不要超过7层。按照软件项目的平均规模来说,推荐任务分解时至少分解到一周的工作量(40小时)。,8 .2 软件项目任务分解,第34页,Hot Tip,5责任分配及成本分解,8 .2 软件项目任务分解,WBS的要素,WBS的每一个工作单元都是一个具体任务,它包括 五个方面的要素: 1工作过程或内容:表明工作的性质或对工作的描述。 2人物的承担者:明确责任者,多人承担时应明确个人的职责分工。 3工作对象:工作对象不仅仅是物质的,也可能是非物质的。 4完成任务时间(工时) /工作量:估计完成任务所需时间。 5完成任务所需资源:执行任务所需空间,设备,人员,环境,资 金等。,第36/48页,Hot Tip,需求变更原因分析 1范围没有圈定就开始细化 2没有良好的软件结构适应变化 3用户改变需求 管理变更请求 1控制需求渐变的策略 需求一定要与投入有显示的联系,否则如果需求变更的成本由开发方来承担,则项目需求的变更就成为必然了。软件开发方和出资方都要明确这一条:需求变化,软件开发的投入也要变化。,8 .3 软件需求的变更控制,第37页,Hot Tip,需求的变更要经过出资者的认可,这样才会对需求的变更有成本的概念,能够慎重地对待需求的变更。 小的需求变更也要经过正规的需求管理流程,否则会积少成多。 精确的需求与范围定义并不会阻止需求的变更。并非对需求定义的越细,越能避免需求的渐变,这是两个层面的问题。太细的需求定义对需求渐变没有任何效果。因为需求的变化是永恒的,并非由于需求细化了,它就不会变化了。,8 .3 软件需求的变更控制,第38页,Hot Tip,2变更控制过程 (1)项目启动阶段的变更预防 (2)项目实施阶段的变更控制 (3)项目收尾阶段的总结控制,8 .3 软件需求的变更控制,第39页,Hot Tip,需求变更处理流程,8 .3 软件需求的变更控制,状态跟踪示例,第40/48页,第41/48页,建议的需求状态表,需求变更状态转换图,第44/48页,Rational RequisitePro Borland Caliber(代码生成,animation) Rational Rose Rational XDE Rational ClearCase,5.5 需求管理工具,第45/48页,RequisitePro Project Organization,Toolbar,Project icon,Package,Document,Views,Requirements,Delete a Requirement in a Document,你是一个IT项目的项目经理。你项目团队的一个信息专家在同与他一起工作的一个低级别客户代表共进午餐后得知,在显示中一项简单的改造会给项目增加巨大的附加功能。你和项目发起人都已经对范围签字认可。那位信息专家进行了这项改造,没有给项目进度带来负面影响,也没有增加额外的费用。你应该采取什么管理措施? A. 没有影响项目成本、进度,因此,这位信息专家应该受到表扬。 B. 项目经理应该在项目计划中增加一项没有相应时间的任务。 C 告诉他的行为是不可接受的,因它可能给整个项目带来负面影响 D.由于这项变更已经做了,项目经理做一份变更控制表并请客户签字。,第48/48页,你正在做你的研发项目,这时你的客户要求你在项目中增加一个特殊成分。你知道这意味着新的工作并且你也知道项目没有剩余款。你应该怎么做?_ A. 取消另一个优先等级低的任务,以便腾出更多的时间和资金。 B. 使用管理储备的资金来支付新任务的成本。 C. 按合同变更控制过程办理。 D. 向项目发起人要更多的资金。,第49/48页,Click to edit company slogan .,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号