CMM入门培训材料(共69张).pptx
《CMM入门培训材料(共69张).pptx》由会员分享,可在线阅读,更多相关《CMM入门培训材料(共69张).pptx(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、CMM入门培训教程主要内容vCMM的基本概念的基本概念v能力成熟度模型能力成熟度模型CMMv能力成熟度模型集成能力成熟度模型集成CMMIvCMM与与CMMI的选择的选择CMM的基本概念(1/4) v组织(组织(organization)。管理软件项目,能)。管理软件项目,能对项目进行评估和过程改进的实体,如政对项目进行评估和过程改进的实体,如政府机关、公司、服务部门等。府机关、公司、服务部门等。v项目(项目(project)。由组织承担的,并需要)。由组织承担的,并需要组织中各部门通力合作完成的指定产品的组织中各部门通力合作完成的指定产品的开发和维护任务。任何一个项目都涉及经开发和维护任务。任
2、何一个项目都涉及经费、成本和进度计划。这里的产品包括硬费、成本和进度计划。这里的产品包括硬件、软件或其他构件。件、软件或其他构件。CMM的基本概念的基本概念(2/4)v软件过程(软件过程(software process)。软件开)。软件开发人员为开发和维护软件及相关产品所实发人员为开发和维护软件及相关产品所实施的一系列步骤,这些步骤涉及方法、工施的一系列步骤,这些步骤涉及方法、工具以及人的组织和行为。软件产品的质量具以及人的组织和行为。软件产品的质量取决于软件开发和维护过程的质量,与其取决于软件开发和维护过程的质量,与其他产品的开发过程一样,软件过程也必须他产品的开发过程一样,软件过程也必须
3、进行严格管理,因为只有严格管理才能保进行严格管理,因为只有严格管理才能保证效益和质量。证效益和质量。CMM的基本概念的基本概念(3/4)v组织的标准软件过程(组织的标准软件过程(organizations standard software process)。组织内部使用)。组织内部使用的软件过程,它描述软件过程要素和要素之间的软件过程,它描述软件过程要素和要素之间的关系,用它可以建立某一具体项目的软件过的关系,用它可以建立某一具体项目的软件过程。软件开发组织的软件过程能力是软件开发程。软件开发组织的软件过程能力是软件开发组织能够承接软件项目的重要依据。成熟的软组织能够承接软件项目的重要依据。
4、成熟的软件开发组织十分重视提高自身的软件过程能力,件开发组织十分重视提高自身的软件过程能力,组织的领导者注意调动各层次、各类型人员的组织的领导者注意调动各层次、各类型人员的积极性和创造性,注意提高员工素质和技能,积极性和创造性,注意提高员工素质和技能,注意培育和发扬企业文化。在软件开发过程中,注意培育和发扬企业文化。在软件开发过程中,大家能够团结协作,能够将人、软件开发策略大家能够团结协作,能够将人、软件开发策略和方法、软件工具和环境有机地结合起来,使和方法、软件工具和环境有机地结合起来,使得软件开发和维护的整个过程是系统的、完整得软件开发和维护的整个过程是系统的、完整的、一致的和规范的。软件
5、开发组织的软件过的、一致的和规范的。软件开发组织的软件过程是动态的,是逐步成熟和演化的。程是动态的,是逐步成熟和演化的。CMM的基本概念的基本概念(4/4)v项目的软件过程(项目的软件过程(projects defined software process)。按照项目的特点和要求,对组织的)。按照项目的特点和要求,对组织的标准软件过程进行剪裁和描述,包括相关的软件标准软件过程进行剪裁和描述,包括相关的软件标准、规程、工具和方法。标准、规程、工具和方法。v组织的软件过程资产(组织的软件过程资产(organizations software process assets)。软件过程资产是软)。软件
6、过程资产是软件开发组织能够控制和管理的,用于软件过程定件开发组织能够控制和管理的,用于软件过程定义和剪裁,以及软件项目开发和管理的实体,包义和剪裁,以及软件项目开发和管理的实体,包括组织的标准软件过程、批准使用的软件生命周括组织的标准软件过程、批准使用的软件生命周期模式、剪裁标准软件过程的指南和准则、软件期模式、剪裁标准软件过程的指南和准则、软件过程数据库、软件过程文档库等。过程数据库、软件过程文档库等。能力成熟度模型能力成熟度模型CMM v1)CMM的能力成熟度级别及关键过程域的能力成熟度级别及关键过程域v2)成熟度级别的行为特征和关键过程域)成熟度级别的行为特征和关键过程域v3) CMM的
7、关键实践和共同特征的关键实践和共同特征v4)能力成熟度的提高和)能力成熟度的提高和CMM评估评估1)CMM的能力成熟度级别及关键过的能力成熟度级别及关键过程域程域vCMM的能力成熟度级别及关键过程域如表所示。的能力成熟度级别及关键过程域如表所示。CMM的能力成熟度共分的能力成熟度共分5级:级:L1初始级、初始级、L2可重复可重复级、级、L3已定义级、已定义级、L4已管理级和已管理级和L5优化级。因为优化级。因为初始级初始级L1处于无序工作状态,无系统的规范,故在处于无序工作状态,无系统的规范,故在表中略去。表中略去。L2以上包含若干关键过程域。以上包含若干关键过程域。 v关键过程域(关键过程域
8、(key process area)描述软件过程)描述软件过程的属性,通过完成一组相互关联的活动,实现一的属性,通过完成一组相互关联的活动,实现一组对建立过程能力至关重要的目标。关键过程域组对建立过程能力至关重要的目标。关键过程域是是SEI标识的,帮助确定软件开发组织的软件过程标识的,帮助确定软件开发组织的软件过程能力,评估软件成熟度的基本单元。关键过程域能力,评估软件成熟度的基本单元。关键过程域用具有固定结构和语句的框架表示。关键过程域用具有固定结构和语句的框架表示。关键过程域的目标(的目标(goals)是指导和评估组织或组织的项目)是指导和评估组织或组织的项目有效实践关键过程域的指南,是关
9、键过程域应完有效实践关键过程域的指南,是关键过程域应完成的任务和进行关键实践的概括描述。要达到关成的任务和进行关键实践的概括描述。要达到关键过程域的目标,不仅需要一系列关键实践活动键过程域的目标,不仅需要一系列关键实践活动的支持,而且还要依赖较低级别关键过程域的实的支持,而且还要依赖较低级别关键过程域的实现。现。CMM的关键实践(的关键实践(key practices)指对关键)指对关键过程域的有效实施和制度化其重要作用的基础设过程域的有效实施和制度化其重要作用的基础设施和活动,如组织结构、策略、标准、培训、设施和活动,如组织结构、策略、标准、培训、设备、工具等,它与具体的组织和实现无关。下面
10、备、工具等,它与具体的组织和实现无关。下面将对将对CMM能力成熟度每一级涉及的关键过程域、能力成熟度每一级涉及的关键过程域、目标和为达到这一目标必须完成的关键实践逐步目标和为达到这一目标必须完成的关键实践逐步展开讨论。展开讨论。能力成熟度模型能力成熟度模型CMM v1)CMM的能力成熟度级别及关键过程域的能力成熟度级别及关键过程域v2)成熟度级别的行为特征和关键过程域)成熟度级别的行为特征和关键过程域v3) CMM的关键实践和共同特征的关键实践和共同特征v4)能力成熟度的提高和)能力成熟度的提高和CMM评估评估2)成熟度级别的行为特征和关键过)成熟度级别的行为特征和关键过程域程域v(1)L1初
11、始级(初始级(initial)。)。v初始级的软件开发组织几乎没有软件过程管初始级的软件开发组织几乎没有软件过程管理,软件开发是无序和混乱的,软件开发过理,软件开发是无序和混乱的,软件开发过程是不稳定的,软件项目的成功取决于开发程是不稳定的,软件项目的成功取决于开发精英个人或小组对软件过程的理解和努力。精英个人或小组对软件过程的理解和努力。(2)L2可重复级(repeatable)。(1/8)v为了跟踪软件开发过程的进度、成本和产品为了跟踪软件开发过程的进度、成本和产品功能,可重复级的软件开发组织根据自身的功能,可重复级的软件开发组织根据自身的经验和实际情况建立了基本的项目管理体系,经验和实际
12、情况建立了基本的项目管理体系,制定了基本的软件过程管理和控制措施。这制定了基本的软件过程管理和控制措施。这些措施包括:必要的规章制度和纪律、软件些措施包括:必要的规章制度和纪律、软件开发过程的论证和定义、人员的分工和培训、开发过程的论证和定义、人员的分工和培训、软件过程的阶段评审及用评审结果指导下一软件过程的阶段评审及用评审结果指导下一步的工作等。软件开发组织能够重复以前开步的工作等。软件开发组织能够重复以前开发类似软件项目取得的成功。发类似软件项目取得的成功。v可重复级的关键过程域包括:可重复级的关键过程域包括:需求管理需求管理、软件项目计划软件项目计划、项目跟踪和监督项目跟踪和监督、分包合
13、分包合同管理同管理、软件质量保证和软件配置管理软件质量保证和软件配置管理。下面介绍各关键过程域要达到的目标和关下面介绍各关键过程域要达到的目标和关键实践活动。键实践活动。(2)L2可重复级(repeatable)(3/8)v需求管理(requirements management)。建立客户的软件项目需求,并使项目开发人员与客户对软件需求产生一致的理解。这一点很重要,因为它是软件项目管理和开发的基础,在很多场合还需要软件需求工程的支持。(2)L2可重复级(repeatable)(4/8)v软件项目计划(software project planning)。制定实施软件工程与管理软件项目的工作计
14、划。主要工作包括:明确任务,估算软件产品的规模、所需资源和约束条件,估算存在的风险以及产生项目计划文档等。软件项目计划是管理软件项目必需的文件和工具。(2)L2可重复级(repeatable)(5/8)v软件项目跟踪和监督(software project tracking and oversight)。根据软件开发计划管理软件项目,随时掌握软件项目的实际开发过程。按照项目计划对软件开发的进度和阶段产品进行跟踪和评审,当软件项目的执行状况与软件项目计划发生较大偏差时,管理机构必须采取有效的控制措施,必要时可根据项目的实际完成情况和结果修订项目计划。(2)L2可重复级(repeatable)(6
15、/8)v软件分包合同管理软件分包合同管理(software subcontract management)。根据商业联盟、过程能力和技术等因素选择高质量的软件承接方来承接软件项目的部分子项目。制订子项目承接方的工作任务和项目计划文档,它是主承接方跟踪检查和监督子项目过程和产品的依据。(2)L2可重复级(repeatable)(7/8)v软件质量保证软件质量保证(software quality assurance)的标准和规程保持一致,对发)的标准和规程保持一致,对发现的问题应采取必要措施。评审软件产品和现的问题应采取必要措施。评审软件产品和活动,检验它们是否与应用予以解决。活动,检验它们是否
16、与应用予以解决。(2)L2可重复级(repeatable)(8/8)v软件配置管理软件配置管理(software configuration management)。保证软件项目生成的产品)。保证软件项目生成的产品在软件生命周期中的完整性。在给定时间点在软件生命周期中的完整性。在给定时间点上确定软件配置(如工作产品及其说明),上确定软件配置(如工作产品及其说明),系统地控制软件配置的变化并在整个软件生系统地控制软件配置的变化并在整个软件生命周期中维护配置的完整性和可跟踪性。命周期中维护配置的完整性和可跟踪性。(3)L3已定义级(defined)(1/9)v已定义级组织的已定义级组织的特点特点是
17、,是,将管理和工程两将管理和工程两方面的软件过程标准化、文档化和制度化方面的软件过程标准化、文档化和制度化。软件开发组织已建立自己的软件过程标准,软件开发组织已建立自己的软件过程标准,该组织承接的所有软件项目都是用自己的该组织承接的所有软件项目都是用自己的软件过程标准或根据项目需要剪裁一个子软件过程标准或根据项目需要剪裁一个子集。项目使用的软件过程标准成为项目定集。项目使用的软件过程标准成为项目定义的软件过程。已定义级的软件组织进行义的软件过程。已定义级的软件组织进行的软件过程应该是标准的、一致的和稳定的软件过程应该是标准的、一致的和稳定的,软件开发过程中能对项目的成本、进的,软件开发过程中能
18、对项目的成本、进度和产品的功能、质量进行跟踪和控制。度和产品的功能、质量进行跟踪和控制。(3)L3已定义级(defined)(2/9)v已定义级的关键过程域涉及项目和组织两方已定义级的关键过程域涉及项目和组织两方面,内容包括:面,内容包括:组织级过程焦点组织级过程焦点、组织级过组织级过程定义程定义、培训大纲培训大纲、集成化软件管理集成化软件管理、软件软件产品工程产品工程、组间协调和同行评审组间协调和同行评审。(3)L3已定义级(defined)(3/9)v组织级过程焦点组织级过程焦点(organization process focus)。不断提高对组织软件工程和项目软件过程的认识和理解,围绕
19、过程定义和过程改进目标及时采取措施,协调、评估、开发和维护过程改进活动。(3)L3已定义级(defined)(4/9)v组织级过程定义组织级过程定义(organization process definition)。过程定义的关键实践活动包括:描述软件生命周期、制定过程剪裁准则和指南、建立组织级的软件过程数据库及相关文档库、确定定量过程管理需要的数据、形成稳定的准则支持组织制定各项规章制度等。(3)L3已定义级(defined)(5/9)v培训大纲培训大纲(training program)。通过培训,提高组织成员个人的知识水平和技能,以便更好地、更有效地完成工作任务。培训内容应针对组织、项目
20、和个人的实际需要。根据培训需求制定培训大纲,包括培训计划、内容、资料、设备、方式和评价等。(3)L3已定义级(defined)(6/9)v集成化软件管理集成化软件管理(integrated software management)。集成化软件管理的基础是,L2的需求管理、软件项目计划、软件项目跟踪和监督3个关键过程。满足集成化软件管理的组织应能够按照组织严格定义的过程来计划和管理一个软件项目(3)L3已定义级(defined)(7/9)v软件产品工程软件产品工程(software product engineering)。按照软件工程过程的定义,有效地开发出稳定的软件工作产品。软件工软件工作产
21、品作产品指描述软件过程的文档、计划、规程,计算机程序和数据等,其中的一部分或全部将交付客户或最终用户。主要活动是描述软件项目的技术活动,如需求分析、设计、编码和测试,为软件工作产品建立文档,并保持它们的可跟踪性和一致性。(3)L3已定义级(defined)(8/9)v组间协调组间协调(intergroup coordination)。软件过程工作量大,参与的人员多、复杂程度高,软件产品时效性强,必须有严格的分工和密切的协作。软件工程小组应特别注意系统需求、测试等方面的问题,主动与相关小组协调,因为只有合作攻关才能使项目更好、更有效地满足客户需求。(3)L3已定义级(defined)(9/9)v
22、同行评审同行评审(peer reviews)。同行专家评审是一种有效的、重要的工程方法,评审方式有检查、结构走查等。评审能够加深对软件工作产品的理解,能够尽早地、有效地排除软件产品的缺陷。(5)L5优化级(optimizing)(1/2)v在软件开发过程中,优化级的软件开发组织能够有效地确定软件过程的优势和薄弱环节,重视并利用软件开发和维护过程中的反馈直进行过程和产品质量的定量控制,能够采用先进的思想、方法、技术不断改进软件过程,提高组织的软件过程能力。(4)L4已管理级(managed)(1/2)v已管理级组织的主要特点是,重视软件度量,注意采集软件过程和产品质量的度量值,对软件过程和产品有
23、定量的理解,并以此为基础进行决策和控制。(4)L4已管理级(managed)(2/2)v已管理级的关键领域包括:定量的过程管理定量的过程管理和软件软件质量管理质量管理。定量的过程管理(quantitative process management)。定量地控制项目的软件过程能够达到的实际结果,从而得到一个稳定的、可定量预测的过程。软件质量管理(software quality management)。软件质量管理以产品为中心,目标是定量地评价软件产品的质量,实现具体的质量目标,满足客户和最终用户的需要。关键实践活动内容包括:定义软件产品的质量目标,制定软件质量计划,监督、调整软件质量计划、软件
24、工作产品、开发活动及目标等。(5)L5优化级(optimizing)(2/2)v优化级的关键领域包括缺陷的预防缺陷的预防、技术更新管理技术更新管理和过程过程更改管理更改管理。 v缺陷的预防缺陷的预防(defect prevention)。分析软件项目的缺陷,确定原因,并采取相应措施预防他们再次发生。缺陷预防措施常常涉及软件过程的定义、管理和技术的进步等。v技术更新管理技术更新管理(technology change management)。选择、评价和确定新技术,如工具、方法和过程,并将有效的技术引入到软件开发组织,以便改进软件质量、提高软件生产率、缩短软件产品的开发周期。技术更新管理能有效地
25、改进软件过程。v过程更改管理过程更改管理(process change management)。为提高软件质量和软件生产率,缩短软件产品的开发周期,必须不断改进组织中使用的软件过程。过程更改管理应在上级管理部门的主持下,积极主动且系统地对组织的标准软件过程和项目定义的软件过程进行改进和创新。v综上所述,自然会得出这样的结论:组织的成熟度级别越高,其软件开发能力越强,产品质量越好,效率越高,成本越低。不同CMM级别的软件开发组织开发一个包含五十万行程序代码的软件的统计数据如表所示。能力成熟度模型能力成熟度模型CMM v1)CMM的能力成熟度级别及关键过程域的能力成熟度级别及关键过程域v2)成熟度
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CMM 入门 培训 材料 69
限制150内