CMM3标准体系普及篇及现场项目管理2009/11过程质量部总目录公司质量管理体系基本结构公司CMM3标准过程介绍重点指南和流程介绍CMM体系第一部分CMM基础知识CMM是什么?过程成熟度模型:汇集世界各地软件过程管理者的经验和智慧一组有关软件过程和实践的集合CMM一共分为5级,1级最低,5级最高,3级是一个比较重要的分界线CMM体系结构能力成熟度模型的五个等级过程的不断改进基于许多小的、进化的步骤,而不是革命性的创新;CMM提供了一个框架,将这些进化步骤组织成五个成熟度等级,它为过程不断改进奠定了顺序渐近的基础;每一等级包含一组过程目标,当目标满足时,能使软件过程的一个重要成分稳定。进阶图:(有纪律--标准一致--可预测--不断改进)1.初始级4.已管理级2.可重复级3.已定义级5.优化级CMM的5个等级初始级过程是不正规的、不稳定的输入输出输出可重复级项目管理制度化输入输出工程执行和项目执行相结合并已制度化已定义级输入输出已管理级产品和过程得到定量控制输入输出优化级过程改进制度化输入输出CMM能力等级特点关键过程第一级基本级软件过程是混乱无序的,对过程几乎没有定义,成功依靠的是个人的才能和经验,管理方式属于反应式第二级重复级建立了基本的项目管理来跟踪进度.费用和功能特征,制定了必要的项目管理,能够利用以前类似的项目应用取得成功需求管理,项目计划,项目跟踪和监控,软件子合同管理,软件配置管理,软件质量保障第三级确定级已经将软件管理和过程文档化,标准化,同时综合成该组织的标准软件过程,所有的软件开发都使用该标准软件过程组织过程定义,组织过程焦点,培训大纲,软机集成管理,软件产品工程,组织协调,专家审评第四级管理级收集软件过程和产品质量的详细度量,对过程和产品质量有定量的理解和控制定量的软件过程管理和产品质量管理第五级优化级软件过程的量化反馈和新的思想和技术促进过程的不断改进缺陷预防,过程变更管理和技术变更管理第二部分公司CMM3软件质量管理体系公司CMM3软件项目管理体系过程:30个流程:24个指南:44模板:145个检查表:111生命周期:1个CMM体系公司CMM3软件项目管理体系结构启动需求设计编码测试实施维护软件项目启动过程需求获取过程需求分析过程系统设计过程代码设计过程产品发布过程系统测试过程实施过程维护过程制定项目日程过程项目监控过程项目管理过程(精简版)公司年度培训计划过程项目培训计划过程培训实施过程配置管理审计过程分包商选择过程分包商监控过程SQA审计过程评审与同行评审过程需求管理过程SQA计划过程配置管理计划过程制定软件项目计划过程软件项目方案设计和立项投标过程配置管理实施过程项目产品工程过程(精简版)RMSPPSPTOSSMSSPMSQASCMTPPR第三部分公司CMM3标准过程介绍销售人员合同计划管理中心软件项目执行部门经理项目经理编写合同意向执行申请建立软件项目配置提交合同意向审批合同意向制定软件项目计划下达项目任务书数据转换分发《软件项目启动会议纪要》销售行总/工程主管/销售主管/总软件项目启动通知软件项目计划否召开软件项目启动会议项目任务书软件项目启动会议纪要是否是否合同意向项目?合同意向执行申请启动软件项目是否需要进行数据转换是软件项目启动过程想一想项目启动会要求哪些人员参加?项目启动会召开前哪些工作必须完成?关键活动•下达项目任务书•项目估算•计划评审•建设配置管理区配置管理工程师中心总监测试经理SQA项目经理部门经理SQA计划测试计划配置管理计划软件项目计划项目估算纪录会议纪要通过?是否软件项目计划评审纪录是通过?否初次制定?是否初次制定?是否制定项目日程项目估算确定项目组织拟制《软件项目计划》制定SQA计划制定测试计划制定配置管理计划组织同行评审审核整合《软件项目计划》分发《软件项目计划》审批制定软件项目计划关键活动•过程裁剪申请•项目估算•相关计划制定•计划评审•计划变更想一想第一次制定《软件项目计划》是在什么阶段?《软件项目计划》由谁制定?什么情况下需要变更?需求调研记录需求调研计划是否通过?否是项目经理需求调研员用户需求管理员用户提供材料索引表用户需求说明书是是否通过?是否通过?是否数据转换需求跟踪矩阵是否需要做数据转换是否制定需求调研计划用户确认需求调研计划评审用户需求说明书需求调研确认用户需求说明书制定需求跟踪矩阵否需求获取过程关键活动•需求调研计划•需求调研发记录•用户需求说明书评审•需求跟踪矩阵想一想怎样做需求调研更有效?用户需求说明书的评审工作怎样做才有效?制定详细日程选择开发方法工具组织同行评审需求分析员填写《需求跟踪矩阵》是开发经理项目经理需求管理员测试经理实施经理是否需要同行评审项目日程用户需求说明书分析用户需求组织评审软件需求规格说明书需求分析工具软件项目计划编写《确认测试用例》编写《用户手册》概要用户手册确认测试用例否需求分析技术流程是否通过?否是软件需求规格说明书检查表需求分析关键活动•需求规格说明书评审•编写确认测试用例•填写需求跟踪矩阵•项目估算,填写项目实施成本估算表想一想《需求规格说明书》评审需要谁参与?提出需求变更请求审批需求变更申请接受需求变更申请需求变更控制小组变更需求跟踪矩阵部门经理否用户项目经理需求管理员中心总监评估需求变更影响需求变更请求回复组织实施需求变更是是否需要进行变更评估是否需部门经理审批需求变更申请表需求变更评估报告需求变更评估表审批需求变更评估报告是否需中心总监审批审批需求变更评估报告需求跟踪矩阵是否否是往来文件记录表需求管理需求变更处理流程提交变更申请将变更录入缺陷跟踪系统评估需求变更的影响向客户反馈受理情况客户确认需求变更评估结果验证并实施变更方案用户确认解决效果实施变更,更新文档关闭变更关键活动•需求变更的记录•需求变更的评估•需求变更的审核•想一想编写《确认测试用例》有何用途,什么时候使用?《用户需求说明书》和《软件需求规格说明书》有什么区别?实施经理测试经理开发经理项目经理编写《操作手册》初稿制定详细日程编写《系统测试用例》填写《需求跟踪矩阵》组织系统设计组织评审编写安装、系统管理手册初稿组织同行评审操作手册项目日程否是需求管理员软件需求规格说明书系统测试用例集成测试用例系统设计说明书系统设计技术流程编写《集成测试用例》系统管理手册安装手册是否是否通过?是否需要同行评审系统设计关键活动•编写设计文档•评审设计文档•编写确认测试用例•需求跟踪矩阵想一想系统设计过程的启动条件是什么,结束条件是什么?在系统设计过程中,除了系统设计说明书之外,还需要产出哪些文档?制定详细日程设计《单元测试用例》编写模块代码需求管理员重点代码检查程序员是否通过?否是开发经理项目日程编码规范填写《需求跟踪矩阵》设计单元测试脚本单元测试用例单元测试脚本模块源代码单元测试纪录重点代码检查表单元测试执行代码走读系统设计说明书是需要代码走读?否否是是否通过代码设计过程关键活动•编写编码规范•代码走查•单元测试•需求跟踪矩阵想一想编码规范有什么意义?产品发布过程SCCBSQA/配置管理工程师模块源代码审批产品发布申请制定详细日程分析测试记录基线审计测试技术流程Scarab缺陷跟踪安装程序是否通过否是程序员项目经理开发经理可执行程序软件产品生成产品系统设计说明书执行集成测试搭建可运行环境编译源代码产品生成记录表项目日程集成测试报告申请发布产品编写《集成测试报告》产品发布申请表整理手册处理测试缺陷集成测试记录集成测试用例关键活动•对内发布•对外发布•单元测试•需求跟踪矩阵想一想谈谈测试与发布过程的关联?在产品发布前做测试还是发布之后进行?为什么?范例范例测试经理/实施经理测试工程师/实施工程师制定详细日程组织评审安装产品执行测试编写《测试报告》启动产品发布过程开发经理Scarab缺陷跟踪项目日程系统测试用例是否通过?分析测试纪录是否测试技术流程系统测试报告系统测试纪录软件产品系统测试过程关键活动•对内发布•缺陷管理工具•缺陷跟踪•测试报告•需求跟踪矩阵系统测试过程系统测试过程的启动条件是什么,结束条件是什么?系统实施过程协调解决系统实施问题制定详细日程用户确认测试用户代表用户培训实施经理要数据转换否是项目经理系统验收系统试运行用户培训效果分析报告合同执行备忘录项目合同数据转换确认测试报告项目日程用户需求说明书软件产品确认测试用例系统试运行总结报告系统验收报告系统验收备忘录关键活动•现场服务任务书•数据转换•用户问题的响应及跟踪状态•项目总结及数据分析接收问题工作落实和用户确认《用户问题报告》维护管理员/维护经理修改问题并向用户提交系统测试经理是否测试否是任务接受者部门经理分析问题工作安排录入用户问题问题关闭编译并提交测试申请用户问题报告执行测试用户需求说明书软件测试与发布申请表用户需求说明书(或修改后加设计)维护过程关键活动•用户问题的收集•缺陷跟踪工具•现场服务任务书项目问题处理流程提交用户问题报告将问题录入缺陷跟踪系统评估并受理用户问题向客户反馈受理情况处理问题更新报告用户确认解决效果关闭问题验证并实施问题解决方案SQA工程师评审人员收集结果记录分发评审材料收集评审准备记录提交《评审报告》评审对象的检查表评审对象达到评审准备就绪准则?是SEPG评审负责人产品评审计划验证评审活动编写《评审报告》跟踪验证评审缺陷处理分析评审结果组织评审参加评审其他相关材料准备评审评审缺陷跟踪表否项目数据分析汇总表评审缺陷跟踪表评审报告评审和同行评审过程关键活动•评审准备•缺陷跟踪工具•数据汇总分析表想一想•如何进行有效评审•什么是评审准备就绪准则?什么是评审完成准则?制定项目日程过程否是测试阶段?制定/变更开发阶段项目日程组织制定/变更项目日程制定/变更测试阶段日程制定/变更实施阶段日程项目日程项目日程实施阶段?否是开发经理部门经理实施经理测试经理项目经理分发《项目日程》审核合并项目日程审核通过?否是否是开发阶段?关键活动•任务细化•任务跟踪,状态维护•日程变更项目监控过程项目经理中心(院)总监项目数据分析汇总表无有里程碑?里程碑总结检查项目状态汇总项目状态项目状态报告部门项目总结项目问题跟踪表有无问题?否是部门经理整理问题处理问题确认问题关闭问题解决建议问题解决建议有无上报问题?有无上报问题?有无有无关键活动•项目状态报告(周报)•项目状态报告(月报)•数据汇总分析表,保证准确性•计划变更•里程碑总结想一想•《项目日程》的各个阶段任务由谁负责维护?哪种情况下需要变更?一般来说,项目日程大概多久细化一次较为合适?•第四部分重点指南和流程介绍重点指南和流程介绍重点指南SPI_OPD_G02_过程裁剪指南.docSPI_OPD_G04_软件项目组架构.docSPI_PR01_G01_软件缺陷管理指南.docSPI_SCM01_G01_配置管理指南.docSPI_SPE_G01_软件项目产出物版本标识及版本号升级指南.docSPI_SPE01_G01_标准工作产品集.docSPI_SPE01_G12_业务建模示例.docSPI_SPE01_G13_用例建模示例.docSPI_SPE01_G31_需求规格说明书编写指南(OP).docSPI_SPE01_G51_需求分析指南(OA).doc重点指南和流程介绍重点指南(续)SPI_SPE02_G11_用例分析指南(OO).docSPI_SPE02_G12_实体分析指南(OO).docSPI_SPE02_G14_用例设计指南(OO).docSPI_SPE02_G15_类设计指南(OO).docSPI_SPE02_G16_基于J2EE平台的架构设计指南.docSPI_SPE02_G32_软件界面设计指南(OP).docSPI_SPE02_G51_系统设计指南(OA).docSPI_SPE03_G13_代码生成与反向工程指南(OO).docSPI_SPE03_G16_编码规范(OO).docSPI_SPE03_G17_编码指南(OO).doc重点指南和流程介绍重点指南(续)SPI_SPE03_G18_