软件配置管理(Software Configuration Management,简称:SCM),又称软体形态管理、或软体建构管理,简称软体形管。界定软体的组成项目,对每个项目变更进行管控(版本控制),并维护不同项目之间的版本关联,以使软体在开发过程中任一时间的内容都可以被追溯,包括某几个具有重要意义的数个组合,例如某一次交付给客户的软体内容。

SCM的简称已经扩展为“原始码配置管理”(source configuration management)以及“软体修改及配置管理” (software change and configuration management)[1]。不过,“配置”一词一般还是会指系统管理员才能进行的变更。

目的

SCM的目标一般包括以下几项:

  • 配置识别:识别配置、配置项目基准
  • 配置控管:导入变更控管流程。该流程通常由变更控制委员会来执行,其主要的职责是核准或拒绝有悖任何基准的所有变更请求。
  • 配置状态报告:记录和呈报与开发过程状态相关的所有必要资讯。
  • 配置稽核:确保这些配置包含所有预期内容,且备有完整的规定文件(包括要求、结构规范和使用者手册)。
  • 建构管理:管理用于建构的流程和工具。
  • 流程管理:确保遵循企业组织的开发流程。
  • 环境管理:管理承载系统的软硬体。
  • 团队合作:促进流程中团队彼此间的互动。
  • 缺陷追踪:确保可溯及每个缺陷的源头。

随著云端运算的引进,SCM工具的用途有时已互相整合。SCM工具本身转变为虚拟设施,可以在虚拟机上执行并保存状态和版本。这些工具能管理并为云端虚拟资源(包括虚拟设备、储存设备和软体套件)建立模型。如今,因为现在已经可以动态的启用虚拟伺服器和相关资源,SCM管理人员的角色和职责已经与开发人员合并[2]

历史

软体配置管理(SCM)在运算领域的应用可以追溯至1950年代。当时,原先用于硬体开发和生产控制的CM(配置管理)概念,转而应用于软体开发。早期的软体都有实体,如打孔卡打孔带磁带和其他媒介。第一个软体配置管理需经由人为操作。随著程式语言及其复杂性不断进展,涉及配置管理和其他方法的软体工程由于时程、预算和品质等因素而成为主要隐忧。多年来的实践经验,为软体开发流程和工具提供定义并奠定基础。而这些工具最终成为管理软体变更的系统[3]。业界普遍的做法,即是采用开放或专有方式(如修订控制系统)来作为解决方案。随著电脑的使用越来越普及,可处理大型任务范畴的系统也因应而生,包括需求管理、设计替代方案、品质控管等。随后,工具均遵循企业组织的守则,如软体工程学院英语Software Engineering Institute建立的能力成熟度模型(CMM)。

参见

参考文献

延伸阅读

外部链接

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.