大气标准采样器:软件过程管理(三)

来源:百度文库 编辑:偶看新闻 时间:2024/05/02 23:51:18
能力成熟度模型的结构
一、成熟度级别的内部结构
CMM的内容
l CMM为软件企业的过程能力提供了一个阶梯式的进化框架,采用分层的方式安排它的组成部分,以适应不同机构使用的需要。
l 具有恰当的抽象级别,没有过分的限制一个机构如何实现一个软件过程,描述了软件的一般过程,而没有涉及如何实现这些过程。
l CMM1.1版包括两部分:“软件能力成熟度模型”和“能力成熟度模型的关键实践”。
l “软件能力成熟度模型”主要是描述这种模型的结构,并且给出该模型的基本构件的定义。
l “能力成熟度模型的关键实践”除了重复叙述能力成熟度模型结构及其构件外,还详细描述了每个“关键过程方面”涉及的“关键实践”。
l 关键过程域是指一组相关联的活动;通过执行这些活动可以实现既定的过程能力。所谓关键实践是指使关键过程方面得以有效实现和制度化的作用最大的基础设施和活动。
CMM的内部结构
l CMM由5个成熟度级别组成
l 每个成熟度级别(除级别1)包含了实现该级别的若干个关键过程域(KPA)
l 每一个KPA进一步被分为称为公共特征的5个部分
l 这些公共特征包括了关键实践(KP),即每一个KPA包括5类KP
l 实现了这些KP后,就实现了关键过程域的目标
二、成熟度级别
l 成熟度级别是一个严格定义的、向着达到成熟软件过程目标进发的平台。
l CMM的顶层结构包括五个成熟度级别。
l 每个成熟度级别表示了过程能力的水平,因为软件过程能力描述了机构通过遵循某过程可能达到的期望结果的范围,所以机构的软件过程能力可以作为预计该机构承担下一个项目时最可能出现的结果的一种手段。
质量、风险与过程成熟度的关系
成熟度级
特征
优化级
持续的过程能力改进。
已管理级
产品质量得到策划,软件过程基于度量的跟踪。
已定义级
通过软件过程的定义和制度化确保对产品质量的控制。
可重复级
项目得到管理监控和跟踪,稳定的策划和产品基线。
初始级
混乱和不可预测。
三、关键过程域
关键过程域(KPA,Key Process Area)
l 一系列相互关联的操作活动
l 某一级别的一组目标,用以衡量是否具有此级别的能力。
l 每个KPA的目标总结了它的关键实践(KP),目标说明了每一个KPA的界限、范围、内容和关键实践
l 不同级别的KPA(项目、数目、内容)是不同的,但其中很多项都有深层次的联系(上级是下级的深化和延伸)
l 18个关键过程域,分布在2~5级
l KPA给出了表达组织成熟性的一种方法
l 这些KPA的定义基于多年来软件工程和软件管理的实践以及5年以上过程评估(assessment)和软件能力评价(evaluation)
l 每一KPA对应了一组相关的活动,这些活动的实施对于认定的目标是十分必要的。
l CMM并未提及软件开发和软件维护的所有过程域,而只是提到“关键的”,因为这些过程对于提高机构的过程能力最为有效。也可把这些KPA看作是达到某个等级的要求。
l 每一个KPA都确定了一组目标,若这组目标在每一个项目都能实现,则说明企业满足了该KPA的要求。若满足了一个级别的所有KPA要求,则表明达到了这个级别所要求的能力。
l 目标
n 某个关键过程域中的关键实践
n 表示关键过程域的范围、边界和意图
n 检验关键过程域是否满足的一个指标
级别2的关键过程域(6个),主要涉及项目管理方面的内容。
级别3的关键过程域(7个),主要涉及项目和机构的问题。
级别4的关键过程域(2个),主要是定量监测,属于技术活动。
级别5的关键过程域(3个),主要解决可控制问题,进行问题预防。
关键实践中描述了两种不同类型的计划:
l 正规计划(软件开发计划、软件质量保证计划和软件配置管理计划)
l 非正规计划(同行评审计划、风险管理计划和技术管理计划)
四、关键实践
每一个关键过程域都是用关键实践的概念进行描述
关键实践(key practices)
l 描述了对关键过程域的有效实施和制度化起最重要作用的基础设施和活动
l 达到一个KPA而要做的事
l 描述了“做什么”,但没有规定“如何做”
五、共同特性
共同特性
l 用来组织关键实践
l 是一些属性,指名一个KPA是否有效、可重复和 可持续
l 五个部分
n 执行约定:组织为保证过程得以建立和持续发挥作用所必须采取的行动
n 执行能力:达到的前提条件
n 执行活动 :必须执行的任务和步骤
n 度量和分析:度量的基本原则,用以确定、改进和控制过程的状态
n 验证实施:验证所开展的关键实践 与确立的过程是否遵循已制定的步骤
1.执行约定 执行约定是企业为了建立和实施相应KPA所必须采取的活动,这些活动主要包括制定企业范围的政策和高层管理的责任:
l 方针描述:强调组织承诺与过程的联系,例如,建立OPF(组织过程关注)、OPD(组织过程定义)
l 分别要求:
l OPF:“组织遵循书面的用以协调整个组织的软件过程的制订与改进活动的组织方针”。
l OPD:“组织遵循书面的制订和维护标准软件过程及相关过程资产的方针”。
l 领导:组织管理者的作用,如PCM(过程变更管理),TCM(技术变更管理)分别要求:PCM:“组织遵循书面的实施过程改进的方针”;TCM:“组织遵循书面的有关部门改善技术能力的方针”。
2.执行能力 执行能力是企业实施KPA的前提条件。企业必须采取措施,在满足了这些条件后,才有可能执行KPA的执行活动。执行能力一般包括资源保证、人员培训等内容。
l 组织结构:支持KPA的结构,如支持SQA(软件质量保证)、支持SCM(软件配置管理)的小组。
l 资源和资金:例如需要特定的技能、工具或经费。
l 培训:正规的与非正规的
l 定向讲座:比培训知识更浅、更为专题性的技术获取
l 先决条件:KPA所需的输入,如项目计划,其它过程的结果。
3.执行活动  执行过程描述了执行KPA所需求的必要角色和步骤。在五个公共属性中,执行活动是唯一项目执行相关的属性,其余四个属性则涉及企业CMM能力基础设施的建立。执行活动一般包括计划、执行的任务、任务执行的跟踪等。
l 活动、角色和规程:实现KPA达到其目标所必须的。
l 计划与规程:若需要制定计划、跟踪其实施,采取必要的措施。
4.度量分析Measurement and Analysis 度量分析描述了过程的度量和度量分析要求。典型的度量和度量分析的要求是确定执行活动的状态和执行活动的有效性。
l 基本度量:指与确定与过程相关的状态相关的最必要的度量。
l 其它度量:如培训质量、管理的有效性,软件产品的功能性和质量
在实施CMM时,可以根据企业软件过程存在问题的不同程度确定实现KPA的次序,然后按所确定次序逐步建立、实施相应过程。在执行某一个KPA时,对其目标组也可采用逐步满足的方式。过程进化和逐步走向成熟是CMM体系的宗旨。
六、CMM的应用
关键各级之间的关系
l CMM:描述性模型 & 规范性模型
l 软件企业自身现状与CMM级别的映射
n 从不成熟到成熟:时间过程,不提倡跨成熟度级别的进化
n 企业成熟度提高的表现
u 项目的计划目标和实际结果的差距减小
u 项目的计划目标与实际结果的变化减小
u 计划目标结果的提高
n “努力地提高软件过程,其结果将是质量和产量的显著提高”
CMM的研制目标扩大为:
1) 以实践为基础
2) 反映最好的实践经验
3) 反映那些从事软件过程改进,软件过程评估和软件能力评价的人士的需要
4) 形成书面文件
5) 供大众使用
CMM主要用途有两大类:⑴过程改进;⑵能力评价。
软件过程评估侧重于确定本组织软件过程改进的轻重缓急;软件能力评价侧重于确定在选择软件项目承包商时可能碰到的风险,或者说是确定软件组织在软件能力方面的置信程度。
软件过程评估和软件能力评价的区别
5.实施验证Verifying implementation 实施验证是验证执行活动是否与建立的过程一致。实施验证涉及到管理的评审和审计以及质量保证活动:
l 高级管理者定期审查
l 项目管理者定期审查
l 质量保证组进行的评审和审核
软件过程评估
软件能力评价
l 开放的、相互协调的环境中
l 工作重点:如何组织有序的调查以便理解组织的软件过程成熟度
l 结论提交组织,用于策划改进评估结果,能为组织提供有效的软件过程改进建议
l 态度积极
l 注重找出组织自身软件过程需优先改进处
l 对象为组织自身
l 有较大阻力的环境中
l 工作重点:通过规范化的描述来表明一个软件组织的实际软件过程能力
l 结论不提供投标者,选择承包商,监控承包商,特别是薄弱环节,结论关系到组织的当前利益,目标与金钱相关联
l 态度慎重
l 注重弄清在规定的进度、预算内提供高质量软件的项目、合同的风险
l 对象为投标者
两者共同处
——均采用成熟度提问单作为访谈、了解情况的工具
——均以CMM作为现场调查的导引
——围绕CMM的KPA提出发现的强项和弱项
——把调查和收集的信息经分析后制成相关KPA目标满足
情况表
——根据调查发现的问题和KPA目标满足情况表作出结论
按CMM进行软件过程评估或软件能力评价的几个大步骤基本相同,从选定评估组后:
——以成熟度调查问卷作为现场访问的出发点;
——用CMM作为指导现场调查研究的路线图;
——针对CMM中的关键过程方面指出反映该组织软件过程的强、弱之点;
——根据所了解到的该组织达到CMM关键过程方面目标的情况描绘出该组织的软件过程的概貌;
——向被审核者说明评估结果。