第 19 章:配置管理

53 阅读7分钟

配置项

比较典型的配置项包括项目计划书、技术解决方案、需求文档、设计文档、 源代码、 可执行代码、测试用例、运行软件所需的各种数据、设备型号及其关键部件等,它们经评审和检查通过后进入配置管理。

配置项状态

基于配置项建设过程角度,可将配置项状态分为“草稿”“正式”和“修改”三种。配置项刚建立时,其状态为“草稿”。配置项通过评审后,其状态变为“正式”。此后若更改配置项,则其状态变为“修改”。当配置项修改完毕并重新通过评审时,其状态又变为“正式”。

image.png

配置基线

配置基线由一组配置项组成, 这些配置项构成一个相对稳定的逻辑实体。配置基线也是指一个产品或系统在某一特定时刻的配置状况。

基线通常对应于项目过程中的里程碑(Milestone),一个项目可以有多个基线,也可以只有一个基线。

建立基线的价值可包括:

  1. 基线为项目工作提供了一个定点和快照。
  2. 新项目可以在基线提供的定点上建立。新项目作为一个单独分支,将与随后对原始项目(在主要分支上)所进行的变更进行隔离。
  3. 当认为更新不稳定或不可信时,基线为团队提供一种取消变更的方法。
  4. 可以利用基线重新建立基于某个特定发布版本的配置,以重现己报告的错误。

配置库

配置库可以分幵发库、受控库、产品库 3 种类型。

  • 开发库。幵发库也称为动态库、程序员库或工作库,用于保存开发人员当前正在开发的配置实体,如新模块、 文档、数据元素或进行修改的己有元素。
  • 受控库。受控库也称为主库,包含当前的基线以及对基线的变更。
  • 产品库。产品库也称为静态库、 发行库、 软件仓库,包含己发布使用的各种基线的存档,被置于完全的配置管理之下。

配置库的建库模式有两种:按配置项类型建库和按幵发任务建库。

  • 按配置项的类型分类建库。这种模式适用于通用软件的开发组织。在这样的组织内,往往产品的继承性较强,工具比较统一,对并行开发有一定的需求。
  • 按开发任务建立相应的配置库。这种模式适用于专业软件的开发组织。在这样的组织内, 使用的开发工具种类繁多,开发模式以线性发展为主,所以没必要把配置项严格分类存储,人为增加目录的复杂性。

角色与职责

配置管理负责人

配置管理负责人也称配置经理,负责管理和决策整个项目生命周期中的配置活动,具体有:

  • ①管理所有活动, 包括计划、识别、控制、审计和回顾;
  • ②负责配置管理过程;
  • ③通过审计过程确保配置管理数据库的准确和真实;
  • ④审批配置库或配置管理数据库的结构性变更;
  • ⑤定义配置项责任人;
  • ⑥指派配置审计员;
  • ⑦定义配置管理数据库范围、配置项属性、配置项之间关系和配置项状态;
  • ⑧评估配置管理过程并持续改进;
  • ⑨参与变更管理过程评估;
  • ⑩对项目成员进行配置管理培训。

配置管理员

配置管理员负责在整个项目生命周期中进行配置管理的主要实施活动,具体有:

  • ①建立和维护配置管理系统;
  • ②建立和维护配置库或配置管理数据库;
  • ③配置项识别;
  • ④建立和管理基线;
  • ⑤版本管理和配置控制;
  • ⑥配置状态报告;
  • ⑦配置审计;
  • ⑧发布管理和交付。

配置项负责人

配置项负责人确保所负责的配置项的准确和真实:

  • ①记录所负责配置项的所有变更;
  • ②维护配置项之间的关系;
  • ③调查审计中发现的配置项差异,完成差异报告;
  • ④遵从配置管理过程;
  • ⑤参与配置管理过程评估。

管理活动

配置管理的日常管理活动主要包括:

  1. 制订配置管理计划
  2. 配置项识别
  3. 配置项控制
  4. 配置状态报告
  5. 配置审计
  6. 配置管理回顾与改进等。

制订配置管理计划

配置项识别

配置项识别是识别所有信息系统组件的关键配置,以及各配置项间的关系和配置文档等结构识别。

配置项控制

  1. 变更申请
  2. 变更评估
  3. 通告评估结果
  4. 变更实施
  5. 变更验证与确认
  6. 变更的发布
  7. 基于配置库的变更控制

现以某软件产品升级为例,其过程简述为:

  1. 将待升级的基线(假设版本号为 V2.1 ) 从产品库中取出,放入受控库。
  2. 程序员将欲修改的代码段从受控库中检出(Checkout ), 放入自己的开发库中进行修改。代码被检出后即被“锁定”,以保证同一段代码只能同时被一个程序员修改,如果甲正对其修改,乙就无法 Check outo
  3. 程序员将开发库中修改好的代码段检入(Checkin ) 受控库。检入后,代码的“锁定”被解除,其他程序员可以 Check out 该段代码了。
  4. 软件产品的升级修改工作全部完成后,将受控库中的新基线存入产品库中(软件产品的版本号更新为 V2.2,旧的 V2.1 版并不删除,继续在产品库中保存)

image.png

配置状态报告

配置审计

  • ( 1 ) 功能配置审计。功能配置审计是审计配置项的一致性(配置项的实际功效是否与其需求一致),具体验证主要包括:

    • ①配置项的开发己圆满完成;
    • ②配置项己达到配置标识中规定的性能和功能特征;
    • ③配置项的操作和支持文档已完成并且是符合要求的等。
  • (2) 物理配置审计。物理配置审计是审计配置项的完整性(配置项的物理存在是否与预期一致),具体验证主要包括:

    • ①要交付的配置项是否存在;
    • ②配置项中是否包含了所有必需的项目等。

变更管理流程

  • 变更申请
  • 对变更的初审
  • 变更方案论证
  • 变更审查
  • 发出通知并实施
  • 实施监控
  • 效果评估
  • 变更收尾

项目文档管理

  • ( 1 ) 文档书写规范。管理信息系统的文档资料涉及文本、图形和表格等多种类型,无论是哪种类型的文档都应该遵循统一的书写规范,包括符号的使用、图标的含义、程序中注释行的使用、注明文档书写人及书写日期等。

  • (2) 图表编号规则。在管理信息系统的开发过程中用到很多的图表,对这些图表进行有规则地编号,可以方便图表的查找。

  • (3 ) 文档目录编写标准。为了存档及未来使用的方便, 应该编写文档目录。

  • (4 ) 文档管理制度。为了更好地进行信息系统文档的管理,应该建立相应的文档管理制度。