wankai

配置计划

配置管理计划是开展所有配置管理活动的基础。

计划中应该明确以下要素:

  • 配置管理人员的组织和职责
  • 配置项的命名规则
  • 配置管理工具以及配置库结构
  • 标识的配置项和位置
  • 权限分配和管理方法
  • 配置库备份的周期、方法
  • 变更控制的流程和操作方法
  • 版本发布的计划和策略
  • 基线审计计划
  • 集成策略
  • 软件配置管理的场景

配置标识 Configuration Identification


配置标识是配置管理的一个组成部分,包括:选择产品的配置项、为他们制定唯一的标识,并在技术文档中记录其功能和屋里的特性。配置标识是对软件配置进行管理的前提和基础。配置标识包括了软件配置项的选择、划分和对配置项的功能物理属性进行描述的过程。

每个配置项都必需被唯一地标识,这个唯一的标识被用于与其它配置项进行区分,跟踪和报告该配置项的状态。一般地,每个配置项被赋予一个标识符。

  • 文档:对所有文档而言,文件名就作为配置项的命名
  • 代码:使用“项目名-模块名+代码”或者“项目名+代码”的方式进行命名
  • 工具:以工具本身的名称命名

定义配置项的版本

单个配置项在每一次修改后都会发生变化,为了标识配置项在两次修改之间的不同,需要对配置项的版本进行标识。

配置项版本命名原则

配置项的版本标识建议采用的形式为:xx.yy的十进制标识符,其中xx起始为“1”,yy起始为“0”。

所有数字均是阿拉伯数字,并且单调递增。如果发生了重大的修改,xx递增;如果只有小修改,递增yy。

已基线化

成为基线的配置项是指已完成该配置项的审核、批准和签发并且成为创建或修改其他配置项的输入。

受管理和受控的

受管理和受控的配置项是指已提交审核,但还没有批准通过的配置项。

配置控制 Configuration Control

配置控制是配置管理的一个组成部分,包含评估、协调、批准/拒绝、实施对配置项的变更。

这发生在正式的配置标识之后。

配置控制包括配置项在完成基线化后所产生的变更的评估、协调、批准、驳回以及实现过程。

  • 变更请求的管理
  • 变更的协调工作

在项目开始时,由项目负责人根据项目的情况确定变更控制委员会(Change Control Board, CCB),并记录在配置管理计划中。CCB组长也可以根据更改请求的情况事件驱动地召集CCB会议。CCB也可以批量处理更改请求或采用定期的方式进行处理。

如有必要,可以设立不同级别的CCB,他们具有不同的授权,对不同层次的变更申请进行控制根据修改的影响范围,CCB召开相应的评估会议,并邀请相关人员参加

配置状态报告 Configuration Status Report

配置状态报告是配置管理的一个组成部分,记录和报告用来有效管理配置所需要的必要信息。这些信息包括一个已批准的配置标识清单,变更请求当前的处理状态,以及一品准的变更的实现情况。

配置状态报告是跟踪对软件的更改的过程,它保证对正在进行和已完成的变更进行记录、监视并通报给项目组和相关组成员。

一旦配置项基线化后,应该通知项目组, 内容应该包括基线化配置项的名称以及位置。另外应该周期或事件驱动地将更新后的培植状态发给项目组成员以及相关组,以确保配置项的状态能被相关人员所了解,根据需要一周或者两周发布一次

  • 版本库相关的信息:名字、存储位置、编号、管理员、主要用途描述
  • 版本库中产品的相关信息
  • 文件相关的信息
  • 变更请求、基线、发布、版本库的备份等

配置审计 Configuration Audit

执行审计以验证配置项符合特定的标准或需求

对配置管理的独立的查检过程,确认受控软件配置项满足需求并就绪。

  • 功能审计:配置项的变更控制是否和配置管理计划中的描述相一致
  • 物理审计:配置项的完整性、正确性, 一致性和可跟踪性

软件配置管理的组织

角色

项目经理 PM: Project Manager

  • 制定和修改项目的组织结构和配置管理策略;
  • 批准、发布配置管理计划;
  • 决定项目起始基线和开发里程碑;
  • 接受并审阅配置控制委员会的报告。

变更控制委员会 CCB: Change Control Board

  • 负责指导和控制配置管理的各项具体活动的进行,为项目经理的决策提供建议。其具体职责为以下几项:
  • 定制开发子系统;
  • 定制访问控制;
  • 制定常用策略;
  • 建立、更改基线的设置,审核变更申请;
  • 根据配置管理员的报告决定相应的对策。

软件配置工程师 CMO: Configuration Management Officer

  • 根据配置管理计划执行各项管理任务,定期向CCB提交报告,并列席CCB的例会。其具体职责为以下几项:
  • 软件配置管理工具的日常管理与维护;
  • 提交配置管理计划;
  • 各配置项的管理与维护;
  • 执行版本控制和变更控制方案;
  • 完成配置审计并提交报告;
  • 对开发人员进行相关的培训;
  • 识别软件开发过程中存在的问题并拟就解决方案。

系统集成工程师 SIO: System Integration Engineer

  • 系统集成员负责生成和管理项目的内部和外部发布版本,其具体职责为以下几项:
  • 集成修改;
  • 构建系统;
  • 完成对版本的日常维护;
  • 建立外部发布版本。

软件开发工程师 DEV: Software Engineer
软件测试工程师 QA: QA Engineer / Tester

制定配置管理流程

根据项目开发的需要,制定相应的配置管理流程,以更好地支持开发,主要活动包括:

  • 定制并行开发策略。合理的并行开发策略应该具有以下特点:协调项目的复杂性和需求,统一创建分支类型和元数据,为开发过程中的变更集成制定有效的规范,适时反映开发过程中方法和需求的变化。
  • 发布版本管理。软件开发过程中的一个关键活动是提取工件的相关版本,以形成软件系统的阶段版本或发布版本,一般将其称为稳定基线。一个稳定基线代表新开发活动的开始,而一系列定制良好的活动之后又会产生一个新的稳定基线。有效地利用此项功能,在项目开发过程中可以至始至终管理、跟踪部件版本间的关联。

分类:

技术点:

相关文章: