CMMI 的定义
CMMI全称是Capability Maturity Model Integration,即能力成熟度模型集成。
CMMI是世界公认的软件产品进入国际市场的通行证,不仅是对产品质量的认证,更是一种软件过程改善的途径。如果一家公司最终通过CMMI的评估认证,标志着该公司在质量管理的能力已经上升到一个新的高度。
来源
1994年由美国国防部(United States Department of Defense)与卡内基-梅隆大学(Carnegie-Mellon University)下的软件工程研究中心(Software Engineering Institute,SEISM)以及美国国防工业协会(National Defense Industrial Association)共同开发和研制的
CMMI主要关注点就是成本效益、明确重点、过程集中和灵活性四个方面。
等级 ML1 ML2 ML3 初始级 已管理级 已定义级 软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。 建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。 已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。 ML4 量化管理级 分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。 ML5 默认情况下,任何一家软件公司都可以认为是1级。 2级比较容易做到,3级的要求要多很多,一般来说建议2、3级一起来做。3级到4级间跨度和难度较大。但如果4级做得比较好,要做到5级难度不算很大。参考示意图如下: 而评估的时候,如果2级的标准达到,但3级的要求达不到,就算4级的要求达到了,也只能算2级。 优化级 过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。 各级的标准 先理解过程域的概念。 过程域(Process Area),简称 PA,简单的说就是软件开发过程中的某一个方面。 每个ML等级都被分解为若干个过程域,每个过程域有明确的目标(Goal)和实践(Practice),必须要达到该等级所有过程域的目标,才可达到该等级。而达成目标的方式,即要完成这个目标对应的所有实践。 过程域的定义 类别 缩写 OPD 过程域英文名称 Organizational Process Definition Organizational Process Focus Organizational Training 过程管理 OPF OT 过程域中文名称 组织级过程定义 组织级过程焦点 过程域的释义 PP Project Plan 项目管理 PMC Project Monitoring and Control SAM Supplier Agreement Management 建立和维护有用的组织过程资产 在理解现有过程强项和弱项的基础上计划和实施组织过程改善 增加组织各级人员的技能和知识,使他们能有效组织培训管理 地执行他们的任务 保证在正确的时间有正确的资源可用,为每个人员分配任务、协调人员,根据实际情况,调整项项目计划 目 通过项目的跟踪与监控活动,及时反映项目的进度、费用、风险、规模、关键计算机资源及工作量等情况,通过对跟踪结果的分析,依据跟踪与项目监督与控监控策略采取有效的行动,使项目组能在既定的制 时间、费用、质量要求等情况下完成项目 供应商协议管旨在对以正式协定的形式从项目之外的供方采理 办的产品和服务实施管理 根据从组织标准过程剪裁而来的集成的、定义的Integrated Project Management 集成项目管理 过程对项目和利益相关者的介入进行管理 识别潜在的问题,以便策划应对风险的活动和必RSKM 要时在整个项目生存周期中实施这些活动,缓解Risk Management 风险管理 不利的影响,实现目标 需求开发的目的在于定义系统的边界和功能、非RD 功能需求,以便涉众(客户、最终用户)和项目组Requirement Development 需求开发 对所开发的内容达成一致 需求管理的目的是在客户和软件项目之间就需REQM RequirementManagement 需求管理 要满足的需求建立和维护一致的约定 在开发、设计和实现满足需求的解决方案,解决方案的设计和实现等都围绕产品、产品组件和与工程管TS Technical Solution 技术解决方案 过程有关的产品 从产品部件组装产品,确保集成产品功能正确并理 PI Product Integration 产品集成 交付产品 确认证明产品或产品部件在实际应用下满足应VAL Validation 确认 用要求 VER Verification 验证 验证确保选定的工作产品满足需求规格 建立和维护在项目的整个软件生存周期中软件CM Configuration Management 配置管理 项目产品的完整性 过程和产品质为项目组和管理层提供项目过程和相关工作产PPQA Process and Product Quality Assurance 量保证 品的客观信息 开发和维持度量的能力,以便支持对管理信息的MA Measurement and Analysis 测量与分析 需要,作为改进、了解、控制决策 决策分析与解应用正式的评估过程依据指标评估候选方案,在DAR Decision Analysis and Resolution 决 此基础上进行决策 建立与维护组织过程性能的量化标准,以便使用支持管OPP Organizational Process Performance 组织过程性能 量化方式的管理项目 量化的项目管量化管理项目已定义的项目过程,以达成项目既理 QPM QuantitativeProjectManagement 理 定的质量和过程性能目标 选择并推展渐进创新的组织过程和技术改善,改OID Organizational Innovation and 组织的创新与善应是可度量的,所选择及推展的改善需支持基Deployment 推展 于组织业务目的的质量及过程执行目标 因果分析与解识别缺失的原因并进行矫正,进一步的防止未来CAR Causal Analysis and Resolution 决 再次发生 IPM 级别、PA、Goal与Practice的关系示意图如下: CMMI等级 ML1 过程域中文名称 过程域英文名称 需求管理 项目规划 项目监控 供应商协议管理 度量分析 过程和产品质量保证 ML2 配置管理 需求开发 ML3 技术方案 Requirements Management Project Planning Project Monitoring and Control Supplier Agreement Management Measurement and Analysis Process and Product Quality Assurance Configuration Management Requirements Development Technical Solution 产品集成 验证 确认 组织过程焦点 组织过程定义 组织培训 集成化项目管理 风险管理 决策分析与解决方案 组织过程绩效 ML4 定量项目管理 组织革新与推广 原因分析与解决方ML5 Product Integration Verification Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Risk Management Decision Analysis and Resolution Organizational Process Performance Quantitative Project Management Organizational Innovation and Deployment 案 Causal Analysis and Resolution 可见,PA共22个,2级有7个PA,3级有11个PA,4级有2个PA,5级有2个PA Practice一共400+ 能力度等级:属于连续式表述,共有六个能力度等级(0~5),每个能力度等级对应到一个一般目标,以及一组一般执行方法和特定方法。
评估办法
评估一个企业达到多少级别的要求,其实就是看相应的Practice是否达到要求。评估办法根据严谨的程度,分为以下办法: SCAMPI C SCAMPI B SCAMPI A
SCAMPI A是最严谨的,进行正式评估的时候,必须采用该办法。下面我们简单体会一下SCAMPI A评估方法。
举一个日常的例子,比方说你今天中午吃了饭,但别人不知道,别人要判断你是不是吃了饭,用SCAMPI A的办法来判断的话,需要提供以下证据:
1)书面直接证据,能证明你吃了饭的书面的直接的证据。如果你去餐厅吃饭的,你的帐单就可以用来做直接证据,如果你在家做饭,那就麻烦,可能没有能留下直接书面证据了。
2)书面间接证据:比方说你在家做饭,之前去买菜了,你买菜的账单就可以作为间接书面证据。
3)访谈证据:如果别人问你,今天中午有没有吃饭,你能准确说出来,并且没有疑点,那就认为证据有效了,或者是如果你和别人吃饭,别人能说出跟你吃了饭,也认为证据有效了。
面,对应软件开发来说,就是做好软件开发的某一个方面。 2、3级共有18个过程域(PA),主要内容如下,分四大类:
其他术语:
Life Cycle:(Software Life Cycle Model)项目管理的生命周期。关注的是项目的过程管理。 MA:(Measurement & Analysis)。开发并持续发展度量能力以满足项目管理的信息需求。
Milestone Review:(Milestone Review)阶段评审。在阶段结束时评审项目的状态并确定项目是否应该进入下一阶段。
Process Tailoring:(Process Tailoring)过程裁剪。为了使组织定义的标准过程能够适合于组织项目管理,不论该项目是提供产品还是服务。
Review:(Review)评审。可以有效提高系统,软件及产品的质量。 Testing:软件测试。
CMMI模型表达方式:、阶段式表述提供系统化与结构化的方式,一次
一个阶段达到以模型为基础的过程改进。达成每一个阶段可确保有足够的过程基础建设,可作为下一个阶段过程改进的基础。
连续式:连续式表述可提供最大的弹性。一个组织可以选择改进单一过程相关的问题点的绩效,或是可以使用多个领域以密切配合组织的经营目标。
名词术语
编辑
1-20
1 AT Assessment Team 评审小组
2 ATM Assessment Team Member 评审小组成员 3 BA Baseline Assessment 基线评审
4 CAR Causal Analysis and Resolution 原因分析与决策 5 CBA CMM-Based Appraisal 基于CMM的评价
6 CBA-IPICMM-Based Appraisal for Internal Process Improvement 为内部过程改进而进行的基于CMM的评价(通常称为CMM评审) 7 CC Configuration Controller 配置管理员 8 CF Common Feature 公共特性
9 CFPS Certified Function Point Specialist 注册功能点专家 10 CI Configuration Item 配置项
11 CM Configuration Management 配置管理 12 CMM Capability Maturity Model 能力成熟度模型
13 CMMI Capability Maturity Model Integration 能力成熟度集成模型 14 COTS Commerce off the shelf 商业现货供应
15 DAR Decision Analysis and Resolution 决策分析与制定 16 DBD Database Design 数据库设计 17 DD Detailed Design 详细设计 18 DP Data Provider 数据提供者 19 DR Derived Requirement 派生需求
20 EPG Engineering Process Group 工程过程小组 21-40
21 FP Function Point 功能点
22 FPA Function Point Analysis 功能点分析 23 FR Functional Requirement 功能性需求 24 GA Gap Analysis 差距分析 25 ID Interface Design 接口设计
26 IFPUG International Function Point Users Group 国际功能点用户组织 27 IPM Integrated Project Management 集成项目管理 28 IR Interface Requirement 接口需求
29 KPA Key Process Area 关键过程域 30 KR Key Requirements 关键需求 31 LA Lead Assessor 主仸评审员
32 MA Measurement and Analysis 测量与分析 33 MAT Metrics Advisory Team 度量咨询组 34 MCA Metrics Coordinator and Analyst 度量专员 35 ML matreraty library 度量数据库
36 NFR Non-functional Requirement 非功能性需求 37 OC Operational Concept 操作概念
38 OID Organizational Innovation and Deployment 组织革新与部署 39 OPD Organizational Process definition 组织过程定义 40 OPF Organizational Process focus 组织过程焦点 41-60
41 OPL Organizational Process Assets 组织过程财富 42 OPP Organaizational Process Perormance组织过程性能 43 OSSP Organization’s Set of Standard Process 组织标准过程集合 44 OT Organizational Training 组织级培训 45 PA Process Areas 过程域
46 PAT Process Action Team 过程行动小组 47 PAL Process Assets Library 过程财富库 48 PD Preliminary Design 概要设计
49 PDSP Project Defined Standard Processes 项目定义标准过程 50 PI Produce Integration 产品集成 51 PLC Product Life Cycle产品生命周期 52 PMC Project Monitoring and Control 项目监控 53 PP Project Planning 项目策划
54 PPQA Process and Product Quality Assurance 过程与产品质量保证 55 PPR Price Performance Ratio 性能价格比 56 SQA Software Quality Assurance软件质量保证 57 QA Quality Assurance 质量保证
58 QAP Software Quality Assurance Plan 质量保证计划 59 QPM Quantitative Project Management 量化项目管理 60 RD Requirements Development 需求开发 61-80
61 RM/ReqM Requirements Management 需求管理 62 RSKM Risk Management 风险管理
63 RTM Requirement Traceability Matrix 需求跟踪矩阵 64 SAM Supplier Agreement Management. 供应协议管理 65 SC Steering Committee 指导委员会
66 SCAMPI Standard CMMI Assessment Method for Process Improvement 过程改进CMMI标准评审方法 67 SCCB Software Configuration Control Board软件配置管理控制委员会 68 SCM Software Configuration Management 软件配置管理 69 SDP Software Development Plan 软件开发计划 70 SEI Software Engineering Institute (美国)软件工程学院 71 SEPG Software Engineering Process Group软件工程过程组 72 SPI Software Process Improvement软件过程改进 73 SPP Software Project Planning 软件项目策划
74 SPTO Software Project Tracking and Oversight 软件项目跟踪与监控 75 SR System Requirements 系统需求
76 SRS Software Requirement Specification软件需求规格 77 SSM Software Subcontract Management 软件分包管理 78 SSR Software System Requirement 软件系统需求 79 TS Technical Solution 技术解决方案 80 UC Use Case 用例 81-89
81 UID User Interface Design用户界面设计 82 VAL Validation 确认 83 VER Verification 验证
84 WBS Work Breakdown Structure工作分解结构 85 WP Work Products 工作产品 86 Pre-assessment 预评审 87 Baseline 基线
88 Quality Attribute 质量属性 89 Scenario 场景
CMMI的价值
编辑
CMMI为企业带来价值主要体现在以下几个方面:
第一、能保证软件开发的质量与进度,能对“杂乱无章、无序管理”的项目开发过程进行规范。
第二、有利于成本控制。因为质量有所保证,浪费在修改、解决客户的抱怨方面的成本会降低很多。绝大多数情况是缺少规范制度,只是求快。项目完成后,要花很多时间修修补补,费用很容易失控。
第三、有助于提高软件开发者的职业素养。每一个具体参与其中的员工,无论是项目经理,还是工程师,甚至一些高层管理人的做事方法逐渐变得标准化、规范化。
第四、能够解决人员流动所带来的问题。公司通过过程改进,建立了财富库以共享经验,而不是单纯依靠某些人员。 第五、有利于提升公司和员工绩效管理水平,以持续改进效益。通过度量和分析开发过程和产品,建立公司的效率指标。
连续式 vs 阶段式
连续式和阶段式同时也是评估的两个不同角度,用连续式评估,企业会得到很多个PA的Level,用阶段式评估,企业会得到一个整体的Level。
企业商业目标与CMMI
因篇幅问题不能全部显示,请点此查看更多更全内容