前言
配置管理作为研发项目中一项重要的支持类活动,主要目的是通过配置管理相关活动来建立并维护研发项目中的工作产品的完整性。这些活动包括:配置管理计划、识别配置项、配置控制、配置状态记录与报告以及配置审计。
上一次分享了《浅谈研发项目中的配置管理(概述篇)》,这一篇内容重点为大家介绍【过程篇】部分内容,希望对研发项目团队全面认识研发项目中配置管理所涉及主要的工作内容有所帮助。
配置管理常见术语
为了统一语言,这里先整理和介绍一些常用的配置管理术语,如下表:
配置管理的主要活动介绍
首先大家可以通过配置管理过程流程图了解活动全景,下面再重点为大家介绍配置管理过程的主要活动。
配置管理工作涉及的主要内容:
(一)维护配置人员设置
在研发项目立项后为项目组分配一个CM工程师。通常一个CM工程师可以同时兼任多个项目的配置管理工作。组织财富库的相关责任部门应指定一名CM工程师负责组织财富库的管理。
(二)配置策划
制定项目级配置管理计划
对于项目级配置策划活动,CM工程师应在项目策划或相关工作的策划阶段,与项目经理协作完成实施配置策划活动,配置策划应依据《项目过程定义裁剪表》、《项目总体计划》或相关活动计划进行,并形成《配置管理计划》,主要内容包括:
- 配置项标识约定:说明本项目或活动中如何标识配置项,以及版本的标识约定;通常各个公司内部有对应的标识规范,执行中需要遵照规范执行;
- 约定需要实施的配置管理活动、实施的时间计划以及实施人员。配置管理活动包括配置库的创建、权限分配与操作管理、发布与变更管理、基线发布与变更管理;配置管理活动包括配置库的创建、权限分配与操作管理、发布与变更管理、基线发布与变更管理;
- 约定配置项状态的跟踪与报告,以及配置审计工作要求;
- 设立变更控制委员会(CCB),确定CCB组长以及CCB的工作方式,可以根据部门实际情况把CCB作为常设机构(项目立项公告后建立起CCB)。
CCB 成员包括(*为必选):
a)*部门经理;
b)*项目经理;
c)*项目工程组代表:如设计人员、编码人员、测试人员代表;
d)QA工程师;
e)其他必要成员。
CCB 工作方式通常有:
a) 召开 CCB 会议;
b) 进行 CCB 会签,通过邮件或书面方式;
c)CCB 组长或授权人直接审批;
d) 约定配置库备份的工作要求。
配置管理计划的评审
《配置管理计划》需要由QA审核,项目经理审批和发布,并纳入配置管理进行受控。
组织级配置管理计划的制定
对于组织级配置策划,组织级配置管理员按照组织级改进计划来策划当年度的配置活动,来形成年度的《组织级配置管理计划》。
(三)实施配置活动
配置库管理
研发项目一般应建立三个配置库,分别是:
☆开发库:用于存放项目期间处于开发状态的相关文档和代码。以及存放项目组工作期间的相关沟通记录等。
☆受控库:用于存放经过验证后的产品(包括基线产品)。
☆产品库:存放对外发布的产品。
项目立项公告后,由组织级的配置管理员建立研发项目的三个配置库,由项目级的配置管理员按项目级的《配置管理计划》来细化三个配置库的目录结构。
标识配置项
标识配置项的意义在于保存配置项的所有版本,避免发生版本丢失或混淆等现象,并且可以快速准确地查找到配置项的任何版本。这些标识包括:• 配置项的标识:
a) 文档标识遵循《文档编写规范》;
b) 代码标识遵循编码规范或者项目组内部约定。
• 配置项标识:遵循《配置项标识与版本规划约定》的规定。
• 版本的标识:遵循《配置项标识与版本规划约定》的规定。
项目组应按约定的标识要求对相关的配置项、产品进行标识,确保配置项得到正确的识别,使其便于管理、检索和使用。
基线管理
CM工程师和项目经理根据《项目总体计划》及相关计划策划形成的基线、基线配置项内容与基线建立的时间,并体现在《配置管理计划》的基线计划中。
CM工程师根据“基线计划”创建与维护基线,受控基线配置项,控制其变更。基线发布时,应遵循以下步骤:
☆项目经理填写《发布申请表》。
☆由项目经理指定专人(通常为QA)进行配置审计,形成《配置审计报告》。
☆将审计通过的《配置审计报告》和《发布申请表》提交CCB组长审批。
配置管理的常见误区
尽管国内研发企业实施配置管理已经取得了很多进步,但还有很多企业对它的理解比较模糊,或者在真正的配置管理实施过程中存在着误区。从我们过往对合作咨询客户的咨询辅导中,我们了解到很多企业的配置管理主要有三个方面的误区。
误区一:版本管理=配置管理
尽管越来越多的人对配置管理的理解不再局限在版本控制上,但在具体实施配置管理的过程中,还是只见版本控制,而不见真正的配置管理。
这种问题,归根到底在于企业对开发流程的管理在意识上不够重视。很多企业本身的开发管理不是很规范,项目组对于开发管理的关注也是有限的。另外一个原因是开发管理中资源的不足,比如资金缺乏(导致不能购买功能齐全、 价格昂贵的商业产品)、人力资源不足(不能招聘专业的配置管理人员),因此不能在公司内部实施体系化的配置管理。
误区二:编码水平最差=配置管理员
这一点我们在前面一篇文章也提及过,很多研发组织/团队对配置管理员CMO的职责认识不清,认为配置管理员的工作可以由IT人员来替代完成,项目上没有必要专门还设一位CMO。甚至更有误区是:在选择配置管理人员的时候,是寻找开发团队中编码水平最差的人。比如张三写代码不行,测试也不行,那就只好去从事配置管理工作了。
但是我们前面也介绍过,配置管理人员作为配置管理具体实施的人。可以说公司制定了配置管理的流程和规章只是配置管理实施的基础,而真正的配置管理能否实施、能否有效,关键在于从事配置管理的人员。
因此国内外成熟的公司一般都由有丰富经验的人担任配置管理员,比如华为就非常重视软件配置管理,除了设置CTO、CEO,还会专门设置配置管理员(CMO,Configuration Management Operator)角色来执行配置管理工作。
误区三:采用配置管理工具=有效的配置管理
配置管理工具在配置管理中起着不可替代的作用。没有工具的支持,实施一个完整合格的配置管理是不可想象的。也许正是因为工具的重要,造成了很多企业对于工具的迷信,以为只要部署了配置管理工具,尤其是专业商业工具,就自以为建立了配置管理体系。
使用好的工具并不代表就能实施好配置管理。因为工具就是工具,工具不能代替管理。否则为什么总是说配置 “管理”而不单单说配置“工具”呢?
一个成功的配置管理工具实施,需要两个方面的条件:一是规范的软件开发流程;二是合格的配置管理参与人员,这里的配置管理参与人员包括了配置管理员、开发人员、项目经理等。
介绍到这里,我们也对研发项目中配置管理所涉及的主要工作内容、工作流程及常见误区做了一个概述介绍,如果您对其中有一部分内容有需要更深入探讨的问题,可以在留言区咨询,也欢迎添加微信咨询,我们有专业咨询团队。
中天华夏咨询
【关注公众号“中天华夏咨询”,了解更多】
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。