配置管理-概念及目的和益处

时间:2024-03-13 21:36:46

软件配置管理的概念

软件配置管理(scm),简单而言是管理软件的变化,它应用于软件工程过程,通常由相应的工具、工程和方法学组成。在整个软件的开发活动中占有很重要的位置。

IEEE“软件配置管理计划标准”关于SCM的论述如下:

软件配置管理由适用于所有软件开发项目的最佳工程实践组成,无论是采用分阶段开发,还是采用快速原型进行开发,甚至包括对现有软件产品进行维护。SCM通过如下手段来提高软件的可靠性和质量。

  • 在整个软件生命周期中提供标识和控制文档、源代码、接口定义和数据库等工件的机制。
  • 提供满足需求、符合标准、适用项目管理及其他项目策略的软件开发和维护的方法学。
  • 为管理和产品发布提供支持信息,如基线的状态,变更控制、测试、发布、审计等。

为了更好的理解软件配置管理,这里以组装计算机为例说明。用户组装一台计算机,必须将鼠标、键盘、硬盘、CPU等配件插入对应的接口才可以保证它们正常工作。硬件接口的匹配对于生产厂家来说无疑是很重要的,当需要改动这些零部件时会非常谨慎,它们会给出硬件的内容清单,清单中记录了所有部件及其版本,因此每种部件都需要有用于识别的编号,同时还要给出相应的版本号。版本号可以区别同类部件的不同设计。

与硬件类似,每个软件系统都由子系统、模块或者构建等“零部件”组成,这些“零部件”都有自己的接口,它们都具有标识并且具备相应的版本号。因此同硬件系统类似,软件系统同样需要内容清单,记录哪些版本和构建组成了整个软件系统。由于软件更容易发生变化,所以软件配置管理比硬件配置管理的难度更大。

 

实施配置管理的目的和益处

软件配置管理的目的是在项目软件生命周其中建立和维护软件产品的完整性,保证团队的有效协作,配置管理是实施软件工程的基础。它活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。

对于一个软件企业来说,开发满足用户需求的、高质量的软件产品是其追求的目标。要实现这一目标的关键是建立起一个稳定、可控、可重用的软件流程。对于软件组织而言,要想永葆竞争优势并不断取得成功,就必须不断地改进它的软件流程。要进行软件流程改进就需要有明确的、量化的对现状的分析和未来的预期,这些数据来源于软件过程的度量,而进行度量的前提和基础就是软件配置管理。因此软件配置管理应以整个软件流程的改进为目标,为软件项目管理和软件工程的其他领域打好基础,以便于稳步推进整个软件组织的能力成熟度。

1.有效的软件配置管理解决的常见问题:

 

  •  多个开发人员同时修改程序或文档
  • 人员流程造成企业的核心技术泄露
  • 无法重现历史版本,使维护工作十分困难
  • 开发冻结,造成进度延误
  • 软件系统复杂,变异速度慢,造成进度延误
  • 因一些特殊情况无法按期完成而影响整个项目的进度或导致整个项目失败
  • 已修复的Bug在新版本中出现
  • 分出异地的开发团队难于协同,可能会造成重复工作并导致系统集成困难