软件配置管理
来自维基百科,自由的百科全书
软件配置管理(Software Configuration Management,简称:SCM),又称软件形态管理、或软件建构管理,简称软件形管。界定软件的组成项目,对每个项目变更进行管控(版本控制),并维护不同项目之间的版本关系,以使软件在开发过程中任一时间的内容都可以被追溯,包括某几个具有重要意义的数个组合,例如某一次交付给客户的软件内容。
SCM的简称已经扩展为“源代码配置管理”(source configuration management)以及“软件修改及配置管理” (software change and configuration management)[1]。不过,“配置”一词一般还是会指系统管理员才能进行的变更。
目的
![]() |
SCM的目标一般包括以下几项:
- 配置识别:识别配置、配置项目和基准。
- 配置控管:导入变更控管流程。该流程通常由变更控制委员会来执行,其主要的职责是核准或拒绝有悖任何基准的所有变更请求。
- 配置状态报告:记录和呈报与开发过程状态相关的所有必要信息。
- 配置审核:确保这些配置包含所有预期内容,且备有完整的规定文件(包括要求、结构规范和用户手册)。
- 建构管理:管理用于建构的流程和工具。
- 流程管理:确保遵循企业组织的开发流程。
- 环境管理:管理承载系统的软硬件。
- 团队合作:促进流程中团队彼此间的交互。
- 缺陷追踪:确保可溯及每个缺陷的源头。
随着云计算的引进,SCM工具的用途有时已互相集成。SCM工具本身转变为虚拟设施,可以在虚拟机上执行并保存状态和版本。这些工具能管理并为云端虚拟资源(包括虚拟设备、存储设备和软件包)建立模型。如今,因为现在已经可以动态的激活虚拟服务器和相关资源,SCM管理人员的角色和职责已经与开发人员合并[2]。
历史
软件配置管理(SCM)在运算领域的应用可以追溯至1950年代。当时,原先用于硬件开发和生产控制的CM(配置管理)概念,转而应用于软件开发。早期的软件都有实体,如打孔卡、打孔带、磁带和其他介质。第一个软件配置管理需经由人为操作。随着编程语言及其复杂性不断进展,涉及配置管理和其他方法的软件工程由于时程、预算和质量等因素而成为主要隐忧。多年来的实践经验,为软件开发流程和工具提供定义并奠定基础。而这些工具最终成为管理软件变更的系统[3]。业界普遍的做法,即是采用开放或专有方式(如修订控制系统)来作为解决方案。随着电脑的使用越来越普及,可处理大型任务范畴的系统也因应而生,包括需求管理、设计替代方案、质量控管等。随后,工具均遵循企业组织的守则,如软件工程学院建立的能力成熟度模型(CMM)。
参见
参考文献
延伸阅读
外部链接
Wikiwand - on
Seamless Wikipedia browsing. On steroids.