配置管理就是配置管理员的事儿吗?

一说起配置管理,有些部门就会说,我们没有专门的配置管理员,这块工作没法做啊。那么,配置管理就只是配置管理员的事儿吗?

那我们就先来看看什么是配置管理,为什么需要配置管理。

(IEEE定义)配置管理是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。配置管理的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期各个阶段都能得到精确的产品配置。

(CMMI定义)配置管理的目的是通过配置识别,配置控制、配置状态记录及配置审计,来建立和维护工作产品的完整性。

这里面有几个活动:

1. 配置项识别

配置项通常是最终工作产品,以及对最终产品有直接影响的中间产品。对于一个软件研发项目来说,软件包、用户文档等是最终产品,什么对最终产品有影响呢,包括最初的需求文档,原型,设计文档,源代码,测试用例,甚至编译脚本都是对最终产品有影响的,上游变,下游也需要跟着变,它们也需要识别为配置项。而一些计划、周报、会议纪要等,属于管理性文档,并不需要纳入配置项的范围。

配置项的识别,是要建立在对工作产品了解的基础上,所以说,项目经理是最适合识别配置项的人,跟着工作任务分解和进度安排的时候就可以一起做了。

2. 配置状态记录

要管理配置项,首先在物理上要给这些配置项找个地儿存放起来,在没有现代配置管理工具的时候,建个档案室或公共文件夹就可以,但是需要把每个版本的输出都备份下来,以防需要回退的时候找不到。为了防止随意修改,需要有个人专门保管这些文件,或者对公共文件夹设置相应的权限。配置项修改后也需要经过专门的人再重新放回档案室或者文件夹。为了分清楚各个版本或基线的关系,配置项的版本变更记录,状态,以及不同基线的差异,还需要专门维护一张表格来记录。所以,配置状态记录更多地是用行政手段来完成的。这个维护工作量还是相当大的,所以需要一个专门的档案保管员或者配置管理员来承担。

在有了现代配置管理系统(SVN, GIT)等以后,版本的保留和回退,不同版本/基线的差异,系统都可以通过技术手段完成。

使用现代配置管理系统(SVN, GIT),项目起初需要建立配置库和分配权限,但是这个工作量基本是一次性的,并不需要专人。

3. 配置控制

说到配置控制,首先要谈的一个概念是“基线”。基线是由一个标识符分配到配置项目或一组配置项的集合,在一个特定时间点关联的实体。一般的基线设置包括系统级需求、系统组级设计需求、和最终开发和生产初期的产品定义,通常被叫做”功能基线“(或”需求基线“),”分配基线“(或”设计基线“), 和”产品基线“。

通俗来说,就是我们标识出开发过程中某些关键阶段的关键工作产品,这些工作产品互相有关联,它们对于下一个阶段的工作有重要影响。比如需求基线, 包含市场或客户需求,以及与之对应的产品需求。

举个例子,当产品需求评审修改完以后,大家都达成一致在这版需求基础上开发了,需求就“基线”了,要控制起来,不能随意修改了。怎么控制基线不让人随意修改呢?有几种操作方式:

•可以把基线的文档放到专人保管的档案室里;

•可以把基线的文档放到一个权限受控的文件夹里;

•可以用GIT的分支来控制,基线后的文档提交到master分支上;

那怎么标识基线呢?有几种操作方式:

•可以把基线的文档放到一个约定好的基线标识(比如说REQBL)的文件夹里;

•可以在某个地方记录下某个基线(比如说REQBL)对应的文档名称,版本,以及存储位置;

•可以在SVN或GIT上对于以及基线的工作产品打上基线标签;

需求”基线“了以后,需要让大家都知道这是最新”官方“版本,这就是基线发布。可以人工发邮件,现在我们也可以使用技术手段让GIT上基线标签时自动发邮件。

”基线“建立了以后,可能又会因为某种原因需要变更。因为基线很重要,是后期大家工作的基础,当然不能随意修改,就需要对变更做审批(通常会成立一个项目CCB)),看到底需不需要变,如果变了会对下游哪些工作有影响,避免变更造成上下游不一致。已基线的工作产品变更完了,需要再次控制以及标识(区分上一次基线),对大家发布。

这里面有哪些工作需要“配置管理员“呢? 将基线工作产品处于受控状态,打基线标签、发布基线,看起来像是”配置管理员“的事,其实这只是基本的管理工作,不需要什么专业知识,项目中可以指派某个人来做就行。大项目或长周期可能需要建立三个基线,对于小项目来说,可能只需要一个基线,就更没什么工作量了,而且更何况,还可以使用技术手段自动发布基线通知了呢!

4. 配置审计

配置审计是确认最终的基线和文件遵照了特定标准或需求。通常分为物理审计和功能审计。

物理审计要看,配置项标识、基线标识是否和约定一致,配置项存放位置是否与约定一致,变更是否有审批,有没有保留变更记录以及相应的评审记录等等。物理审计可以由配置管理员来做,也可以由质量人员来做,或者是项目内部指定人员。这个工作其实可以包含在日常的配置管理活动中。

功能审计内容要验证配置项目的测试功能特征,是否达到功能基线指定的需求。一般由项目经理或架构师进行,主要检查设计、代码内容是否一致,有没有夹带的需求变更,有没有走流程导致需求和代码不一致。这种审计一般只在相关事件驱动时才需要。

综上,配置管理的主要目的就是维护软件开发最终产品,以及关键中间产品。不是什么过程输出都管,所以要识别配置项;关键工作产品大家得达成一致,所以有基线以及基线发布;过程中如有变更,得识别出配置项哪些被牵连需要同时变更,所以有变更管理。

有了现代配置管理工具,配置管理所需要的“管理“工作,其实已经被技术手段减少了很多。这也是为什么,在华为,一个配置管理员可以支持四五百人的部门或团队。只要理解了配置管理的目的,团队事先约定好配置管理的规则和权限, 并不一定需要一个专职的”配置管理员“。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,558评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,002评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,024评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,144评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,255评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,295评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,068评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,478评论 1 305
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,789评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,965评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,649评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,267评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,982评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,800评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,847评论 2 351

推荐阅读更多精彩内容

  • 软件配置管理 软件配置管理 (Software Configuration Management, SCM) 问题...
    厲铆兄阅读 8,537评论 2 14
  • 需求开发与需求管理概述 在我看来, 项目管理的日常活动包括了:需求管理、故障管理、版本管理、任务管理。 需求管理贯...
    007明_阳阅读 3,961评论 1 56
  • 项目管理术语英汉对照表2018-7-20 A Abstract Resource 抽象资源 Abstraction...
    007明_阳阅读 6,155评论 0 51
  • 再也不会有冬天了, 再也不会有飘落的雪花了。 我打算把一切团成纸团, 丢进河里, 我想, 再也不会有她了。 在暮春...
    贾寻阅读 400评论 1 4
  • 春天的早上还有点微凉,路过菜市场,一股淡谈的清香直入鼻中,香风扑面。 这不是前两天路过见到欲开的洋槐花吗?才几天,...
    惠雪阅读 323评论 0 1