热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[项目管理]项目管理之配置管理

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

一、什么是配置管理

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

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

 


二、配置管理的基本要求

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

    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应用开发精解》已出版,欢迎购买阅读。

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

谢谢。

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


推荐阅读
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • 本文将详细介绍如何在Android Studio中导入和编译OSChina Android 2.4版本的源码。包括所需软件、下载地址以及一些注意事项。 ... [详细]
  • 四、作为您的 VCS 的 GitHub ... [详细]
  • 短视频app源码,Android开发底部滑出菜单首先依赖三方库implementationandroidx.appcompat:appcompat:1.2.0im ... [详细]
  • 本文介绍了Java编程语言的基础知识,包括其历史背景、主要特性以及如何安装和配置JDK。此外,还详细讲解了如何编写和运行第一个Java程序,并简要介绍了Eclipse集成开发环境的安装和使用。 ... [详细]
  • 兆芯X86 CPU架构的演进与现状(国产CPU系列)
    本文详细介绍了兆芯X86 CPU架构的发展历程,从公司成立背景到关键技术授权,再到具体芯片架构的演进,全面解析了兆芯在国产CPU领域的贡献与挑战。 ... [详细]
  • malloc 是 C 语言中的一个标准库函数,全称为 memory allocation,即动态内存分配。它用于在程序运行时申请一块指定大小的连续内存区域,并返回该区域的起始地址。当无法预先确定内存的具体位置时,可以通过 malloc 动态分配内存。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 从零开始编译Linux系统:第16章 全新起点
    本章将详细介绍如何从零开始编译一套完整的Linux系统,涵盖关键组件如glibc库的介绍及其重要性。通过本文,读者将了解从源代码构建Linux系统的全过程。 ... [详细]
  • SvpplyTable: 实现可扩展和可折叠的菜单动画
    SvpplyTable 是一个示例项目,旨在实现类似 Svpply 应用程序中的可扩展和可折叠的菜单动画效果。该项目托管在 GitHub 上,地址为 https://github.com/liuminqian/SvpplyTable。 ... [详细]
  • 包含phppdoerrorcode的词条 ... [详细]
  • 单片微机原理P3:80C51外部拓展系统
      外部拓展其实是个相对来说很好玩的章节,可以真正开始用单片机写程序了,比较重要的是外部存储器拓展,81C55拓展,矩阵键盘,动态显示,DAC和ADC。0.IO接口电路概念与存 ... [详细]
  • 字符串学习时间:1.5W(“W”周,下同)知识点checkliststrlen()函数的返回值是什么类型的?字 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
author-avatar
小娟2502895183
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有