您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 天泉软件培训中心 软件开发过程中的风险管理
项目管理培训软件开发中的风险管理李天泉litianquan1@hotmail.com186012422921提纲•修订的流程和模板•实施中的两个问题•工具介绍2第一部分•修订的流程和模板•实施中的两个问题•工具介绍3什么是风险4软件研发过程图示5风险管理的重要性•明确软件系统的复杂度•保证项目的关键风险被关注•提供规避风险的技术•降低成本——减少返工–通常40-50%6返工成本分布7模型8Step1:识别•识别技术–检查表–决策动机分析–假设条件分析–分解、细化919891.Personnelshortfalls2.Schedulesandbudgets3.Wrongsoftwarefunctions4.Wronguserinterface5.Goldplating6.Requirementschanges7.Externally-furnishedcomponents8.Externally-performedtasks9.Real-timeperformance10.Strainingcomputerscience19951.Personnelshortfalls2.Schedules,budgets,process3.COTS,externalcomponents4.Requirementsmismatch5.Userinterfacemismatch6.Architecture,performance,quality7.Requirementschanges8.Legacysoftware9.Externally-performedtasks10.StrainingcomputerscienceTop10RiskItems:1989and1995引自BarryBoehm所著SoftwareRiskManagement10SEI风险分类表ClassElementAttributeSoftwareDevelopmentRiskProductEngineeringDevelopmentEnvironmentProgramConstraintsRequirements***EngineeringSpecialtiesDevelopment***WorkProcessEnvironmentResourcesStability***ScaleFormality***ProductControlSchedule***Facilities引自CMU/SEI-93-TR-0611Step2:分析•风险指数=严重性×可能性•严重性:–高、中、低•可能性:–高、中、低严重性可能性优先级高优先级中优先级低12Step3:计划•策略决策•规避计划–风险发生前的一些行动•应急计划–风险发生后的一些补救措施13风险应对技术•风险规避/消除•风险转移•风险局部化•风险最小化•风险投保14选择正确的风险技术•高风险:风险转移、风险规避,同时准备应急计划•中等风险:规避计划或者应急计划•低风险:跟踪,可以不事先做出计划,风险如果发生才思考并采取措施15选择正确的风险技术•按类型–两类风险不确定性能力的限制–相应的风险应对措施不确定性能力的限制风险转移X风险规避/消除X风险最小化X风险投保XX风险局部化X风险监控X16风险管理计划对要管理的风险项说明如下问题:1.Why?风险的重要性,与项目目标的关系2.What,When?消除风险的步骤、里程碑、工作产品3.Who,Where?责任人,所属的组织4.How?方法(原型法、问卷调查,…)5.HowMuch?资源(预算、进度、关键人员)17风险管理计划:容错原形1.目标(―Why‖)–确定会引起不符合性能要求的容错特性,并改善2.工作产品和里程碑(―What‖,“When‖)–第三周结束时1.候选容错特性评估报告2.可重用组件评价报告3.流量特征草稿4.原型评价计划5.原型描述–第七周结束时6.包括关键容错特性的可操作原型7.流量模拟8.性能报告9.容错特性描述和改善计划草稿–第十周结束时10.改进后的原型11.修改后的容错特性描述18风险管理计划:容错原形•职责(―Who‖,“Where‖)–系统工程事:A•任务1,3,4,9,11,协助完成5,10–开发负责人:B•任务5,6,7,10,协助完成1,3–开发人员:C•任务2,8,协助完成5,6,7,10•方法(―How‖)–用假设的容错性能要求来检验–使用实时操作系统,加入带有容错特性的原型–用典型的流量评价性能–根据观测的结果优化原型•资源(―HowMuch‖)$60K–全职人员(10周)*(3人)*($2K/人周)$0K-3台工作站(已有)$0K-2个处理器(已有)$0K-1个测试协同处理器(已有)$10K–备用$70K–总额19Step4:跟踪•执行规避风险的计划•监控风险变化,及时启动应急计划•更新风险的状态,评估规避计划和应急计划的效果20Step5:控制•根据规避和应急计划的效果调整风险应对的措施•根据项目的实际情况调整风险的优先级•增加识别的新风险和应对措施•在软件开发计划的任务安排中加入定期更新风险管理计划的任务21模板和案例•风险管理计划–风险列表–规避及应急计划•举例22第二部分•修订的流程和模板•实施中的两个问题–风险识别–策略决策•工具介绍23风险识别•SEI风险分类–ProductEngineering.Thetechnicalaspectsoftheworktobeaccomplished.–DevelopmentEnvironment.Themethods,procedures,andtoolsusedtoproducetheproduct.–ProgramConstraints.Thecontractual,organizational,andoperationalfactorswithinwhichthesoftwareisdevelopedbutwhicharegenerallyoutsideofthedirectcontrolofthelocalmanagement.24SEI-TBQ25我们整理的数据•常见风险•各类型的项目风险管理举例26策略决策•风险管理是花费成本的•不同的策略成本收益也不同•决策数技术–通过风险指数比较优劣–比较全面的考虑27决策分析的例子•卫星控制软件•概率(含有致命错误)=0.4•发生致命错误的损失=$20M•如果做独立的测试:–概率(致命错误遗留)=0.05–增加的费用=$1M•不做独立的测试:–概率(致命错误遗留)=0.2–增加的成本=$028决策分析图独立测试非独立测试发现CEp=0.35遗漏CE遗漏CE发现CE无CEp=0.05p=0.6p=0.2p=0.2无CEp=0.6-1M-21M-1M0M-20M0MEV=-2MEV=-4M29第三部分•修订的流程和模板•实施中的两个问题•工具介绍–只是介绍别人的方法–不是推广使用–参考30工具背景•RiskRadar•SoftwareProgramManagersNetwork•Access2000•RiskTracking3132
本文标题:天泉软件培训中心 软件开发过程中的风险管理
链接地址:https://www.777doc.com/doc-519022 .html