软件企业配置管理过程
通过规范公司配置管理过程,确保配置工作的合理性和完整性,确保配置工作在项目组中顺利实施,并为项目组提供可靠的数据分析。
应策划配置管理活动,并按策划的结果实施配置管理活动,执行配置审计,跟踪并报告配置项状态,控制和管理配置项的变更。
术语或缩略语 |
解释 |
工作产品 |
泛指由过程产生的任何输出,这些输出可能包括文件、文档、工作记录、源代码,以及产品的一部分如服务、过程、规范、培训等。 |
配置管理 |
简称CM(Configuration Management的缩写),标识、控制和管理变更的一种管理活动。它控制配置项的修改和发行;记录和报告配置项的状态和变更;保证配置项的完整性、一致性和正确性;以及控制配置项的储存、装载和交付。 |
基线 |
是一组经过正式审查并且达成一致的规范或工作产品,是下一阶段工作的基础。对基线的更改必须遵循变更控制规程。 |
配置项 |
简称CI(Configuration Item 的简称),配置管理中受控制的对象被称为配置项,是生命周期中创建的信息,包含程序、数据、文档,分基线配置项和非基线配置项两类。 |
发布(Release) |
在生命周期各阶段结束时,由该阶段向下阶段提交该阶段的阶段产品的过程。 |
配置控制委员会(CCB) |
由项目关键成员组成的工作小组,负责建立、更改基线的设置与发布,负责变更控制。 |
基线变更 |
变更引起新的基线发布称为基线变更。 |
非基线变更 |
除基线变更外的变更称为非基线变更。 |
角色 |
职责 |
组织级CM工程师 |
建立、管理、维护组织标准过程库与经验库、培训库、开发类项目经验库、组织过程改进经验库 |
项目级CM工程师 |
编制配置管理计划并完成计划中各项活动 |
项目经理 |
实施配置审计 审阅配置项状态报告 审批《配置管理计划》,保证配置资源 |
项目组成员 |
依据项目《配置管理计划》完成各活动 |
CCB |
基线建立和基线更改的审批 基线变更申请的审核 |
QA 工程师 |
实施配置审计,检查配置管理过程 |
变更实施人 |
填写《项目变更单》提取配置项 实施对基线、非基线变更涉及配置项的具体修改 |
测试工程师/评审人员 |
对变更进行测试或评审 |
EPG |
建立、管理和维护组织财富库 |
过程改进部 |
分配公司级、项目级的CM工程师 |
- 流程
- 程CM及其他相关活动开始时间
- 主要活动
- 配置人员设置
在项目策划时为项目组分配一个CM工程师。一个CM工程师可以同时兼任多个项目的配置管理工作。
组织财富库的相关责任部门应指定一名组织级CM工程师负责相关配置库的管理。
- 配置策划
CM工程师应在项目策划或相关工作的策划阶段实施配置策划活动,配置策划应依据《项目计划书》或相关活动计划进行,并形成《配置管理计划》,主要内容包括:
- CM根据《过程剪裁指南》确定项目的配置项,记入《配置管理计划_配置库说明》中。
- 内循ND1配置项标识约定:说明本项目或活动中如何标识配置项,以及LABEL与版本的标识约定;
- 约定需要实施的配置管理活动、实施的时间计划以及实施人员。配置管理活动包括库的操作、配置项的变更管理、基线的建立与发布,配置库结构的设立、权限分配与操作管理;
- 约定配置状态的跟踪与报告,以及配置审计工作要求;
- 设立变更控制委员会(CCB),确定CCB组长以及CCB的工作方式。CCB成员包括(*为必选):
a) *项目经理
b) *CM工程师
c) * 高层领导
d) 软件工程组代表:如设计人员、编码人员、测试人员代表
e) QA工程师
f) 其他成员
CCB工作方式通常有:
a) 召开CCB会议;
b) 进行CCB会签,通过邮件或书面方式;
c) CCB组长或授权人直接审批。
《配置管理计划》需要由项目经理审批,并纳入配置库进行受控。
组织级配置管理员按照组织级配置管理要求来策划当年度的配置活动,来形成年度的配置管理计划。
- 实施配置活动
- 开发库:用于存放项目期间处于开发状态的相关文档和代码。以及存放项目组工作期间的相关沟通记录等。(存放数据项)
- 基线库:用于存放经过验证后的基线产品。(存放配置项)
产品库:存放对外发布的产品。项目公用一个产品库。
在《配置管理计划》通过审批后,配置管理员建立配置库,设定权限。在项目执行过程中,如果项目组成员或干系人需要变更权限,由项目经理通知CM分配好权限。
软件项目的配置库内容以及配置项在各个库的流转过程,参见《配置库管理规程》中的有关规定。
- 标识配置项
标识配置项的意义在于保存配置项的所有版本,避免发生版本丢失或混淆等现象,并且可以快速准确地查找到配置项的任何版本。这些标识包括:
- 配置项的标识:
a)文档标识遵循《文档编写规范》;
b)代码标识遵循编码规范或者项目组内部约定。
- Label的标识:遵循《软件产品版本规划与LABEL约定》的规定。
- 版本的标识:遵循《软件产品版本规划与LABEL约定》的规定。
项目组应按约定的标识要求对相关的配置项、产品进行标识,确保配置项得到正确的识别,使其便于管理、检索和使用。
- 基线管理
CM工程师和项目经理根据《项目计划书》及相关计划策划需形成的基线、基线配置项内容与基线建立的时间,并体现在《配置管理计划》的基线计划中。
CM工程师根据“基线计划”创建与维护基线及基线配置项,控制其变更。基线发布时,应遵循以下步骤:
- 项目经理填写《发布申请表》,
- 由CM工程师组织进行配置审计,形成《配置审计表》
- 将审计通过的《配置审计表》和《发布申请表》提交CCB审批
- 审批通过,CM工程师将基线配置项提交到基线库CM工程师以邮件方式发布《配置项状态报告》,通知项目组内成员和相关项目组。
项目可以建立的基线包括:
基线名称 |
简写 |
组成对象 |
需求基线 |
RD |
《用户需求规格说明书》 《软件需求规格说明书》 |
设计基线 |
SD |
《概要设计说明书》、《详细设计说明书》 |
测试基线 |
TEST |
测试通过的版本 |
产品基线 |
PRODUCT |
产品版本、《用户操作手册》、《用户安装手册》 |
项目分为两大类:新开发、升级类项目。新开发类需要需求、设计、测试、产品基线。升级类至少建立需求和产品基线,基线标识遵循《软件产品版本规划与LABEL约定》的规定。
- 配置项状态跟踪
CM工程师应定期进行配置项状态的跟踪,管理配置项并确保配置项的完整以及变更处于受控之中。
由CM工程师根据项目的生命周期策划进行配置项跟踪的频度,并体现在《配置管理计划》中,并按要求跟踪以下内容:
- 配置项当前状态(待建、正常、修改、作废)
- 版本信息
- 变更历史记录
并束CM000_ 配置项跟踪结果填写于《配置项状态报告》,并在每个里程碑结束前向项目经理汇报。
备注:只针对基线中配置项的状态变化发布《配置项状态报告》。
- 配置项变更管理
变更管理是指对已经进入基线库的配置项,因为需求变更、缺陷追踪等引起的变更而实施的控制活动。
配置项的变更管理分为基线变更和非基线变更。基线变更需要由CCB来评估变更请求,并在变更实施后由CCB确认变更的正确性。非基线变更需得到项目经理的评估与批准。变更控制的具体过程详见《变更管理规程》。
- 配置审计
配置审计主要包括基线发布审计与产品发布审计:
审计类型 |
审计方法 |
审计时机 |
执行人 |
基线发布审计 |
功能审计与物理审计 |
基线经过确认准备发布前 |
QA工程师、CM工程师、项目经理 |
产品发布审计 |
物理审计 |
产品(包括正式版本和SP版本的发布)通过验证准备发布前 |
QA工程师、CM工程师 |
日常审计 |
物理审计 |
每周审计一次 |
QA工程师、CM工程师 |
其中,物理审计的内容包括:
- 配置项是否已经提交
- 配置项是否已经进入正确的库和目录
- 发布是否采用正确配置库,正确的配置项和正确版本
- 变更后的配置项是否归并
功能审计的内容包括:
- 配置项内容是否与需求一致
- 产品变更是否完成,变更管理是否已经纳入基线库
- 变更是否经过评审
- 变更是否有记录
配置审计人员根据《配置审计表》的内容实施审计并填写审计的结果,将《配置审计表》提交项目经理审批后入库,配置审计问题计入《项目问题管理表》由CM跟踪解决直至关闭。
- CM活动报告
CM工程师每周编写个人周报,汇报给项目经理。
在项目的里程碑点编写《CM阶段活动报告》,总结每个里程碑阶段的配置工作情况与度量结果,并汇报给项目经理。
- 备份
CM依据《配置管理计划》规定的备份时间对配置库内容进行备份,根据所使用的配置管理工具采取合适的备份方法备份并保存,备份完成后填写《配置库备份记录》。
软件企业配置管理过程相关推荐
- 01配置管理过程指南
为什么80%的码农都做不了架构师?>>> 01配置管理过程指南 1 综述 1.1 前言 本指南的编写,是为了指导软件开发团队对软件过程中的程序.文档等配置项进行明确的.量化的管 ...
- [书目20140322]如何管理软件企业(第2版)
前言 第1章企业管理基本理念 1.1企业的根本目标及其内涵 1.1.1内涵之一:合法经营 1.1.2内涵之二:赚取合理利润 1.1.3内涵之三:整体利益最大化 1.1.4内涵之四:健康长久地发展 1. ...
- 软件企业通常会犯近视和远视两个错误
现在,软件企业存在着"近视"和"远视"两个问题.原因很简单,因为企业决策者的眼力不好,看不清市场的需求在哪!而眼力较好,能看透市场需求的企业,就能获得客户的青睐 ...
- 理想汽车高管解读财报:被认定为软件企业 获增值税退税2.8亿
雷递网 雷建平 5月11日报道 理想汽车(纳斯达克:LI;香港交易所:2015)日前公布财报.财报显示,理想汽车2022年第一季度营收为95.6亿元(15.1亿美元),较2021年第一季度的35.8亿 ...
- 软件企业测试人员的角色与职责
(1)一般的软件机构,测试人员的职责分配应该如下所示(按OA engineer:QA Lead:QA Manager)来划分. (2)但是在国内的中小企业中,测试经理(QA Manager)一般充当的 ...
- 《如何管理软件企业》
"一句话"就是企业的根本目标,是企业所有人员必须遵循的最高指导思想:合法经营,赚取合理利润,使企业整体利益最大 化,并且健康长久地发展.这是我写过的十多本书.数千页文字中最有价值 ...
- 【DEVOPS】传统业务软件企业之痛
本文意在尝试性总结一下传统业务软件企业在软件研发流程中可能遇到的各类问题. 0. 清单 1. 公司背景 2. 不同视角 2.1 产品侧 2.2 开发 2.3 测试 2.4 运维 3. 最后 4. 参考 ...
- CentOS 6.0 图形(图解)安装教程、基本配置、网络配置、软件源配置、安装压...
一.准备安装CentOS 6 1.CentOS简介 CentOS 是甚么? CentOS 是一个基于Red Hat 企业级 Linux 提供的可自由使用的源代码企业级的 Linux 发行版本.每个版本 ...
- CentOS 6.0 图形(图解)安装教程、基本配置、网络配置、软件源配置、安装压缩、语言包
一准备安装CentOS 6 1.CentOS简介 CentOS 是甚么? CentOS 是一个基于Red Hat 企业级 Linux 提供的可自由使用的源代码企业级的 Linux 发行版本.每个版本的 ...
- CentOS 6.0 图形(图解)安装教程、基本配置、网络配置、软件源配置、安装压缩、语言包 一.准备安装CentOS 6
CentOS 6.0 图形(图解)安装教程.基本配置.网络配置.软件源配置.安装压缩.语言包 一.准备安装CentOS 6 1.CentOS简介 CentOS 是甚么? CentOS 是一个基于Red ...
最新文章
- MySQL 批量插入:如何不插入重复数据?
- spring--源码分析
- linux编程实现dns请求,linux – 使用BIND实现辅助DNS服务器的最佳方式
- 离线轻量级大数据平台Spark之MLib机器学习库SVM实例
- php与Git下基于webhook的自动化部署
- oracle protocol=beq 不可用,学习笔记:Oracle数据库坏块 深入研究obj$坏块导致exp/expdp不能执行原因...
- java异常体系_Java 异常体系
- 使用DFA算法,实现敏感词过滤
- 原子结构示意图全部_所有原子结构示意图
- 移动磁盘数据错误循环冗余检查的文件找回方法
- 【Docker】Failed to get D-Bus connection: Operation not permitted解决
- Java| MANIFEST.MF讲解
- 谷歌2014年中国区应届毕业生校园招聘B轮机试第一题——数独问题的解法(C++实现)
- OpenCV中threshold自动阈值,类似matlab中的graythresh
- mac 扩展显示器全屏滑动不一起滑动
- 重t2加权是什么意思_LOL:每周半价恢复,幸好有一款T2等级皮肤撑场面
- 最大帧长和最小帧长详解
- 数字化驱动全价值链卓越运营
- 面向对象---super
- Python数据容器、list列表、tuple元组、str字符串、数据容器(序列)切片、set集合、dict字典、字符串大小比较