CMMI3.0 实践域解读
CMMI5级认证是CMMI(Capability Maturity Model Integration,能力成熟度集成模型)认证中的Zuigaoji别。CMMI是由美国国防部与卡内基-梅隆大学和美国国防工业协会共同开发和研制的,其目的是帮助软件组织对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。CMMI5级,也称为优化级,要求企业在定义级的基础上,还要持续改进、量化管理和优化其过程。具体来说,CMMI5级与CMMI3级相比有以下几个主要区别:
实践域(Practice Area)在CMMI(Capability Maturity Model Integration,能力成熟度模型集成)中是一个核心概念。它指的是软件开发和维护过程中的一系列相关实践活动,这些活动共同构成了一个完整的软件开发和管理过程。在CMMI的框架中,实践域是评估和改进组织软件过程的基础。实践域通常包括但不限于以下几个方面:
过程管理:包括组织过程改进、组织过程定义、组织培训等实践域,目的是确保组织的过程能够得到持续的改进和有效的管理。项目管理:包括项目初始化、项目策划、项目监督和控制、项目收尾等实践域,旨在确保项目能够按照既定的目标和参数顺利实施。支持性过程:包括需求管理、配置管理、过程测量和分析、质量保证、风险管理、决策分析和解决方法等实践域,这些实践域提供了软件开发过程中的支持性服务,确保变更得到有效管理,质量和风险得到控制。CMMI实践域
理解实践域的关键在于认识到它们是相互关联和相互影响的。每个实践域都包含了多个具体的实践条目,这些条目描述了组织在达到某个成熟度级别时应该执行的具体活动。例如,在需求管理实践域中,可能会包括需求收集、需求分析、需求验证和需求管理等活动。CMMI的目的是帮助组织在其软件开发和维护过程中实现成熟度级别的提升。通过实施和实践域中定义的zuijia实践,组织可以提高其项目的质量和效率,Zui终达到更gaoji别的成熟度。在CMMI评估中,实践域是评估团队用来验证组织是否符合CMMI标准的关键维度。总的来说,实践域是CMMI模型中用来组织和管理软件过程改进的框架,它们定义了组织在各个成熟度级别应该实施的具体实践活动。通过理解和实施这些实践域,组织能够提升其软件开发和维护的能力。
交付 Doing交付和管理服务(DMS)服务交付管理(SDM)
建立、更新服务协议与服务系统并交付服务。
战略服务管理(STSM)识别、定义、维护并使用共性服务。
工程和开发产品(EDP)技术解决方案(TS)设计、实现产品或服务。
产品集成(PI)集成并交付产品或服务。
确保质量(ENQ)同行评审(PR)专家评审各种工作产品以及时发现问题。
过程质量保证(PQA)检查过程和工作产品与组织级标准规范的一致性。
需求开发和管理(RDM)覆盖了需求的获取、分析、描述、沟通、确认、以及变更管理等活动。
验证与确认(VV)采用测试、评审、原型、模型、试用等各种手段确保满足了需求。
选择与管理供应商(SMS)供应商合同管理(SAM)选择合格的供应商,签订合同,并管理合同的执行。
管理 Managing管理业务连续性(MBR)连续性(CONT)识别可能的业务中断,制定并执行连续性计划。
事故处理与预防(IRP)预防并处理各种事故的发生。
风险和机会管理(RSK)制定并实施计划以应对各种好或坏的可能事件。
管理员工(MWF)使能虚拟工作(EVW)定义和管理远程交付和工作的方法。
组织级培训(OT)跨团队的培训需求获取、策划、讲师选择、课程开发、培训实施及效果评价。
员工授权(WE)对团队授权,培养团队胜任力,跨团队协同,定义团队激励措施。
策划和管理工作(PMW)估算(EST)估算任务的规模、复杂度、工作量、成本、工期及所需的资源等。
策划(PLAN)制定合理的计划,并获得对计划的承诺。
监督与控制(MC)对照计划,监督任务的完成情况,并处理问题。
使能 Enabling管理数据(MD)数据管理(DM)建立、更新、落实、优化数据管理方法与机制。
数据质量(DQ)基于定义好的准则与方法对数据进行清洗,保证数据质量,并持续优化数据清洗方法。
管理人身安全与信息安全(MSS)确保人身安全(ESAF)识别工作环境、系统或可能对人造成的安全隐患,识别安全需求、定义安全策略、采取措施以消除对人身安全隐患。
确保信息安全(ESEC)识别信息安全需求、定义信息安全策略、采取措施以消除信息安全隐患。
管理安全威胁和漏洞(MST)识别并处理信息安全威胁与漏洞。
支持实施(SI)原因分析与解决方案(CAR)对各种典型的好事或坏事进行原因分析,识别并落实相应的纠正措施、预防措施、改进措施。
配置管理(CM)通过识别配置项、建立管理系统、配置审计等活动确保配置项不多、不少、正确、版本一致。
决策分析与解决方案(DAR)采用结构化的方法,进行重大的技术与管理决策。
改善 Improving改善性能(IMP)管理性能和度量数据(MPM)通过定量的数据管理过程的执行结果:过程效率、过程质量、产品质量。
过程资产开发(PAD)创建、更新、管理组织级过程资产库中。
过程管理(PCM)基于PDCA循环,组织级持续进行过程改进。
维持习惯与持久性(SHP)治理(GOV)高层管理者为过程的建立、执行与改进提供指导与支持。
实施基础设施(II)为过程的执行提供人员、知识、工具、资金、过程定义、经验教训、度量数据、监督等。
如何与敏捷相结合?
敏捷和CMMI的结合可以带来互补的效果,提高软件开发过程的效率和质量。
原则一致性:敏捷和CMMI都强调过程的持续改进、客户合作、响应变化等原则。确保在实践中贯彻这些原则,可以帮助两者更好地结合。灵活的应用:在结合时,应该保持敏捷方法的灵活性,避免过度文档化和严格的过程规范,同时确保关键的敏捷实践,如迭代开发、持续反馈和跨功能团队工作。过程改进:CMMI的实施可以支持敏捷团队的过程改进,通过定期的回顾会议和其他敏捷实践来优化工作流程。度量和反馈:敏捷团队可以利用CMMI中的度量实践来更好地跟踪进度、质量和风险。同时,定期的评审和审计可以为敏捷过程提供必要的反馈。角色和职责:在结合敏捷和CMMI的过程中,可以保留CMMI中的某些角色,如过程改进负责人(Process Improvement Leader)和质量保证(Quality Assurance),同时采用敏捷团队中的角色,如Scrum Master和Product Owner。文档和工件:虽然敏捷方法论不强调过多的文档,但CMMI要求一定的文档化。可以创建简化的文档模板,以满足CMMI的要求,同时保持敏捷的简洁性。培训和文化:结合敏捷和CMMI需要整个组织的参与和理解。提供适当的培训,建立支持这种结合的文化和环境。适应性:在结合过程中,应该根据项目的具体情况和团队的能力来调整实践,保持方法的适应性。持续评估:定期评估结合的效果,确保实践符合组织的目标和项目的需求。通过这些方法,敏捷和CMMI可以在组织内部相互补充,共同推动软件开发过程的成熟和优化。结合两者可以帮助组织在保持灵活性和响应能力的同时,提高过程的质量和效率。