CMMI知识介绍
上一篇 / 下一篇 2007-09-19 11:59:17 / 个人分类:其他
51Testing软件测试网#E,S2oR+l5AdXe
第一级:初始级 51Testing软件测试网*PY9p$Zb
在初始级,企业一般不具备稳定的软件开发与维护的环境。常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试。 51Testing软件测试网9bU4H.xc'r
N{v2[+HC e9Llj&L0第二级:可重复级
wY _3g!F0在这一级,建立了管理软件项目的政策以及为贯彻执行这些政策而定的措施。基于过往的项目的经验来计划与管理新的项目。 51Testing软件测试网;DpFx\#c3o },B
51Testing软件测试网BBeL/Rx t L
第三级:定义级
0UJN`t"?qL3?0在这一级,有关软件工程与管理工程的一个特定的、面对整个企业的软件开发与维护的过程的文件将被制订出来。同时,这些过程是集成到一个协调的整体。这就称为企业的标准软件过程。 51Testing软件测试网PZR"v%|3`3uQ
!@w-jd BtrM%G0第四级:定量管理级51Testing软件测试网 qk*UsC"OV+E/k[9jm
在这一级,企业对产品与过程建立起定量的质量目标,同时在过程中加入规定得很清楚的连续的度量。作为企业的度量方案, 要对所有项目的重要的过程活动进行生产率和质量的度量。软件 产品因此具有可预期的高质量。
D{2Fx0`/V NT0
z;y2c'Xu9z4o;} G0第五级:(不断)优化级 51Testing软件测试网tY/J8I%~$YV!_,oYO
在这个等级,整个企业将会把重点放在对过程进行不断的优化。企业会采取主动去找出过程的弱点与长处,以达到预防缺陷 的目标。同时,分析有关过程的有效性的资料,作出对新技术的 成本与收益的分析,以及提出对过程进行修改的建议。
[-jD qr h!az051Testing软件测试网-w(G'@`:^T
51Testing软件测试网&K)| F1r5pRnA
CMM第一级:初始级51Testing软件测试网y4qi(hzB
◆ 特征
"FTFBD1ER0(1)软件过程的特点是杂乱无章,有时甚至混乱,几乎没有定义过程的规则或步骤。
IVo5?3Q8X#b(?0(2)过分的承诺,常作出良好的承诺:如“按照软件工程方式,有序的工程来工作”;或达到高目标的许诺。但实际上却出现一系列问题。 51Testing软件测试网zoX\3{1eUme
(3)遇到危机就放弃原计划过程,反复编码和测试。
cvF7nN(G7r:c0(4)成功完全依赖个人努力和杰出的专业人才,取决于超常的管理人员和杰出有效的软件开发开发人员。具体的表现和成果都源 于或者说是决定于个人的能力和他们先前的经验、知识以及他们的进取心和积极程度。 51Testing软件测试网@Otxt+@,wT
(5)能力只是个人的特性,而不是开发组织的特性。依靠着个人的品质或承受着巨大的压力;或找窍门取得成果。但此类人一旦离去,对组织的稳定作用也消失。
c_9^p ~ Z3P0(6)软件过程是不可确定的和不可预见的。软件成熟性程度处于第一级软件组织的软件过程在实际的工作过程中被经常的改变(过程是随意的)。这类组织也在开发产品,但其成果是不稳定的,不可预见的,不可重复的。也就是说,软件的计划、预算、功能和产品的质量都是不可确定和不可预见的。 51Testing软件测试网%Jn~x[SD E~j6jlG
~Vw4Z;}0◆ 过程 51Testing软件测试网/@|$z/E^ o
(1)极少存在或使用稳定的过程
+Y^S;`$p9[pf0(2)所谓“过程”,往往是“就这么干”而言。 51Testing软件测试网!G#vQxc
(3)各种条例,规章制度互不协调,甚至互相矛盾。51Testing软件测试网7d g1\fnNy"oD
[%E_Zpu0◆ 人员 51Testing软件测试网6V![0R/U(| kzo
(1)依赖个人努力和杰出人物。一旦优秀人物离去,项目就无法继续。 51Testing软件测试网Oc^1mW)p.Yi^L
(2)人们的工作方式如同“救火”,就是在开发过程中不断地出现危机,以及不断的“救火”。 51Testing软件测试网4{/Fs$zT3] Y
51Testing软件测试网6r9D e ~Q@
◆ 技术
0Y ~G }*n? O"~m0引进新技术是极大风险。
Q.YB#~8XLV0
q,L'P.{Yzkt3ZiX0◆ 度量
;Y f.|2w:UYR(^;R0不收集数据或分析数据。
ip2^#k i!Y6R0
.k6M"C:d9h,d)z N`4V0◆ 改进方向
Ix ^o J4T7Czat0(1)建立项目管理过程,实施规范化管理,保障项目的承诺。 51Testing软件测试网,PcaH7n-k
(2)首要任务是进行需求管理,建立客户与软件项目之间的共同理解,使项目真正反映客户的要求。
6SGY&|6~7S0(3)建立各种软件项目计划、如软件开发计划、软件质量保证计划、软件配置管理计划、软件测试计划、风险管理计划及过程改进计划。
5j `e]'Z P3h o0(4)开展软件质量保证活动(SQA)。51Testing软件测试网 u}#S8B[1n;N
A5a,QBj$EW0CMM第二级:可重复级
7qH S5l%~\8R!vJ%d0◆ 特征
IBZ @'JP`'],cm0(1)进行较为现实的承诺,可按以前在同类项目上的成功经验建立的必要过程准则来确保再一次的成功。
"\7@!D_k;Vp'QoX0(2)主要是逐个项目地建立基本过程管理条例来加强过程能力。
`,au(D8HO0(3)建立了基本的项目管理过程来跟踪成本、进度和功能。
o"C`oqb)E0(4)管理工作主要跟踪软件经费支出、进度及功能。识别在承诺方面出现的问题。51Testing软件测试网i%`n"W0} {q
(5)采用基线(BASELINE)来标志进展、控制完整性。 51Testing软件测试网6A1Y;d&HIF&Q
(6)定义了软件项目的标准,并相信它,遵循它。
I4X7b2B"t'?|g0(7)通过子合同建立有效的供求关系。
"u p/y#m'X R?*d8W0
)qY L3M;S4T&d0◆ 过程 51Testing软件测试网!S{(KHG
(1)软件开发和维护的过程是相对稳定的,但过程建立在项目一级。
[_1HS0M&iE0(2)有规则的软件过程是在一个有效的工程管理系统的控制之下,先前的成功经验可以被重复。
q4t1|-I1}+|$`0(3)问题出现时,有能力识别及纠正。承诺是可实现的。
Xa]7` \0
kZ.I7Fw m8A0◆ 人员
@_9]9`*X&z"n t4g/HC0(1)项目的成功依赖于个人的能力以及管理层的支持。
!aH _ Nz[1ZT4Gkv0(2)理解管理的必要性及对管理的承诺。 51Testing软件测试网CA9p"a5G)fE
(3)注意人员的培训问题。
eJ"GRHg;|0
J.j^)W5E&I m0◆ 技术 51Testing软件测试网1IA9S a??t'[E7y#`
建立技术支持活动,并有稳定的计划。
2mc^DYM0
EkG$c/QA6q0◆ 度量
,x+gw b$a#|&On0每个项目建立资源计划。主要是关心成本、产品和进度。有相应的管理数据。
Rxg%i-C)t6A*t4w0
4M8t#V}G3Q1T}%h0◆ 改进方向
j/^:C Q6Hs f0(1)不再按项目制定软件过程,而是总结各种项目的成功经验,使之规则化,把具体经验归纳为全组织的标准软件过程。把改进组织的整体软件过程能力的软件过程活动,作为软件开发组织的责任。 51Testing软件测试网2~*y.u%G0pdVM
(2)确定全组织的标准软件过程,把软件工程及管理活动集成到一个稳固确定的软件过程中。从而可以跨项目改进软件过程效果,也可作为软件过程剪裁的基础。 51Testing软件测试网#d6K6^/bk7]e0X u'h
(3)建立软件工程过程小组(SEPG)长期承担评估与调整软件过程的任务,以适应未来软件项目的要求。 51Testing软件测试网,Z|U%@&?2]ee#s
(4)积累数据,建立组织的软件过程库及软件过程相关的文档库。 51Testing软件测试网Yz/|Dp/u[
(5)加强培训。
%Q0O9W+P@V0
-qw+P-N1?;u9q_iP0CMM第三级:确定级
s7p,D(Jv:h@~2r0◆ 特征
Iy4FiNl(~+t8M PF0(1)无论管理方面或工程方面的软件过程都已文件化、标准化,并综合成软件开发组织的标准软件过程。 51Testing软件测试网!m$J/n7k5?C
(2)软件过程标准被应用到所有的工程中,用于编制和维护软件。有的项目也可根据实际情况,对软件开发组织的标准软件过程进行剪裁。 51Testing软件测试网Nat*J^4q
(3)在从事一项工程时,产品的生产过程、花费、计划以及功能都是可以控制的,从而软件质量也可以控制。 51Testing软件测试网)@t4\U _*Zu9F0D
(4)软件工程过程组(SEPG)负责软件活动。 51Testing软件测试网n*x?)O@t.C
(5)在全组织范围内安排培训计划。
w}NJ-U,nZCb051Testing软件测试网COl @T%c9`7{%s!y
◆ 过程
6[;AJ!ZP-p:R0(1)整个组织全面采用综合性的管理及工程过程来管理。软件工程和管理活动是稳定的和可重复的,具有连续性的。 51Testing软件测试网R \'@X y+[
(2)软件过程起了预见及防范问题的作用,能使风险的影响最小化。 51Testing软件测试网4_ DD?x
-F1l'\8V%R"I5}0uiD0◆ 人员 51Testing软件测试网~0W@|"]
(1)以项目组的方式进行工作。如同综合产品团队。
:Ue0uk.fG*f"W0(2)在整个组织内部的所有人对于所定义的软件过程的活动、任务有深入了解,大大加强了过程能力。
J(W.B+@)WC3[#i#D0(3)有计划地按人员的角色进行培训。 51Testing软件测试网/}k@*D i5E7M"v7p
bZ%WSf%{R{G;A0◆ 技术 51Testing软件测试网L+x1o@;EE
在定性基础上建立新的评估技术。 51Testing软件测试网[h} o#d X
"K2kP)qFrwz|0◆ 度量 51Testing软件测试网1n6Z$b6Q%s5A _Y"Z3M
(1)在全过程中收集使用数据。
C$kt|;CfjzP+Z0(2)在全项目中系统性地共享数据。
NQ#[Zc g.Oe0
q8G ^\\%E H%P0◆ 改进方向
S3^O/h"KP0(1)开始着手软件过程的定量分析,以达到定量地控制软件项目过程的效果。 51Testing软件测试网})B.~&@I9J%j3Kh
(2)通过软件的质量管理达到软件的质量目标。
第一级:初始级 51Testing软件测试网*PY9p$Zb
在初始级,企业一般不具备稳定的软件开发与维护的环境。常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试。 51Testing软件测试网9bU4H.xc'r
N{v2[+HC e9Llj&L0第二级:可重复级
wY _3g!F0在这一级,建立了管理软件项目的政策以及为贯彻执行这些政策而定的措施。基于过往的项目的经验来计划与管理新的项目。 51Testing软件测试网;DpFx\#c3o },B
51Testing软件测试网BBeL/Rx t L
第三级:定义级
0UJN`t"?qL3?0在这一级,有关软件工程与管理工程的一个特定的、面对整个企业的软件开发与维护的过程的文件将被制订出来。同时,这些过程是集成到一个协调的整体。这就称为企业的标准软件过程。 51Testing软件测试网PZR"v%|3`3uQ
!@w-jd BtrM%G0第四级:定量管理级51Testing软件测试网 qk*UsC"OV+E/k[9jm
在这一级,企业对产品与过程建立起定量的质量目标,同时在过程中加入规定得很清楚的连续的度量。作为企业的度量方案, 要对所有项目的重要的过程活动进行生产率和质量的度量。软件 产品因此具有可预期的高质量。
D{2Fx0`/V NT0
z;y2c'Xu9z4o;} G0第五级:(不断)优化级 51Testing软件测试网tY/J8I%~$YV!_,oYO
在这个等级,整个企业将会把重点放在对过程进行不断的优化。企业会采取主动去找出过程的弱点与长处,以达到预防缺陷 的目标。同时,分析有关过程的有效性的资料,作出对新技术的 成本与收益的分析,以及提出对过程进行修改的建议。
[-jD qr h!az051Testing软件测试网-w(G'@`:^T
51Testing软件测试网&K)| F1r5pRnA
CMM第一级:初始级51Testing软件测试网y4qi(hzB
◆ 特征
"FTFBD1ER0(1)软件过程的特点是杂乱无章,有时甚至混乱,几乎没有定义过程的规则或步骤。
IVo5?3Q8X#b(?0(2)过分的承诺,常作出良好的承诺:如“按照软件工程方式,有序的工程来工作”;或达到高目标的许诺。但实际上却出现一系列问题。 51Testing软件测试网zoX\3{1eUme
(3)遇到危机就放弃原计划过程,反复编码和测试。
cvF7nN(G7r:c0(4)成功完全依赖个人努力和杰出的专业人才,取决于超常的管理人员和杰出有效的软件开发开发人员。具体的表现和成果都源 于或者说是决定于个人的能力和他们先前的经验、知识以及他们的进取心和积极程度。 51Testing软件测试网@Otxt+@,wT
(5)能力只是个人的特性,而不是开发组织的特性。依靠着个人的品质或承受着巨大的压力;或找窍门取得成果。但此类人一旦离去,对组织的稳定作用也消失。
c_9^p ~ Z3P0(6)软件过程是不可确定的和不可预见的。软件成熟性程度处于第一级软件组织的软件过程在实际的工作过程中被经常的改变(过程是随意的)。这类组织也在开发产品,但其成果是不稳定的,不可预见的,不可重复的。也就是说,软件的计划、预算、功能和产品的质量都是不可确定和不可预见的。 51Testing软件测试网%Jn~x[SD E~j6jlG
~Vw4Z;}0◆ 过程 51Testing软件测试网/@|$z/E^ o
(1)极少存在或使用稳定的过程
+Y^S;`$p9[pf0(2)所谓“过程”,往往是“就这么干”而言。 51Testing软件测试网!G#vQxc
(3)各种条例,规章制度互不协调,甚至互相矛盾。51Testing软件测试网7d g1\fnNy"oD
[%E_Zpu0◆ 人员 51Testing软件测试网6V![0R/U(| kzo
(1)依赖个人努力和杰出人物。一旦优秀人物离去,项目就无法继续。 51Testing软件测试网Oc^1mW)p.Yi^L
(2)人们的工作方式如同“救火”,就是在开发过程中不断地出现危机,以及不断的“救火”。 51Testing软件测试网4{/Fs$zT3] Y
51Testing软件测试网6r9D e ~Q@
◆ 技术
0Y ~G }*n? O"~m0引进新技术是极大风险。
Q.YB#~8XLV0
q,L'P.{Yzkt3ZiX0◆ 度量
;Y f.|2w:UYR(^;R0不收集数据或分析数据。
ip2^#k i!Y6R0
.k6M"C:d9h,d)z N`4V0◆ 改进方向
Ix ^o J4T7Czat0(1)建立项目管理过程,实施规范化管理,保障项目的承诺。 51Testing软件测试网,PcaH7n-k
(2)首要任务是进行需求管理,建立客户与软件项目之间的共同理解,使项目真正反映客户的要求。
6SGY&|6~7S0(3)建立各种软件项目计划、如软件开发计划、软件质量保证计划、软件配置管理计划、软件测试计划、风险管理计划及过程改进计划。
5j `e]'Z P3h o0(4)开展软件质量保证活动(SQA)。51Testing软件测试网 u}#S8B[1n;N
A5a,QBj$EW0CMM第二级:可重复级
7qH S5l%~\8R!vJ%d0◆ 特征
IBZ @'JP`'],cm0(1)进行较为现实的承诺,可按以前在同类项目上的成功经验建立的必要过程准则来确保再一次的成功。
"\7@!D_k;Vp'QoX0(2)主要是逐个项目地建立基本过程管理条例来加强过程能力。
`,au(D8HO0(3)建立了基本的项目管理过程来跟踪成本、进度和功能。
o"C`oqb)E0(4)管理工作主要跟踪软件经费支出、进度及功能。识别在承诺方面出现的问题。51Testing软件测试网i%`n"W0} {q
(5)采用基线(BASELINE)来标志进展、控制完整性。 51Testing软件测试网6A1Y;d&HIF&Q
(6)定义了软件项目的标准,并相信它,遵循它。
I4X7b2B"t'?|g0(7)通过子合同建立有效的供求关系。
"u p/y#m'X R?*d8W0
)qY L3M;S4T&d0◆ 过程 51Testing软件测试网!S{(KHG
(1)软件开发和维护的过程是相对稳定的,但过程建立在项目一级。
[_1HS0M&iE0(2)有规则的软件过程是在一个有效的工程管理系统的控制之下,先前的成功经验可以被重复。
q4t1|-I1}+|$`0(3)问题出现时,有能力识别及纠正。承诺是可实现的。
Xa]7` \0
kZ.I7Fw m8A0◆ 人员
@_9]9`*X&z"n t4g/HC0(1)项目的成功依赖于个人的能力以及管理层的支持。
!aH _ Nz[1ZT4Gkv0(2)理解管理的必要性及对管理的承诺。 51Testing软件测试网CA9p"a5G)fE
(3)注意人员的培训问题。
eJ"GRHg;|0
J.j^)W5E&I m0◆ 技术 51Testing软件测试网1IA9S a??t'[E7y#`
建立技术支持活动,并有稳定的计划。
2mc^DYM0
EkG$c/QA6q0◆ 度量
,x+gw b$a#|&On0每个项目建立资源计划。主要是关心成本、产品和进度。有相应的管理数据。
Rxg%i-C)t6A*t4w0
4M8t#V}G3Q1T}%h0◆ 改进方向
j/^:C Q6Hs f0(1)不再按项目制定软件过程,而是总结各种项目的成功经验,使之规则化,把具体经验归纳为全组织的标准软件过程。把改进组织的整体软件过程能力的软件过程活动,作为软件开发组织的责任。 51Testing软件测试网2~*y.u%G0pdVM
(2)确定全组织的标准软件过程,把软件工程及管理活动集成到一个稳固确定的软件过程中。从而可以跨项目改进软件过程效果,也可作为软件过程剪裁的基础。 51Testing软件测试网#d6K6^/bk7]e0X u'h
(3)建立软件工程过程小组(SEPG)长期承担评估与调整软件过程的任务,以适应未来软件项目的要求。 51Testing软件测试网,Z|U%@&?2]ee#s
(4)积累数据,建立组织的软件过程库及软件过程相关的文档库。 51Testing软件测试网Yz/|Dp/u[
(5)加强培训。
%Q0O9W+P@V0
-qw+P-N1?;u9q_iP0CMM第三级:确定级
s7p,D(Jv:h@~2r0◆ 特征
Iy4FiNl(~+t8M PF0(1)无论管理方面或工程方面的软件过程都已文件化、标准化,并综合成软件开发组织的标准软件过程。 51Testing软件测试网!m$J/n7k5?C
(2)软件过程标准被应用到所有的工程中,用于编制和维护软件。有的项目也可根据实际情况,对软件开发组织的标准软件过程进行剪裁。 51Testing软件测试网Nat*J^4q
(3)在从事一项工程时,产品的生产过程、花费、计划以及功能都是可以控制的,从而软件质量也可以控制。 51Testing软件测试网)@t4\U _*Zu9F0D
(4)软件工程过程组(SEPG)负责软件活动。 51Testing软件测试网n*x?)O@t.C
(5)在全组织范围内安排培训计划。
w}NJ-U,nZCb051Testing软件测试网COl @T%c9`7{%s!y
◆ 过程
6[;AJ!ZP-p:R0(1)整个组织全面采用综合性的管理及工程过程来管理。软件工程和管理活动是稳定的和可重复的,具有连续性的。 51Testing软件测试网R \'@X y+[
(2)软件过程起了预见及防范问题的作用,能使风险的影响最小化。 51Testing软件测试网4_ DD?x
-F1l'\8V%R"I5}0uiD0◆ 人员 51Testing软件测试网~0W@|"]
(1)以项目组的方式进行工作。如同综合产品团队。
:Ue0uk.fG*f"W0(2)在整个组织内部的所有人对于所定义的软件过程的活动、任务有深入了解,大大加强了过程能力。
J(W.B+@)WC3[#i#D0(3)有计划地按人员的角色进行培训。 51Testing软件测试网/}k@*D i5E7M"v7p
bZ%WSf%{R{G;A0◆ 技术 51Testing软件测试网L+x1o@;EE
在定性基础上建立新的评估技术。 51Testing软件测试网[h} o#d X
"K2kP)qFrwz|0◆ 度量 51Testing软件测试网1n6Z$b6Q%s5A _Y"Z3M
(1)在全过程中收集使用数据。
C$kt|;CfjzP+Z0(2)在全项目中系统性地共享数据。
NQ#[Zc g.Oe0
q8G ^\\%E H%P0◆ 改进方向
S3^O/h"KP0(1)开始着手软件过程的定量分析,以达到定量地控制软件项目过程的效果。 51Testing软件测试网})B.~&@I9J%j3Kh
(2)通过软件的质量管理达到软件的质量目标。