15.2 配置管理

一句话讲明白

把项目里所有"会被改来改去的东西"(代码、文档、计划)编号入柜、谁改了什么留痕、旧版本永不丢失。

生活类比

图书馆借书:每本书一个索书号(配置项标识),书的状态分"在馆/借出/编目中"(配置项状态),每次改版就出新版本号,旧版照样留着不许扔(版本管理)。馆员负责上架登记(配置管理员 CMO),馆长决定哪些书进珍本库、能不能修订(配置控制委员会 CCB),定期盘点书架对不对得上账(配置审计)。

正经定义

配置管理是为了系统地控制配置变更,在信息系统项目的整个生命周期中维持配置的完整性和可跟踪性,而标识信息系统建设在不同时间点上配置的学科。它是变更管理的基础与载体——变更最终都要落到配置项的检出、修改、检入和基线更新上。

拆解与流程

一、配置项(CI)与两类划分

配置项是为配置管理设计的硬件、软件或两者的集合,在配置管理过程中作为单个实体对待。典型配置项:项目计划书、技术解决方案、需求文档、设计文档、源代码、可执行代码、测试用例、运行所需数据、设备型号及其关键部件等,经评审和检查通过后进入配置管理,统一编号并保存在 CMDB 中。

分类 包含 操作权限
基线配置项 所有设计文档和源程序等(需求规格说明书、设计文档、源代码、可执行代码、数据库脚本) 向开发人员开放读取
非基线配置项 项目的各类计划和报告等 向项目经理、CCB 及相关人员开放

二、配置项三状态与版本号

stateDiagram-v2 [*] --> 草稿 草稿 --> 正式: 通过评审 正式 --> 修改: 变更控制 修改 --> 正式: 修改完毕重新通过评审
状态 版本号格式 规则
草稿 0.YZ YZ 范围 01–99,随草稿修正递增
正式 X.Y X 主版本号 1–9,Y 次版本号 0–9;首次成为正式文件为 1.0
修改 X.YZ 只增大 Z,X.Y 不变;改完转正式时 Z 置 0,增加 X.Y

小改动可做成附件(1.0、1.1…),附件积累到一定程度才增加 Y;升级幅度大才增加 X。

三、配置基线

基线由一组配置项组成,是产品或系统在某一特定时刻的配置状况。基线中的配置项被"冻结",任何人不得随意修改,对基线的变更必须遵循正式变更控制程序。基线通常对应项目里程碑;交付用户的称发行基线 Release,内部使用的称构造基线 Build。每条基线要定义:建立基线的事件、受控的配置项、建立和变更基线的程序、批准变更基线所需的权限。

四、配置项版本管理

对配置项的任何修改都产生新版本,由于不能保证新版本一定比旧版本"好",不能抛弃旧版本。目的是按规则保存所有版本,避免版本丢失或混淆,并能快速准确查找任一版本。

五、配置库三种(必考)

类型 别名 放什么 谁控制
开发库 动态库、程序员库、工作库 开发人员正在开发的配置实体(新模块、文档、数据元素) 开发人员自行控制,修改频繁,一般无须配置控制
受控库 主库 当前基线 + 对基线的变更,某阶段工作结束时的工作产品存入 完全的配置管理之下
产品库 静态库、发行库、软件仓库 已发布使用的各种基线的存档,系统测试完成后的最终产品 完全的配置管理之下

建库两种模式:按配置项类型建库(通用软件开发组织,产品继承性强,利于统一管理和提高编译发布效率)/按开发任务建库(专业软件开发组织,开发工具多、线性发展,更灵活)。

六、角色与职责(4 个)

角色 关键词
配置控制委员会 CCB 也称变更控制委员会;制定修改配置管理策略、审批发布配置管理计划、审批基线设立与产品版本、审查/评价/批准/推迟/否决变更申请、监督已批准变更的实施、接收变更与验证结果
配置管理负责人(配置经理) 管理和决策整个生命周期的配置活动;审批配置库结构性变更;定义配置项责任人;指派配置审计员;培训
配置管理员 CMO 主要实施者:建立维护配置管理系统与配置库、配置项识别、建立管理基线、版本管理与配置控制、配置状态报告、配置审计、发布管理和交付
配置项负责人 确保所负责配置项的准确和真实;记录所有变更;维护配置项间关系;调查审计差异并完成差异报告

七、六项管理活动

制订配置管理计划(CCB 审批)→ 配置项识别(7 步:识别受控项 → 指定唯一标识号 → 定义重要特征 → 确定所有者和责任 → 确定进入配置管理的时间条件 → 建立和控制基线 → 维护文档组件修订与产品版本关系)→ 配置项控制 → 配置状态报告 → 配置审计 → 配置管理回顾与改进。

配置项控制 7 步:变更申请 → 变更评估(CCB 评估影响、必要性、范围、方案可行性、工作量合理性)→ 通告评估结果 → 变更实施 → 变更验证与确认 → 变更发布 → 基于配置库的变更控制。

基于配置库的变更控制(经典考题):基线 V2.1 从产品库复制到受控库 → 程序员 Check out 检出到自己的开发库(检出即"锁定",同一时段只许一人改)→ 改完 Check in 检入受控库(解锁)→ 全部完成后新基线存入产品库(成为 V2.2,旧版本不删除)。这样解决了甲乙两人各改一处、互相覆盖的问题。

配置审计(应定期进行,实施新配置库后、重大变更前后、发布安装前、灾难恢复后、发现未授权配置项后):

功能配置审计 物理配置审计
审计什么 一致性:实际功效是否与需求一致 完整性:物理存在是否与预期一致
验证内容 开发已圆满完成;达到规定的性能和功能特征;操作和支持文档已完成并符合要求 要交付的配置项是否存在;是否包含了所有必需的项目

⚠️ 审计软件即使发现不一致,也不允许自动更新配置库,必须由有关负责人调查后再更新。

考试怎么考

易混辨析

对比 配置管理 变更管理
关注 可交付产品(含中间产品)及各过程文档 识别、记录、批准或否决对项目文件、可交付产品或基准的变更
关系 是变更管理的基础/载体:配置项识别、配置状态记录、配置确认与审计被包含在变更管理过程中 决策层
主责 配置管理员 CMO CCB

一秒记忆

"基线是设计文档和源代码,计划报告非基线;草稿 0.YZ、正式 X.Y、修改 X.YZ;三库开发-受控-产品,检出加锁检入解锁;CMO 干活、CCB 拍板、配置审计分功能和物理——功能看功效、物理看存在。"

相关