软件项目需求与变更管理课程课件_第1页
软件项目需求与变更管理课程课件_第2页
软件项目需求与变更管理课程课件_第3页
软件项目需求与变更管理课程课件_第4页
软件项目需求与变更管理课程课件_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2023/7/21软件项目需求与变更管理课程学习目标掌握软件需求的概念熟悉需求管理的方法与过程掌握任务分解的方法与步骤WBS了解需求变更的原因掌握需求变更控制的策略第7章项目招投标与合同管理2HotTip软件需求定义需求是来源于用户调查,即客户的需要。需求分析是指软件分析人员通过研究用户在软件问题上的需求意愿,分析出软件系统的功能、性能、数据等诸方面应该达到的目标,从而获得有关软件的需求规格定义的过程。

8.1软件项目需求管理概述3HotTip软件需求定义1.用户需求特点:(1)用户需求直接来源于用户(2)用户需求需要以文档的形式提供给用户审查(3)可以把用户需求理解为用户对软件的合理请求(4)用户需求主要是为用户方的管理层、用户方的技术代表、操作者以及开发方的高层技术人员撰写的?p1238.1软件项目需求管理概述4HotTip2.系统需求(1)功能需求全面性一致性可理解可维护可追踪等8.1软件项目需求管理概述(2)非功能性需求性能需求、可靠性、可用性需求、系统安全以及系统对开发过程、时间、资源等方面的约束和标准关心系统的整体特性

(3)数据要求5业务需求用户需求系统需求功能需求质量属性其他非功能需求约束条件项目视图与范围文档使用实例文档软件需求规格说明用户能有效的纠正文档中的拼写错误找出文档中的拼写错误并通过一个提供的替换项列表来供选择替换拼错的词。找到并高亮度提示错词;显示提供替换词的对话框以及实现整个文档范围的替换。需求组成

业务需求:组织机构/客户对软件的高层次目标用户需求:用户对软件的要求功能需求:软件做什么,如何做

如小型超市商品查询:业务需求:保证及时进货;……用户需求:查询商品的价格,库存,销售及盈利功能需求:怎样查询/短信缺货提示,提供哪些信息HotTip3.需求规格说明书的写作规范1)清晰2)完整3)一致4)可测试

8.1软件项目需求管理概述8需求管理活动需求过程所涉及的工作软件项目需求管理的重要性影响软件项目成败的因素(1/3)软件缺陷修复的成本HotTip需求管理1.需求管理复杂性分析需求的描述问题需求的完备程度问题需求开发的工期问题需求的细致程度问题需求的变化问题8.1软件项目需求管理概述13HotTip需求管理2.需求管理的基本原则需求管理必须与需求工程的其它活动紧密整合需求必须是文档化的、正确的、最新的、可管理的、可理解的只要需求变化了,需求变更的影响就必须被评估需求必须分优先级需求一定要分类管理8.1软件项目需求管理概述14HotTip3.需求管理的方法确定需求变更控制过程进行需求变更影响分析建立需求基准版本和需求控制版本文档维护需求变更的历史记录跟踪每项需求的状态衡量需求稳定性8.1软件项目需求管理概述15HotTip需求管理过程1.定义需求2.需求确认3.建立需求状态4.需求评审评判需求优劣的主要指标有:正确性、清晰性、无二义性、一致性、必要性、完整性、可实现性、可验证性、可测性。

