软件配置管理的主要内容:
1、版本管理
1.1 软件配置项(software configuration item):
含义:在软件生存周期内所产生的各种应纳入管理范围的系统构成成分。
包括各种管理文档和技术文档,源程序与目标代码,以及运行所需的各种数据等(配置管理的资源对象)。
形态:在通常的软件配置管理系统中,最基本的软件配置项是以磁盘文件的形式进行存放和管理的。
1.2 版本管理是配置管理的基础:
应当记录每个软件配置项的所有历史记录,并记录该软件配置项由何人创建,何人在何时因何原因进行了修改等信息,以及对这些软件配置项版本的进行的检索和信息查询等活动。
1.3 版本树:
可以对软件系统的不同演化方向进行管理。
1.4 软件配置项的版本管理——版本数
记录一棵带有时间标记的配置项版本演化的树结构信息。
2、配置支持
2.1 软件配置(software configuration):
所有软件配置项在不同时期的组合、结构与关系定义。
2.2 系统建模
通过定义配置来表示整个系统或其中的子系统。
2.3 依赖性追踪
例如:查找与某个源文件版本对应的设计文档的版本。
2.4 影响分析
分析对系统一个部分的修改可能影响哪些其它部分。
3、变化管理
3.1 变化:软件版本演化的来源与过程
来源:需求变化、增加功能、修改错误 ……
生命周期:请求、审批、实施、验证、审核、结束。
3.2 变化控制
记录和控制对软件配置项的每一次修改。
3.3 变化跟踪
一个变化生命周期进行到哪一步了?
如果一个已经改掉的bug又出现了,怎样找出原因。
3.4 变化传播
帮助将对产品一个版本的修改传播到其它版本中。
4、构造管理(Build)
4.1 系统的构造和重新构造(Build)
帮助开发人员正确和快速地构造和重新构造产品的任何版本。
4.2 软件发布管理(Release)
为不同的用户提供不同的版本,避免其中发生混乱。
4.3 软件部署管理(Deployment)
帮助在分布式环境中部署整个系统。
5、过程支持
5.1 过程控制
5.2 预定义的过程模版 和 可剪裁的过程实例
可定义过程,并保证过程中定义的每一步均由授权的人员按正确的顺序执行。
5.3 过程支持中的关键概念
包括:角色、工作组、任务、触发器机制等。
6、团队支持
6.1 工作区管理
不同的开发人员拥有独立的不相互影响的工作空间。
6.2 并行开发
支持多个开发人员同时开发一个项目。
6.3 远程开发
开发人员在物理上可以分布在相距较远的位置上。
7、状态报告
依赖性报告
影响报告
构造报告
变化状态报告
差异报告
历史报告
访问控制报告
冲突检测报告
8、审计控制
8.1 验证软件配置管理过程
8.2 验证系统管理的所有配置项的完整性
8.3 基本的审计控制是记录配置管理过程中执行的所有活动,并提供检索机制——日志