启明车载 王莉莉 Wanglili_qm@faw.com.cn 配 置 管 理 启明车载 王莉莉 Wanglili_qm@faw.com.cn
内容 1.为什么需要配置管理 2.配置管理概念 3.配置库结构 4.配置管理流程 5.配置工具使用 6.Q&A
为什么需要配置管理
为什么需要配置管理 忽视软件配置管理可能导致的混乱现象: 标识混乱 版本混乱 不能协同工作 已经解决的缺陷过后又出现错误 找不到最新修改了的源程序 找不到编程序的人
为什么需要配置管理 最直接的好处是工作成果的所有版本都被保留着,不会丢失也不会被覆盖。 间接的好处是,项目的所有工作成果被完整地保留下来,这是企业的知识财富,可以被人们很好地分享利用。而且减少了人员辞职造成的损失,企业老板可以放心很多了。 因为如果没有配置管理的话,人走了,即使他把成果刻录成光盘交给接收者,别人也搞不清楚那些成果的演化过程。
配置管理概念
配置管理 配置管理(CM-Configuration Management)是贯穿项目生命周期全过程的质量保证活动的一个重要方面,目的在于保持工作产品在其生命周期全过程中的一致性、完整性和可追溯性;主要活动包括:标识配置项、定义基线、建立配置库和基线库控制配置项和基线的变更、做好配置项和基线的定期备份和异地备份、定期进行配置审计、及时报告配置状态。
角色&职责 项目经理负责配置管理工作的监控。在大型项目中上述职责由项目经理指定的技术主管承担。 配置控制委员会(CCB)确保所有CCB控制下的基线变更经过充分的评价和分类;确保只有经过批准的变更才能得到实施。 PPQA进行日常配置审计;基线发布前的审计,完成《基线发布审计报告》。 配置管理员制定《配置管理计划》,进行配置库管理,完成《配置状态记录》和《基线发布报告》。
工作产品&产品 工作产品:由定义、维护和使用一个软件过程所产生的任何成果物,包括过程描述、计划、规程、计算机程序和相关文档,无论是否打算将它们交给客户或最终用户。 产品:可交付给客户或最终用户的工作产品的子集称作产品。
配置项 凡是纳入配置管理范畴的工作成果统称为配置项 (Configuration Item,CI)。 配置项主要有两大类: 属于产品组成部分的工作成果,例如源代码、需求文档、设计文档、测试用例等等 在管理过程中产生的文档例如各种计划、监控报告等等,这些文档虽然不是产品的组成部分,但是值得保存。
基线 基线(Baseline) ,由一个或若干个通过评审并得到确认的配置项组成,是项目进入下一个生命周期阶段的出发点(基准)。 基线中的配置项被“冻结”了,不能再被任何人随意修改(参见变更控制)。 其作用是使连续的工作在这些点上断开,以便于检查和肯定阶段成果。
配置库结构
配置库结构 三个配置库 基线库:在软件开发的某个阶段工作结束时,将工作产品存入或将有关的信息存入。对库内工作产品的读写和修改应该加以控制。 开发库:存放开发过程中需要保留的各种信息,供项目组成员使用。 基线库:在软件开发的某个阶段工作结束时,将工作产品存入或将有关的信息存入。对库内工作产品的读写和修改应该加以控制。 产品库:在开发的软件产品完成系统测试之后,作为最终产品存入库内,等待交付用户或现场安装。对库内工作产品也应该加以控制。
权限设定 为每个项目成员分配操作权限。一般地,项目成员拥有Add, Check in, Check out, Download等权限,但是不要轻易拥有“删除”权限。 基线库只有配置管理员有增加、修改、删除的权限,其它人员只有读的权限。
配置库结构目录
备份配置库 由配置管理员定期对配置库进行备份,也可以公司统一指定人员进行备份。
配置管理的流程
配置管理的流程
配置管理的流程 1、制定配置管理计划 2、创建配置库 3、版本控制 4、变更控制 5、配置审计 6、状态报告
配置管理计划 在项目策划阶段,配置管理员根据项目负责人提交的项目开发计划,编写配置管理计划。 配置管理计划的目标是规划整个项目的配置管理活动,尤其是重要的比如发布、基线管理等问题。
配置管理计划的主要内容包括: 人员及职责 用于配置管理的软硬件资源、 配置库结构 权限设定 文档版本管理计划 基线计划 产品发布计划 配置库备份计划 配置管理计划经SCCB讨论,SCCB负责人审批后,方可入库并实施。
2.创建配置库 配置管理员创建配置库,并且至少创建配置库的所有第一级目录。 配置管理员为每个项目成员分配操作权限。
变更控制 变更控制是通过对变更请求(Change Request,简称CR)进行分类、追踪和管理的过程来实现的。 变更的起源有两种:功能变更和缺陷修补。功能变更是为了增加或者删除某些功能。缺陷修补则是对已存在的缺陷进行修补。 对变更进行控制的机构为CCB。CCB要定期召开会议,对近期所产生的变更请求进行分析、整理,并做出决定。而且要遵循一定的变更机制。
变更控制流程 下面是一个典型的变更机制
版本控制 为什么配置项会有不同的版本 软件因纠错/改进/完善/扩充会导致同一配置项有多个版本 此外,在同时从事多项目开发时,同一配置项的不同版本可能应用于不同的项目 软件产品投入使用以后,经过一段时间运行提出了变更的要求,需要做较大的修正或纠错,增强功能或提高性能。
版本标识 一般比较常用的是号码版本标识 V1.0 V1.10 V1.1a V1.1b V1.1.1 V1.20 V2.0 V2.1 V2.2
配置项版本号规则 配置项的版本号与配置项的状态紧密相关: 1.处于“中间产品”状态的配置项的版本号格式为:0.YZ YZ数字范围为01-99。 随着中间产品的不断完善,“YZ”的取值应递增。“YZ”的初值和 增幅由用户自己把握。
配置项版本号规则 X为主版本号,取值范围为1-9。Y为次版本号,取值范围为1-9。 配置项第一次“正式发布”时,版本号为1.0。 如果配置项的版本升级幅度比较小,一般只增大Y值,X值保持不变。只有当配置项版本升级幅度比较大时,才允许增大X值。
配置审计 配置审计的目的就是在软件开发生命周期中,为了保证软件基线的完整性,软件基线库的正确性与完备性,以及验证配置管理活动与配置管理规程和计划的符合性,力图发现和报告软件配置管理工作中的缺陷,并跟踪对缺陷的解决情况,需要定期的对配置管理活动进行审计。
配置审计 可能参与审计的人员包括:项目经理,负责该项目的质量保证人员,配置管理员。 职责如下: 项目经理:对于审计中发现的软件工程缺陷,采取必要的纠正措施。 QA:负责监督配置审计工作的实施情况。 配置管理员 :负责审计工作准备和审计实施,以及跟踪解决审计发现的问题直到问题关闭。编写审计报告,保存在项目开发库中。
配置审计流程 按照配置管理计划中的审计计划执行对配置管理的审计。 每次审计由参与审计的人员生成“配置审计报告”,并向可能受到审计影响的人员(SCM,SQA,项目经理)报告审计结果。配置审计报告包括在审计中发现的问题/缺陷对应的改进措施。 审计人员负责跟踪审计的行动中问题的改进执行情况直到结束。
配置状态报告 报告配置状态的目的是向项目所有成员提供基 线内容和状态、基线变更信息,也是实现资源 共享的前提。此外,在项目生命周期中通过对 配置项的变更数据统计分析,有利于评估项目 风险,有效控制项目的执行。 报告的方式可以多种多样,如Email,但应该把 握好时机:变更请求被批准时;基线版本发生 变化时;项目组任何需要的时候。
配置工具使用
VSS操作 VSS Options 基本设置 设置工作路径 Check Out/Check In Add/Delete /Destroy 创建文件/增加文件 查看历史记录和比较 Lable 其它操作以参见部门的“VSS使用指南”
Q & A
谢 谢!