- 目的/方针
通过规范公司配置管理过程,确保配置工作的合理性和完整性,确保配置工作在项目组中顺利实施,并为项目组提供可靠的数据分析。
应策划配置管理活动,并按策划的结果实施配置管理活动,执行配置审计,跟踪并报告配置项状态,控制和管理配置项的变更。
适用公司所有过程和产品。
术语或缩略语 | 解释 |
工作产品 | 泛指由过程产生的任何输出,这些输出可能包括文件、文档、工作记录、源代码,以及产品的一部分如服务、过程、规范、培训等。 |
配置管理 | 简称CM(Configuration Management的缩写),标识、控制和管理变更的一种管理活动。它控制配置项的修改和发行;记录和报告配置项的状态和变更;保证配置项的完整性、一致性和正确性;以及控制配置项的储存、装载和交付。 |
基线 | 是一组经过正式审查并且达成一致的规范或工作产品,是下一阶段工作的基础。对基线的更改必须遵循变更控制规程。 |
配置项 | 简称CI(Configuration Item 的简称),配置管理中受控制的对象被称为配置项,是生命周期中创建的信息,包含程序、数据、文档,分基线配置项和非基线配置项两类。 |
发布(Release) | 在生命周期各阶段结束时,由该阶段向下阶段提交该阶段的阶段产品的过程。 |
配置控制委员会(CCB) | 由项目关键成员组成的工作小组,负责建立、更改基线的设置与发布,负责变更控制。 |
基线变更 | 变更引起新的基线发布称为基线变更。 |
非基线变更 | 除基线变更外的变更称为非基线变更。 |
角色 | 职责 |
组织级CM工程师 | 建立、管理、维护组织标准过程库与经验库、培训库、开发类项目经验库、组织过程改进经验库 |
项目级CM工程师 | 编制配置管理计划并完成计划中各项活动 |
项目经理 | 实施配置审计 审阅配置项状态报告 审批《配置管理计划》,保证配置资源 |
项目组成员 | 依据项目《配置管理计划》完成各活动 |
CCB | 基线建立和基线更改的审批 基线变更申请的审核 |
QA 工程师 | 实施配置审计,检查配置管理过程 |
变更实施人 | 填写《项目变更单》提取配置项 实施对基线、非基线变更涉及配置项的具体修改 |
测试工程师/评审人员 | 对变更进行测试或评审 |
EPG | 建立、管理和维护组织财富库 |
过程改进部 | 分配公司级、项目级的CM工程师 |
- 公司项目及其他相关活动开始
- 《项目计划书》及其相关支持计划
- 公司级相关活动计划
- 流程
- 程CM及其他相关活动开始时间
- 主要活动
在项目策划时为项目组分配一个CM工程师。一个CM工程师可以同时兼任多个项目的配置管理工作。
组织财富库的相关责任部门应指定一名组织级CM工程师负责相关配置库的管理。
CM工程师应在项目策划或相关工作的策划阶段实施配置策划活动,配置策划应依据《项目计划书》或相关活动计划进行,并形成《配置管理计划》,主要内容包括:
- CM根据《过程剪裁指南》确定项目的配置项,记入《配置管理计划_配置库说明》中。
- 内循ND1配置项标识约定:说明本项目或活动中如何标识配置项,以及LABEL与版本的标识约定;
- 约定需要实施的配置管理活动、实施的时间计划以及实施人员。配置管理活动包括库的操作、配置项的变更管理、基线的建立与发布,配置库结构的设立、权限分配与操作管理;
- 约定配置状态的跟踪与报告,以及配置审计工作要求;
- 设立变更控制委员会(CCB),确定CCB组长以及CCB的工作方式。CCB成员包括(*为必选):
a) *项目经理
b) *CM工程师
c) * 高层领导
d) 软件工程组代表:如设计人员、编码人员、测试人员代表
e) QA工程师
f) 其他成员
CCB工作方式通常有:
a) 召开CCB会议;
b) 进行CCB会签,通过邮件或书面方式;
c) CCB组长或授权人直接审批。
《配置管理计划》需要由项目经理审批,并纳入配置库进行受控。
组织级配置管理员按照组织级配置管理要求来策划当年度的配置活动,来形成年度的配置管理计划。
公司级CM负责建立组织财富库,包含八个子库:标准过程库、过程基线模型、项目度量数据库、技术经验库、项目管理经验库、过程改进经验库、培训库、公司管理制度。关于组织财富库的配置管理详见《组织财富库管理规程》。
软件项目应建立两个配置库,分别:
-
- 开发库:用于存放项目期间处于开发状态的相关文档和代码。以及存放项目组工作期间的相关沟通记录等。(存放数据项)
- 基线库:用于存放经过验证后的基线产品。(存放配置项)
产品库:存放对外发布的产品。项目公用一个产品库。
在《配置管理计划》通过审批后,配置管理员建立配置库,设定权限。在项目执行过程中,如果项目组成员或干系人需要变更权限,由项目经理通知CM分配好权限。
软件项目的配置库内容以及配置项在各个库的流转过程,参见《配置库管理规程》中的有关规定。
标识配置项的意义在于保存配置项的所有版本,避免发生版本丢失或混淆等现象,并且可以快速准确地查找到配置项的任何版本。这些标识包括:
- 配置项的标识:
a)文档标识遵循《文档编写规范》;
b)代码标识遵循编码规范或者项目组内部约定。
- Label的标识:遵循《软件产品版本规划与LABEL约定》的规定。
- 版本的标识:遵循《软件产品版本规划与LABEL约定》的规定。
项目组应按约定的标识要求对相关的配置项、产品进行标识,确保配置项得到正确的识别,使其便于管理、检索和使用。
CM工程师和项目经理根据《项目计划书》及相关计划策划需形成的基线、基线配置项内容与基线建立的时间,并体现在《配置管理计划》的基线计划中。
CM工程师根据“基线计划”创建与维护基线及基线配置项,控制其变更。基线发布时,应遵循以下步骤:
- 项目经理填写《发布申请表》,
- 由CM工程师组织进行配置审计,形成《配置审计表》
- 将审计通过的《配置审计表》和《发布申请表》提交CCB审批
- 审批通过,CM工程师将基线配置项提交到基线库CM工程师以邮件方式发布《配置项状态报告》,通知项目组内成员和相关项目组。
项目可以建立的基线包括:
基线名称 | 简写 | 组成对象 |
需求基线 | RD | 《用户需求规格说明书》 《软件需求规格说明书》 |
设计基线 | SD | 《概要设计说明书》、《详细设计说明书》 |
测试基线 | TEST | 测试通过的版本 |
产品基线 | PRODUCT | 产品版本、《用户操作手册》、《用户安装手册》 |
项目分为两大类:新开发、升级类项目。新开发类需要需求、设计、测试、产品基线。升级类至少建立需求和产品基线,基线标识遵循《软件产品版本规划与LABEL约定》的规定。
CM工程师应定期进行配置项状态的跟踪,管理配置项并确保配置项的完整以及变更处于受控之中。
由CM工程师根据项目的生命周期策划进行配置项跟踪的频度,并体现在《配置管理计划》中,并按要求跟踪以下内容:
- 配置项当前状态(待建、正常、修改、作废)
- 版本信息
- 变更历史记录
并束CM000_ 配置项跟踪结果填写于《配置项状态报告》,并在每个里程碑结束前向项目经理汇报。
备注:只针对基线中配置项的状态变化发布《配置项状态报告》。
变更管理是指对已经进入基线库的配置项,因为需求变更、缺陷追踪等引起的变更而实施的控制活动。
配置项的变更管理分为基线变更和非基线变更。基线变更需要由CCB来评估变更请求,并在变更实施后由CCB确认变更的正确性。非基线变更需得到项目经理的评估与批准。变更控制的具体过程详见《变更管理规程》。
配置审计主要包括基线发布审计与产品发布审计:
审计类型 | 审计方法 | 审计时机 | 执行人 |
基线发布审计 | 功能审计与物理审计 | 基线经过确认准备发布前 | QA工程师、CM工程师、项目经理 |
产品发布审计 | 物理审计 | 产品(包括正式版本和SP版本的发布)通过验证准备发布前 | QA工程师、CM工程师 |
日常审计 | 物理审计 | 每周审计一次 | QA工程师、CM工程师 |
其中,物理审计的内容包括:
- 配置项是否已经提交
- 配置项是否已经进入正确的库和目录
- 发布是否采用正确配置库,正确的配置项和正确版本
- 变更后的配置项是否归并
功能审计的内容包括:
- 配置项内容是否与需求一致
- 产品变更是否完成,变更管理是否已经纳入基线库
- 变更是否经过评审
- 变更是否有记录
配置审计人员根据《配置审计表》的内容实施审计并填写审计的结果,将《配置审计表》提交项目经理审批后入库,配置审计问题计入《项目问题管理表》由CM跟踪解决直至关闭。
-
- CM活动报告
CM工程师每周编写个人周报,汇报给项目经理。
在项目的里程碑点编写《CM阶段活动报告》,总结每个里程碑阶段的配置工作情况与度量结果,并汇报给项目经理。
CM依据《配置管理计划》规定的备份时间对配置库内容进行备份,根据所使用的配置管理工具采取合适的备份方法备份并保存,备份完成后填写《配置库备份记录》。
- 《配置管理计划》
- 《配置项状态报告》
- 《配置审计表》
- 《发布申请表》
- 《个人周报》
- 《CM阶段活动报告》
- 《配置库备份记录》
- 项目结项完成后或相关活动完成。