8.1软件项目需求管理概述16HotTip需求管理过程5.需求承诺(签字生效)6.需求跟踪正向跟踪:以用户需求为切入点,检查《需求规格说明书》中的每个需求是否都能在后继工作产品中找到对应点。逆向跟踪:检查设计文档、代码、测试用例等工作产品是否都能在《需求规格说明书》中找到出处。7.需求变更控制8.1软件项目需求管理概述17确定需求变更控制过程建立需求变更控制委员会进行需求变更影响分析建立需求基准版本和需求控制版本文档维护需求变更的历史记录跟踪每项需求的状态跟踪所有受需求变更影响的工作产品衡量需求稳定性(尽量避免、减少变化)需求变更管理活动:HotTip工作分解结构项目的分解结构就是将项目的产品或服务、组织、过程这3种不同的结构综合为项目分解结构的过程,也就是给项目的组织人员分派各自角色和任务的过程。基于成果/功能的分解方法,以完成该项目应该交付的成果为导向,确定相关的任务、工作、活动和要素基于流程的分解方法,以完成该项目所应经历的流程为导向,确定相关的任务、工作、活动和要素。8.2软件项目任务分解208.2软件项目任务分解项目分解目的——明确项目所包含的各项工作;项目分解的结果就是WBS(任务分解结构)图项目分解意义——WBS(任务分解结构)图是实施项目、创造最终产品或服务所必须进行的全部活动的一张清单,也是进度计划、人员分配、预算计划的基础项目分解内容——项目分解就是先把复杂的项目逐步分解成一层一层的要素(工作),直到具体明确为止项目分解工具——项目分解的工具是工作分解结构WBS原理,它是一个分级的树型结构,是一个对项目工作由粗到细的分解过程软件项目分解WBS——WorkBreakdownStructure主要是将一个项目分解成易于管理的几个部分或几个细目,以便确保找出完成项目工作范围所需的所有工作要素它是一种在项目全范围内分解和定义各层次工作包的方法WBS——WorkBreakdownStructure结构层次越往下层则项目组成部分的定义越详细,WBS最后构成一份层次清晰,可以具体作为组织项目实施的工作依据WBS——WorkBreakdownStructure通常是一种面向“成果”的“树”,其最底层是细化后的“可交付成果”,该树组织确定了项目的整个范围。但WBS的形式并不限于“树”状,还有多种形式。软件项目分解WBS分解类型基于可交付成果的划分上层一般为可交付成果为导向下层一般为可交付成果的工作内容基于工作过程的划分上层按照工作的流程分解下层按照工作的内容划分8.2软件项目任务分解软件项目分解基于可交付成果的划分——WBS举例:信息网络工程信息网络工程结构化布线网络平台建设布线设计采购布线验收方案设计采购网络平台实施验收0级1级2级软件项目分解基于工作过程的划分——WBS举例:网络系统工程网络系统培训设备准备设备采购设备验收交接网络系统设计布线设计平台设计工程实施布线实施网络集成软件开发软件需求确定系统设计编码测试0级1级2级HotTip工作分解结构(1)图表形式分解层次与结构

8.2软件项目任务分解26软件项目分解项目工作分解结构表项目名称:项目负责人:单位名称:制表日期:工作分解结构任务编码任务名称主要活动描述负责人1000

1100

1200

1x001x101x111x12

项目负责人审核意见:

