软件过程改进案例教程
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 软件过程成熟度

软件过程成熟度(Software Process Maturity,SPM)是指一个具体的软件过程被明确地定义、管理、评价、控制和产生实效的程度。成熟度意味着软件过程能力持续改善的过程,它代表软件过程能力改善的能力。所谓成熟度包含着能力的一种增长潜力,同时也表明了组织实施软件过程的实际水平。随着组织软件过程成熟度能力的不断提高,组织内部通过对过程的规范化和对成员的技术培训,不断提高过程能力。软件过程也将会被它的使用者关注和不断修改完善,从而使软件的质量、生产率和生产周期得到改善。

成熟度等级用来描述某一成熟等级上的组织特征,每一等级为一下等级提供基础和前提。软件过程的成熟度由其能力和性能决定。

软件过程能力(Software Process Capability,SPC)描述了在遵循软件过程后能够实现预期结果的程度,一个组织的软件过程能力为组织提供了预测软件项目开发的数据基础。软件过程能力是软件过程本身具有的按预定计划生产产品的能力,或者说是遵循一个软件过程后能够得到的预期结果的界限范围。该指标是对能力的一种衡量,用它可以预测一个组织在承接下一个软件项目时,所能期望得到的最可能的结果。它是指一个过程产生预期结果的能力,随着过程能力的提高,过程可以被预测和度量,并且可以持续过程改进,该组织就会不断“成熟”,成熟改进需要强大的管理层的支持和一如既往的努力。

软件过程能力是企业能力,而不是个人能力。

软件过程性能(Software Process Performance,SPP)表示遵循一个软件过程后所得到的实际结果。由于项目要求和客观环境的差异,软件过程性能不可能充分反应软件过程整体能力,即软件过程性能受限于它的环境。

软件过程性能与软件过程能力有区别,软件过程性能关注的是实际得到的结果,而软件过程能力关注的是期望得到的结果。一个项目的软件过程性能决定于过程的执行状态。

软件过程成熟度可以改善软件过程的管理,可以提高过程能力,更好地预测过程性能。同时,通过建立软件过程能力成熟度模型,可以指导软件组织提高过程能力和对过程能力预测的吻合程度。