一、什么是配置管理

软件配置管理是对软件修改进行标识、组织和控制的技术,用来协调和控制整个过程。是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。

配置管理的主要目标是,建立和维护产品的完整性,有效跟踪和控制配置项的变更,确保项目可以回溯到过去的状态中。

二、配置管理的基本要求

对配置管理的基本要求包括:

 1)有明确的配置管理负责人

 2)配置管理计划被明确实施

 3)明确的命名规则和版本号规则

 4)所有配置项都被明确标识

 5)配置项的状态信息被明确记录

 6)变更请求被有效记录、跟踪和控制

 7)基线有明确的计划

 8)定期备份配置库

三、配置项

配置项是配置管理的对象,配置项可以是一个模块,一个子系统,甚至可以是整个系统。每个项目的配置项的粒度都不同。配置项的粒度由项目的特点所决定,比如,在一个大系统中,组成系统的文件有成千上万,如果以每个文件为单位进行配置管理,将是一件工作量浩大的任务,所以应将整个模块或子系统作为一个配置管理单元(配置项)进行管理。

根据配置项选取标准,一个包含软硬件开发的复杂项目中,其配置项的种类可能包括:

 1)各类技术文档(用户需求说明书,系统需求说明书,系统测试案例等)

 2)各类项目管理文档(项目计划,项目配置管理计划,项目状态报告等)

 3)源代码(使用各种语言编写的源代码,脚本等)

 4)二进制文件(可执行文件,系统安装包,补丁程序(Patch)等)

 5)硬件设备(如嵌入式系统的硬件部分等)

 6)系统环境(如系统的编译环境,运行环境等)

 7)基线(基线本身也是配置项)

四、基线

在配置管理系统中,基线就是一个配置项或一组配置项在其生命周期的不同时间点上通过正式评审而进入正式受控的一种状态,这些配置项构成了一个相对稳定的逻辑实体,而这个过程被称为“基线化”。

每一个基线都是其下一步开发的出发点和参考点。基线只包含配置项的一个版本。一般情况下,基线在指定的里程碑(Milestone)处创建,并与项目中的里程碑保持同步。基线创建后作为后续工作的基础,不可以被修改。对基线中所包含配置项的修改将严格按照变更控制要求的过程进行。在一个软件开发阶段结束时,上一个基线加上增加和修改的基线内容形成下一个基线。

配置项是配置管理的基本单位,但是以配置项为单位进行管理很难维护配置项之间的一致性。为提高管理效率,项目通常会建立基线来将所有相关的配置项集成在一起,并以基线为基础进行有效的配置管理。

五、配置库

配置库用于存取配置项,管理项目成员对各种配置项的访问权限。

配置管理员在项目初期,根据配置管理计划,创建配置库。配置库中包括了动态库、受控库、静态库三个逻辑库,受控级别逐次提高。配置库中虽然包含三种类型的库,但只有受控库属于配置管理的范畴,需要受到严格的配置管理。

六、配置管理工具

项目可以使用以下几种常用的配置管理工具。每种工具都有不同的特点,适合于不同类型的项目。下表简要说明了每种工具的特点,和适用范围。

工具

特点

使用范围

CVS

开源产品;与WinCVS同时使用时,操作比较简单;与其它开发环境的协作性强,如Eclipse提供了直接从开发环境中操作CVS的插件;支持同步修改,有较好的分支和合并功能

源代码,文本文件

SVN

同CVS类似。比CVS速度稍快。

源代码,文本文件,二进制文件

VSS

微软公司产品;交互界面简单易用;采用独占方式管理文件,不支持同步修改;不支持复杂配置管理活动。

源代码,文本文件,二进制文件

ClearCase

RATIONAL公司开发的配置管理工具,可以与WINDOWS资源管理器集成使用,并且还可以与很多开发工具集成在一起使用。

源代码,文本文件,二进制文件

---------------------------------------------------------------------------

http://blog.csdn.net/arui319

《Android应用开发精解》已出版,欢迎购买阅读。

本文可以转载,但是请保留以上作者信息。

谢谢。

---------------------------------------------------------------------------