签名:日期:HotTip工作包是完成一项具体工作所要求的一个特定的、可确定的、可交付以及独立的工作包,可为项目控制提供充分而合适的管理信息。(树叶)WBS编码设计(编号=》层次)8.2软件项目任务分解28用PROJECT生成的WBS例HotTip(2)清单形式需求分析计划流程优化编写需求说明书编写需求规格词汇表绘制业务流程抽象业务类建立数据模型将需求分析图示加入规格文档需求规格测试需求规格确认8.2软件项目任务分解30HotTip任务分解过程1.分解步骤(1)确认并分解项目的主要组成要素。(2)确定分解标准(3)确认分解是否详细,分解结果是否可以作为费用和时间估计的标准,明确责任。(4)确定项目交付成果。(5)验证分解正确性,验证分解正确性后,建立一套编号系统。8.2软件项目任务分解31HotTip任务分解过程2.分解的标准:一般不能采用双重标准。选择一种项目分解标准之后,在分解过程中应该统一使用此标准,避免因使用不同标准而导致的混乱。3.分解结果的检验核实分解的正确性:更低层次的细目是否必要和充分?最底层要素是否有重复?每个细目都有明确的、完整的定义吗?是否每个细目可以进行适当的估算?谁能担负起完成这个任务?8.2软件项目任务分解32HotTip4.任务分解的注意事项注意收集与项目相关的所有信息。任务分解结果必须有利于责任分配。最底层的工作包一般要有全面、详细和明确的文字说明,并汇集编制成项目工作分解结构词典。避免不必要的过细,最好不要超过7层。按照软件项目的平均规模来说,推荐任务分解时至少分解到一周的工作量(40小时)。8.2软件项目任务分解33HotTip5.责任分配及成本分解8.2软件项目任务分解WBS编号预算(¥/人天)责任者WBS编号预算责任者10.1张明3.30.15李立20.46李立3.40.1李立30.46张明、李立3.50.02张明3.10.04张明40.08万风3.20.15李立50.1张明34WBS的要素WBS的每一个工作单元都是一个具体任务,它包括五个方面的要素:1.工作过程或内容:表明工作的性质或对工作的描述。2.人物的承担者:明确责任者,多人承担时应明确个人的职责分工。3.工作对象:工作对象不仅仅是物质的,也可能是非物质的。4.完成任务时间(工时)/工作量:估计完成任务所需时间。5.完成任务所需资源:执行任务所需空间,设备,人员,环境,资金等。HotTip需求变更原因分析1.范围没有圈定就开始细化2.没有良好的软件结构适应变化3.用户改变需求管理变更请求1.控制需求渐变的策略需求一定要与投入有显示的联系,否则如果需求变更的成本由开发方来承担,则项目需求的变更就成为必然了。软件开发方和出资方都要明确这一条:需求变化,软件开发的投入也要变化。8.3软件需求的变更控制36HotTip需求的变更要经过出资者的认可,这样才会对需求的变更有成本的概念,能够慎重地对待需求的变更。小的需求变更也要经过正规的需求管理流程,否则会积少成多。精确的需求与范围定义并不会阻止需求的变更。并非对需求定义的越细,越能避免需求的渐变,这是两个层面的问题。太细的需求定义对需求渐变没有任何效果。因为需求的变化是永恒的,并非由于需求细化了,它就不会变化了。8.3软件需求的变更控制37HotTip2.变更控制过程(1)项目启动阶段的变更预防(2)项目实施阶段的变更控制(3)项目收尾阶段的总结控制8.3软件需求的变更控制38HotTip需求变更处理流程8.3软件需求的变更控制39状态跟踪示例4041建议的需求状态表状态值定义已建议该需求已被有权提出需求的人建议已批准该需求已被分析,估计了其对项目余下部分的影响(包括成本和对项目其余部分的干扰),已用一个确定的产品版本号或创建编号分配到相关的基线中,软件开发团队已同意实现该项需求已实现已实现需求代码的设计、编写和单元测试已验证使用所选择的方法已验证了实现的需求,例如测试和检测,审查该需求跟踪与测试用例相符。该需求现在被认为完成已删除计划的需求已从基线中删除,但包括一个原因说明和做出删除决定的人员已拒绝需求变更状态转换图44RationalRequisiteProBorlandCaliber(代码生成,animation)RationalRoseRationalXDERationalClearCase5.5需求管理工具45RequisiteProProjectOrganizationToolbarProjecticonPackageDocumentViewsRequirementsDeleteaRequirementinaDocument你是一个IT项目的项目经理。你项目团队的一个信息专家在同与他一起工作的一个低级别客户代表共进午餐后得知,在显示中一项简单的改造会给项目增加巨大的附加功能。你和项目发起人都已经对范围签字认可。那位信息专家进行了这项改造,没有给项目进度带来负面影响,也没有增加额外的费用。你应该采取什么管理措施?A.没有影响项目成本、进度,因此,这位信息专家应该受到表扬。B.项目经理应该在项目计划中增加一项没有相应时间的任务。C告诉他的行为是不可接受的,因它可能给整个项目带来负面影响D.由于这项变更已经做了,项目经理做一份变更控制表并请客户签字。48 你正在做你的研发项目,这时你的客户要求你在项目中增加一个特殊成分。你知道这意味着新的工作并且你也知道项目没有剩余款。你应该怎么做?_______A.取消另一个优先等级低的任务,以便腾出更多的时间和资金。B.使用管理储备的资金来支付新任务的成本。C.按合同变更控制过程办理。D.向项目发起人要更多的资金。

49Clicktoeditcompanyslogan.谢谢!ThankYou!明确的需求是项目的基础1需求的生命周期:需求产生(变化、内部、外部)需求认识(现存、潜在、超前、前景分析)需求表达:1、让提出需求的人尽可能清楚地说明他们的需求;2、对需求提出一系列问题:明确的需求是项

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论