第13章 · 播客 第7集

开发管理 · 过程改进:CMM 五级与 CMMI 两种表示

🎙️ 本集播客第7集(末集):软件过程改进四大模型——CMM 五级阶梯逐级辨析(初始、可重复、定义、管理、优化)、CMMI 阶段式与连续式两种表示方法、ISO9000 与 CMM 的异同、ITIL 的版本脉络;结尾附全章必背清单并引出第 14 章。练习题第 12、13 题落在本集。 语音由微软 Edge 神经网络语音预生成(女声·晓伊,男声·云希)。点击下方任意对话可直接从该句开始播,当前句朗读时下一句已预先加载,无缝衔接。
🎙️ 第13章播客 第7集
⬇ 下载本集 点击播放
阿明
师姐,最后一节了。软件过程改进到底是改进什么?
小雅
先立定义:软件过程改进,英文 Software Process Improvement,缩写 SPI,用于帮助软件企业对其软件生产过程进行计划、过程诊断、改进方案的制订及实施等工作。它的实施对象是软件企业的软件过程,即软件产品的生产过程,也包括配置管理、软件维护等辅助过程。目前使用最多的软件过程改进模型包括 CMM、CMMI、ISO9000 和 ITIL 等系列标准——四个名字,多选题直接考。
阿明
CMM 这五个级别我最熟,但总把二三级记混。
小雅
那就一级级爬梯。W-CMM,软件能力成熟度模型,为软件企业的过程能力提供了一个阶梯式的进化框架,阶梯共有五级。第一级实际上是一个起点,任何准备按 CMM 体系进化的企业都自然处于这个起点上。还要记一句硬规矩:CMM 体系不主张跨越级别的进化,因为从第二级起,每一个低的级别实现均是高的级别实现的基础。判断题问「企业可以从初始级直接跳到管理级」,错。
小雅
第一级初始级:软件过程是未加定义的随意过程,项目的执行是随意甚至是混乱的。也许有些企业制定了一些软件工程规范,但若这些规范未能覆盖基本的关键过程要求,且执行没有政策、资源等方面的保证时,那么它仍然被视为初始级——注意这句,有规范不等于脱离初始级,关键看覆盖关键过程要求和有没有政策资源保证。
小雅
第二级可重复级:根据多年的经验和教训,人们总结出软件开发的首要问题不是技术问题而是管理问题——这句话本身就是判断题——因此第二级的焦点集中在软件管理过程上。一个可管理的过程则是一个可重复的过程,一个可重复的过程则能逐渐进化和成熟。第二级的管理过程包括了需求管理、项目管理、质量管理、配置管理和子合同管理五个方面,其中项目管理分为计划过程和跟踪与监控过程两个过程。
小雅
第三级定义级:第二级仅定义了管理的基本过程,而没有定义执行的步骤标准;第三级则要求制定企业范围的工程化标准,无论是管理还是工程开发都需要一套文档化的标准,并将这些标准集成到企业软件开发标准过程中去。所有开发的项目需根据这个标准过程剪裁出与项目适宜的过程,过程的剪裁不是随意的,在使用前需经过企业有关人员的批准。
小雅
第四级管理级:第四级的管理是量化的管理,所有过程需建立相应的度量方式,所有产品的质量需有明确的度量指标,量化控制将使软件开发真正变成一种标准的工业生产活动。第五级优化级:目标是达到一个持续改善的境界,可根据过程执行的反馈信息来改善下一步的执行过程,即优化执行步骤;达到了这一级,表明企业能够根据实际的项目性质、技术等因素不断调整软件生产过程以求达到最佳。
阿明
五级背出来了:初始、可重复、定义、管理、优化。练习题第 12 题问第三级是什么,四个选项初始级、可重复级、定义级、优化级。
小雅
答案定义级。给你一个防混口诀:二级可重复管管理,三级定义出标准,四级管理看量化——注意第四级叫「管理级」,而二级的关键词也是管理,区别在四级是量化;死记法:一二三四五对应随意、重复、标准、量化、持续改善。
阿明
CMMI 呢?它和 CMM 什么关系?
小雅
CMMI,Capability Maturity Model Integration,能力成熟度模型集成,是 CMM 模型的最新版本。CMMI 与 CMM 最大的不同点在于:CMMISM-SE/SW/IPPD/SS 1.1 版本有四个集成成分——系统工程 SE 和软件工程 SW 是基本的科目,对于有些组织还可以应用集成产品和过程开发方面 IPPD 的内容,如果涉及供应商外包管理可以相应地应用 SS,即 Supplier Sourcing 部分。
小雅
然后是练习题第 13 题的原点:CMMI 有两种表示方法,一种是和软件 CMM 一样的阶段式表现方法,另一种是连续式的表现方法。选项递进式、迭代式、螺旋式都是干扰项,答案阶段式。两种方法的区别必须能复述:阶段式表现方法仍然把 CMMI 中的若干个过程区域分成了 5 个成熟度级别,帮助实施 CMMI 的组织建议一条比较容易实现的过程改进发展道路;而连续式表现方法则通过将 CMMI 中过程区域分为四大类——过程管理、项目管理、工程及支持,每大类中的过程区域又进一步分为基本的和高级的,一个组织可以把项目管理或者其他某类的实践一直做到最好,而其他方面的过程区域可以完全不必考虑。
阿明
阶段式按成熟度分级往上爬,连续式按类挑着做。那 ISO9000 呢?
小雅
国内软件公司采用的 ISO 9000 系列质量体系认证通常有 ISO 9001 的 1994 年版和 2000 年版。ISO 9001 和 CMM 非常相似的是:两者都共同着眼于质量和过程管理,而且它们都是基于戴明博士的全面质量管理 TQM 产生的,因此不存在任何矛盾的地方。但是它们的基础是不同的:ISO 9001,即 ISO 9000 标准系列中关于软件开发和维护的部分,确定一个质量体系的最少需求;而 CMM 强调持续过程改进。
小雅
再背三个对应关系:在 1994 年版的 ISO 9001 中,CMM 2 级的 6 个关键过程区域所涉及的部分基本都明确作出了要求;CMM 3 级的 7 个关键过程区域中所涉及的内容大多数都提到了,但要求不是非常详细;很多实施了 94 版 ISO 9000 的企业普遍反映 CMM 比 ISO 的要求明确、详细得多。而 2000 年版的 ISO 则和 CMM 有更多的直接对应关系,甚至是大量 CMM 4 级和 5 级的要求。抓两个数字:二级 6 个关键过程区域、三级 7 个关键过程区域。
阿明
最后一个 ITIL,这名字听着像英国的东西。
小雅
还真是。ITIL,信息技术基础设施库,是英国政府中央计算机与电信管理中心 CCTA 在 20 世纪 90 年代初期发布的一套 IT 服务管理最佳实践指南。此后 CCTA 又在 HP、IBM、BMC、CA 和 Peregrine 等主流 IT 资源管理软件厂商所做实践和探索的基础上,总结了 IT 服务的最佳实践经验,形成一系列基于流程的方法,用以规范 IT 服务的水平,并在 2000 年至 2003 年期间推出新的 ITIL V2.0 版本,于 2007 年推出 V3.0 版本。版本时间线要记:V2.0 是 2000 到 2003 年,V3.0 是 2007 年。
小雅
它的作用和意义:ITIL 为企业的 IT 服务管理实践提供了一个客观、严谨、可量化的标准和规范,企业的 IT 部门和最终用户可以根据自己的能力和需求定义自己所要求的不同服务水平,参考 ITIL 来规划和制定其 IT 基础架构及服务管理。对企业来说,实施 ITIL 的最大意义在于把 IT 与业务紧密地结合起来,从而让企业的 IT 投资回报最大化。最后这句「最大意义」是定性题的答题句。
阿明
到全章收口了。这章信息量是真大,帮我拉一遍全章必背。
小雅
全章必背第一段——总纲与三大管理:70% 失败项目因管理不善,仅约 10% 项目按计划交付;影响全局的是管理水平、技术只影响局部;九大知识领域、软件开发七大重点方面,配置管理属整体管理、人员管理属人力资源管理;三约束范围时间成本;范围管理五部分、成本管理四部分、时间管理五部分;范围核实管「接收」、质量控制管「正确性」;估算是算花费、定价是商业决策。
小雅
第二段——配置与文档:SCM 是控制软件系统一系列变化的学科;IEEE 729-1983 七大功能;ISO9000.3 五条要求;三核心版本管理、问题跟踪、建立管理,版本管理是基础;ClearCase 核心功能是版本控制,PVCS 公认工业标准,VSS 四功能 CheckIn、CheckOut、Branch、Label,CVS 开放源码与 VSS 同级别。文档七大作用、三类文档开发管理产品、质量五特征针对性精确性清晰性完整性灵活性。
小雅
第三段——需求、质量与风险:需求变更三依据项目计划、变更请求、绩效报告,小变更也走正规流程;需求跟踪五活动,不含代码重构。质量三部分计划保证控制;评审在各个阶段都要进行,准则评审产品而不是评审设计者,为了发现问题而不是解决问题;测试四层次、三文档。风险值等于概率乘影响,25% 乘 4 周等于 1 周;四种应对规避、转移、减轻、接受,没有忽略;前 10 个风险列表是最有效的监控工具。
小雅
第四段——人与过程:人力资源管理三过程;团队四阶段形成、震荡、正规、表现;项目经理六能力。CMM 五级初始、可重复、定义、管理、优化,不主张越级;CMMI 两种表示方法阶段式和连续式;ISO9001 定最少需求、CMM 强调持续过程改进,都基于 TQM;ITIL 是英国 CCTA 的 IT 服务管理指南,V3.0 于 2007 年推出,最大意义是把 IT 与业务紧密结合。
阿明
这下第 13 章整个串起来了——从为什么管、管什么、用什么工具,一直到怎么评、怎么改进。
小雅
对,练习题十三道全部有落点,回去直接做题验证。下一章是第 14 章信息系统基础知识,讲信息的定义、系统分类、信息化体系这些内容,和这章的视角完全不同——从管理回到技术概念本身,我们下章见。