[项目管理] 项目管理之配置管理相关推荐

  1. 信息系统项目管理师:配置管理

    配置管理指的是在一个系统或软件中对配置项的管理,包括对配置项的定义.存储.跟踪和修改等一系列活动.配置项可以是硬件设备.软件组件.系统设置.网络配置等,配置管理旨在确保在不同时间点或环境下系统或软件的 ...

  2. 信息系统项目管理知识--项目配置管理

    项目配置管理知识思维导图

  3. 软件过程和项目管理(CMMI配置管理)

    软件配置管理: 需求计划承诺等变更最终体现在多人共同创建的源代码.数据.文档中所发生的变化 为避免项目在变更时失控,需要正确控制和管理变更 专用于关注系统地控制项目进行中发声变更的那些部分,由用来识别 ...

  4. 信息系统项目管理师:配置管理和软件文档

    配置管理(Configuration Management)是一种对软件和系统的开发.测试.部署和维护过程进行管理和控制的方法,以确保软件和系统能够满足业务需求.质量标准和安全要求等方面的要求. 配置 ...

  5. 软件项目管理—项目管理基础

    一.项目管理基础 IT 项目失败的原因 主要有两个: 1)IT 项目越来越复杂 2)缺乏合格的IT项目管理人才 不能进行有效的项目管理是导致IT项目失控的直接原因. 结论: 具有扎实IT项目管理理论和 ...

  6. [项目管理-11]:软硬件项目管理 - 项目管理三要素与项目管理模式

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址: 目录 第1章 项目管理质量三要素 第2章 项目管理模式 2.1 理想情况 2.2 成本是自变量 ...

  7. 项目管理-项目管理的工作内容与运作流程

    项目管理工作内容 1.对项目进行前期调查.收集整理相关资料,制定初步的项目可行性研究报告,为决策层提供建议.协同配合制定和申报立项报告材料. 2.对项目进行分析和需求策划. 3.对项目的组成部分或模块 ...

  8. [项目管理] 项目管理之需求管理

    一.需求管理的定义 需求管理是一种用于查找.记录.组织和跟踪系统需求变更的系统化方法. 需求可以定义为:系统必须符合的条件或具备的功能. 需求管理可以定义为:需求管理是一种系统化方法,可用于获取.组织 ...

  9. [项目管理]项目管理中组员婚嫁事件对话

    引言 简单来说,这段对话就是要结婚的成员给项目经理带来的烦恼.其实,结婚本来是个好事情,不管是否和你有关系,毕竟是身边朋友的喜事.但是,因此带来了不快,那可就不好了--怎么突然感觉像是CCTV10的心 ...

  10. 系统集成项目管理——项目管理十大管理过程和知识领域思维导图

最新文章

  1. 图像分割:Python的SLIC超像素分割
  2. html动画怎么隐藏,JQuery操作div隐藏和显示的4种动画
  3. 在制造业大厂当程序员是什么感受?
  4. ios开发 自定义btn_iOS一步步实现一个高度自定义UIButton控件
  5. SpringMVC_1.认识MVC
  6. php正则匹配价格,关于php:Laravel正则表达式验证价格或空
  7. Mysql大数据备份和增量备份及还原
  8. RedisCrawlSpider
  9. LINQ(LINQ to Entities)
  10. 太空战机c语言源码,funcode编写的太空战机
  11. 计算机的发展导致了计算思维的诞生,尔雅电子计算机的诞生(上)
  12. 计算机启动相机代码,如何在win7系统中启动相机
  13. rtx3070显卡什么水平什么档次 RTX3070怎么样
  14. 【资源分享】Undertale(传说之下)简体中文精品整合包
  15. ARM M3小计(一)1~3章。
  16. IT行业里的热门技术和项目分享
  17. Intel体系MMX指令指令说明
  18. 厉害|百度28位离职技术大牛和他们创建的AI公司!
  19. UE4-Post Process Volume各参数的释义
  20. 亚信安全防毒墙网络版 卸载方法

热门文章

  1. winedit 永久试用的办法
  2. 在线读书——孙天泽(嵌入式设计及Linux驱动开发指南——基于ARM9处理器)
  3. 【UI设计No5】LOGO设计
  4. 签证者的武林秘笈(一)—-来自太傻的签证哲学
  5. 安卓手机怎么运行java?如何在Android手机上运行jAVA程序?
  6. SS00011.elasticsearch——|HadoopElasticSearch集中式日志分析系统.v11|——|Elasticsearch.v11|
  7. 链家混三个月底薪_链家面试感想
  8. 模式识别的常用英文总结
  9. 腾讯北大合作的稀疏大模型训练加速方案HET入选国际顶会VLDB
  10. 10个小故事,思考大数据