-着落
CMM
的相关知识
CMM
起源
CMM
(
Capability
Maturity
Model
)是卡
耐基梅隆大学软件工程
研究院(
SEI
,
Software Engineering Institute
< br>)受美国国防
部
托
付
制
定
的
软
件
过
程
改
良
、
评
估
模
型
,
也
称<
/p>
为
SEI
SW-
CMM,(Software
Engineering
Institute
SoftWare--
Capability Maturity Model)
。该模型于
< br>1991
年公
布,
并进展为系列
标准模型。
全世界差不多有
1
万多家软
件企业
通过
CMM
认证。
< br>由于
CMM
是为美国国防部制订的,
因此这一标准比国际上质
量认证的其他一些标准,如
ISO
9000
系列要复杂许多。
CMM
把软
件开发机构按照不同开发水平划分为
5
个级不:
Initial
(初始
化)<
/p>
、
Repeatable
(可重复)
p>
、
Defined
(已定义)
、
Managed
(已
治理
)和
Optimizing
(优化中)
。
CMM
的应用
中国电子标准化研究所吴源俊
随着我
国计算机软件产业的形成和进展,
软件产品质量保证
这一课题逐
渐受到各个软件开发组织和政府有关治理机构的重
视。
一些规模
较大的软件开发组织各自在本单位运用质量治理理
论指导开展了软件产品质量保证活动;
有些软件开发公司引入了
国
际
通
行
的
质
量
治
理
体
< br>系
质
量
保
证
模
式
——
ISO9001
(
或
ISO9002<
/p>
)
。
鉴于软件产品本身及其开发和生产的
专门性,
许多软
件开发组织在实施
IS
O9001
的同时亦不同程度地感到
ISO9001
(加上
ISO9000-3
)与他们的实际活动不
是那么相适应。因此,
一种专门针对软件开发组织的软件质量保证模型悄然进入我国
p>
一些软件开发组织和有关研究单位的研讨日程,这确实是
CMM
p>
。
近几年来,
我国一些单位有组织地或自发地开展了对
CMM
的
研究,有的还在本单位内进行了尝试性的
CMM
实施。特不是自
1998
年以来,我国计算机软件业界对
CMM
的研究热迅速升
温;
“采纳
ISO9001
依旧
CMM?”的问题也悄然出现。不管是实施
ISO9001
,依旧寻求运用其他软件产品质量保证渠道,这些对保
证软件产品质量的热
情正是我国软件产业正在走向成熟的标志。
恰当地选择软件开发组织的产品质量保证途径
不仅将有助于各
个软件开发组织提高软件产品开发和生产能力,
亦将为加快我国
软件产业的成熟作出贡献。
鉴于
CMM
在其“原产国”实际应用中
的有效表现,
引起包括我国在内的许多国家软件业界的兴趣,
国
际标准化组织(
ISO
)也顺应各国的兴趣而开展了与
p>
CMM
紧密相
关的标准课题研究。本文将对
CMM
作简要介绍,同时把
CMM
p>
与
ISO9001
加以比较,最后谈谈
p>
CMM
的应用问题。
一
CMM
简介
我国目
前谈及的
CMM
是指“软件能力成熟度模型”,
其英文
全称为
Capability
Maturity Model for Software
(英文缩写
名是
SM-CMM
)
,更确切地讲,是指“软件能力成熟度模型
.
1.1
版”和“能力成熟度模型的关键惯例
.1.1
版”(
Capability
Maturity
Model
for
softwar
e,Version1.1
和
Key
Practices
of
the
Capability Maturity Model,Version1.1
简称<
/p>
CMM1.1
版
}
。
CMM
是美国卡内基—梅隆大学软件工程研究所(以下简称
SEI
)
的研究成果;
CMM1.1
版发表于
1993
年。
SEI
是美国国防部出资
于
p>
1984
年设立。从
1986
年开始,
SEI
针对软件组织改善其软件
过程,特不是美国国防部对软件承包商的能力评价问题,研究
3 / 51
“过程成熟度框架”。
1987
年
p>
9
月,
SEI
发表
了关于过程成熟度
框架的简要讲明和成熟度调查问卷。
以这一过
程成熟度框架为蓝
本,
在美国联邦政府促进下,
从
1987
年到
1991
p>
年在美国的一些
大公司的软件组织进行了软件过程能力成熟度模型的
评估实践。
依照这
4
年的实践经验,<
/p>
特不是从美国政府和工业界反馈的关于
软件过程评估的信息,
p>
SEI
在原过程成熟度框架的基础上开发出
了“软件能力成熟度模型(
CMM
)
0
.0
版”。在
CMM0.0
版发表后<
/p>
的两年里,
先后产生了
30
多稿草案,
于
1993
年<
/p>
2
月发表了“软
件能力成熟度模型
1.1
版”和“能力成熟度模型的关键惯例
1
.1
版”(统称
SM-CMM1.1
版
,有时干脆简称为
CMM
)
。
大伙儿都明白,
软件产品的质量在专门大程度上取决于构筑
< br>软件时所使用的软件开发和维护过程的质量。
软件过程是人员密
< br>集和设计密集的作业过程;
若缺乏有素的训练,
就难以建
立起支
持实现成功改进软件过程的基础,改进工作亦将难以取得成效。
< br>CMM
描述的那个框架正是勾列出从无定规的混沌过程向训练有素
的成熟过程演进的途径。
迄今为止,
CMM
< br>既不是政府标准也不是行业协会标准,而是
美国卡内基—梅隆大学软件工程研究所
(
SEI
)发表的一份技术
报告;只是
,它在美国已成为事实上的标准。鉴于
CMM
的巨大应
用前景,
SEI
已在美国注册了
CMM, Capability Maturity
Model
和
Capability Maturity Mo
deling
的专利和商标。与此同时,
围绕以
CMM
为基础的软件过程评估和软件能力评价建立了从审
核员培训到提供评估和评价的一整套服务体系。
SEI
给
CMM
下的定义是:
关于软件组织在定
义,
实现,
度量,
操纵和改善其软件过
程的进程中各个进展时期的描述。
那个模型
便于确定软件组织的
现有过程能力和查找出软件质量及过程改
进方面的最关键的问题,从而为选择过程改进战
略提供指南。
如前所述
CMM1.1
版包括两部分:“软件能力成熟度模型”
和“能力成熟度模型的关键惯例”。
“软件能力成熟度模型”要
紧是描述这种模型的结构,同时给出
该模型的差不多构件的定
义;
为便于读者理解,
还进一步对成熟度模型及其构件做了大量
解释。
“能力
成熟度模型的关键惯例”除了重复叙述能力成熟度
模型结构及其构件外,
以大量篇幅详细描述了每个“关键过程方
面”涉及的“关键惯例”。
“关键过程方面”是指:
一组相关联
5 / 51
的活动;
通过执行这些活动能够实现既定的过程能力。
所谓“关
键惯例”是指:
使关键过程方面得以有
效实现和制度化的作用最
大的基础设施和活动。
各个关键惯例按
每个关键过程方面的
5
个
“公共特性”
(对执行该过程的承诺,执行该过程的能力,该过
程中要执行的活动,
< br>对该过程执行情况的度量和分析,
及证实所
执行的活动符
合该过程)归类,逐一详细描述。按
CMM
的规定,
作到了某个关键过程的全部关键惯例就认为实现了该关键过程,
实现了某成
熟度级及其以低各级所含的全部关键过程就认为达
到了该级。
CMM
把软件开发组织的能力成熟度分为
5
个
可能的等级。除
了第
1
级外,
其他每一级由几个关键过程方面组成。
每一个关键
过程方面都由上述
5
种公共特性予以表征。
< br>CMM
给每个关键过程
规定了一些具体目标。
按每个公共特性归类的关键惯例是按该关
键过程的具体目标选择和确定的。
假如恰当地处理了某个关键过
程涉及的全部关键惯例,
那个关键过程的各项目标就达到了,
也
就表明该
关键过程实现了。
这种分级的思路在于把一个组织执行
软件过程
的成熟程度分成循序渐进的几个时期,
这与软件组织提
高自身能
力的实际推进过程相吻合。这种成熟度分级的优点在
于,
这些级
不明确而清晰地反映了过程改进活动的轻重缓急和先
后顺序。
这
一点专门重要,
因为大多数软件组织只能在某一段时
刻里集中开
展少数几项过程改进活动。
CMM
总体结构图示讲明参见图
1
。
图
1
能力成熟度模型的结构
CMM
的
开发者们结合他们的软件产业环境和软件产品质量保
证的需要,在
CMM1.1
版中把具有最高能力成熟度的组织设定为
处于如
此一种情况下的组织:整个组织都持续致力于过程改进;
那个组织具备足够的手段用于事
先发觉过程的长处及短处和防
止发生缺陷;
它拥有丰富的软件过
程成功经验的数据同时可用于
对新技术进行“费
/
效”分析和提出对本组织软件过程的更改建
议;
它能
发觉那些可能发掘出最佳软件工程惯例的合理化建议并
使之在整个组织里实现转化。
p>
这种能力成熟度被定义为
CMM
的第
5
级,称之为“(持续)优化级”。
另一方
面,
现实的软件业里尚有许多组织还不具备稳定的环
境用于软件
开发和维护
,
它们缺乏健全的治理惯例,其软件过程
7 / 51
-着落
-着落
-着落
-着落
-着落
-着落
-着落
-着落
-
上一篇:九道哈佛大学智商测试,一般人很难答对5题
下一篇:期权定价分析