软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是标识变更、控制变更、确保变更正确实现,并向其他有关人员报告变更。从某种角度讲,SCM 是一种标识、组织和控制修改的技术,目的是使错误降为最小,并最有效地提高生产效率。软件配置管理的核心内容包括版本控制和变更控制。
1.版本控制(VersionControl)
版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。版本控制最主要的功能就是追踪文件的变更。它将什么时候、什么人更改了文件的什么内容等信息如实地记录下来。每一次文件的改变,文件的版本号都将增加。除了记录版本变更外,版本控制的另一个重要功能是并行开发。软件开发往往是多人协同作业,版本控制可以有效地解决版本的同步以及不同开发者之间的开发通信问题,提高协同开发的效率。并行开发中最常见的不同版本软件的错误(Bug)修正问题也可以通过版本控制中分支与合并的方法有效地解决。
2.变更控制(ChangeControl)
变更控制的目的并不是控制变更的发生,而是对变更进行管理,确保变更有序进行。对于软件开发项目来说,发生变更的环节比较多,因此变更控制显得格外重要。项目中引起变更的因素有两个:一是来自外部的变更要求,如客户要求修改工作范围和需求等;二是开发过程中内部的变更要求,如为解决测试中发现的一些错误而修改源码,甚至改变设计。比较而言,最难处理的是来自外部的需求变更,因为IT项目需求变更的概率大,引发的工作量也大(特别是到项目的后期)。
软件配置管理与软件质量保证活动密切相关,可以帮助达成软件质量保证目标。软件配置管理活动包括软件配置管理计划、软件配置标识、软件配置控制、软件配置状态记录、软件配置审计、软件发布管理与交付等活动。
软件配置管理计划:软件配置管理计划的制订需要了解组织结构环境和组织单元之间的联系,明确软件配置控制任务;
软件配置标识:识别要控制的配置项,并为这些配置项及其版本建立基线;软件配置控制:关注的是管理软件生命周期中的变更;
软件配置状态记录:标识、收集、维护并报告配置管理的配置状态信息;
软件配置审计:独立评价软件产品和过程是否遵从已有的规则、标准、指南、计划和流程而进行的活动;
软件发布管理与交付:通常需要创建特定的交付版本,完成此任务的关键是软件库。
整理不易动动你发财的小手点个“在看”哦!
您的支持是我坚持的动力,谢谢
领取专属 10元无门槛券
私享最新 技术干货