当前位置:文档之家› 项目配置管理、开发环境搭建

项目配置管理、开发环境搭建


定义类 设计类
需求分析及定义阶段完成后得到的工 作产品 设计阶段结束后得到的工作产品
编码类 测试类
编码及单元测试后得到的工作产品 系统测试完成后得到的工作产品
维护类
软件配置管理
进入维护阶段以后产生的工作产品
以上任何需要变更的软件配置项
11
2011年7月2日 SEI of ECNU 版权所有©
配置项

时机

各个阶段里程碑结束前 产品交付或产品正式发行前 在产品维护工作中定期地进行

分类



功能配置审计:验证配置项是否符合需求(原始需求,变更需求)的定义,评估 测试方法、开发过程、报告、其他工程和设计文档是否完成 物理配置审计:确保所有的变更版本都在,所有要求的软件项都在。即验证配置 项的物理特性(命名、变更、模板等)与期望的一致性 基线审计:构成基线的配置项是否符合规格标准和需求,基线完整性检查
1.
2. 3.
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
10
配置项

1. 2. 3. 4.
配置项的选取
SEI的CMMI原则 可能被两个或者更多小组共享的工作产品 会随着时间而变更的工作产品,其变更原因可能是发生错误或者变更需求 多个相互依赖的工作产品,其中一个发生改变将会影响到其它的工作产品 对项目重要性极高的工作产品
6.
已经正式通过复核与批准的规约或工作产品 是一种“冻结”状态 交付给客户的基线成为一个Release,内部开发用的基线为一个Build 属性 通过正式评审过程建立; 存在于基线库,对基线的变更接受更高权限的控制; 基线是进一步开发和修改的基准和出发点; 进入基线前,不对变化进行管理; 进入基线后,对变化进行有效管理; 不会变化的内容不纳入基线,变化对其它无影响的也不纳入基线

与软件的演变相关,例如,为某个客户建立的特定版本,需要在相关配置 项的基础上管理分支
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
22
变更控制
变更控制流程
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
23
变更控制


变更申请单 CCB成员

21
变更控制

说明

结合人的规程和自动化工具,提供一个变化控制的机制 建立一套控制软件修改的机制,保证生产符合质量标准的软件和保证 每个版本的软件包含所有必需的元素,使同一版本中的各个元素可以 正常工作 基线的变更控制


目的


分类

一个软件版本的开发周期内对基线配置项的变更

软件版本的变更控制
5
配置管理



讨论可控的软件变化
配置管理的主要内容
配置项 变更控制 配置审计* 配置状态发布*
配置管理 通用知识

配置管理计划 配置管理工具Subversion
配置管理 计划
支持 依据
配置管理 工具
实施配置管理三要素
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©

步骤
1. 2. 3. 4. 5. 6.
确定参与构建的全部资源的正确版本 基于1的内容建立一个干净的仅用于构建目的的专用工作空间 执行构建过程并对构建过程进行审计 对构建和审计过程中产生的导出文件进行版本控制 为已经受控的导出文件建立基线 生成软件发布介质
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
4
可控的软件变更


配置管理
管理软件的变化,采用配置项标识、控制、状态统计和审计等 手段,对各类工作产品的内容、版本、变更和发布进行控制


目的
在于在软件生命周期中建立和维护软件产品的完整性,保证团队 的有效协作
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
确定版本发布 维护工作空间
构建系统
变更工作空间
建立发布版本
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
9
配置项

1. 2. 3. 4. 5.
软件配置项
状态需要受控的软件系统的组成部分 每个配置项应至少标识出下列属性 Who:作者,谁创建的 When:时间,什么时间创建的时间 Why:原因,为什么创建此配置项 Where:当前状态,当前的存储位置及状态 Version:版本号,如何组装到正确的版本中 三个分支 私有分支:开发人员的私有开发空间 集成分支:开发团队的公共空间 公共分支:整个软件开发组织的公共空间
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
15
配置项
基线示例
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
16
配置项

建立基线的优势

重现性 可追溯性 版本隔离
开发前确定基线的“配置” 基线批准前,根据“配置”检查配置项是否齐备 对各个配置项,确认其版本的正确性 对每个配置项建立基线标志
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©25ຫໍສະໝຸດ 配置审计审计内容



按照《配置管理计划》,审计已创建的配置项、基线,以确保在配置中 包含的配置项的正确版本 检查每个配置项的名称、版本标识、状态标识和注释是否按照规定书写 如果变更,按照《变更申请表》,检查《配置管理计划》以及相关部分 是否做了同步修改,是否有尚未处理的变更请求,是否存在不按相关规 程做出的变更 输出《配置管理审计报告》
6
配置管理的内容
配置标识
配置控制
状态报告 配置审计
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
7
配置管理内容
开始
跟 踪 变和 更维 控护 制配 配置 置项 项状 及态 基, 线控 变制 更和 情维 况护 基 线
标识配置项, 制定配置管理计划
执 行 配 置 审 计
建立配置管理系统, 配置项入库
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
18
配置控制

版本控制

对配置项的不同版本进行标识和跟踪的过程������


目的:对软件开发过程中配置项的发展过程提供有效的追踪 手段,保证在需要时可以找到旧版本,避免文件的丢失、修 改的丢失和互相覆盖 对版本的控制,实际上就是对配置项各种操作的控制
配置项格式:项目名称(-子系统名称)版本号配置项文档名称
项目名称:采用立项后的项目名称的英文缩写表示 子系统名称:采用约定的子系统名称的英文缩写表示 版本号:采取两位,形式为0.0, 配置项文档名称:采用汉字表示 某项目iVPN-SER3.1版本的产品需求规格说明书可标识为: iVPN-SER V3.1产品需求规格说明书


配置项的级别
已基线化得配置项:已完成该配置项的审核和批准,并且成为创建或修改其它配 置项的输入 受管理和受控的配置项:已提交审核、但还未批准通过的配置项 受控的配置项:已置于版本控制、但项目组不能直接进行改动的配置项,例如标 准



配置项标识
为了识别产品的结构、产品的构件及其类型而为其分配的唯一的标识符
『华东师范大学』
课程名称: 软件开发实践
Software Development Practice
课程类型: 实践课
第五讲:
Lect_05: 软件配置管理 SCM
主讲:
日期:
软件学院 孙海英 讲师
2011.07.02
为什么需要配置管理?
版本库
工作副本
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
13
配置项

版本树 由版本依次连接形成,每个结点代表一个版本,根结点是 初始版本,叶结点代表最新的版本
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
14
配置项

基线
1. 2. 3. 4.
5.
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
27
配置审计
序号 101 102 103 104 105 106 107 108 检查项 审计参照
在项目变更控制中要求的变更都已经做了吗? 获批的变更申请单,变更后的基线或产品发布申请单 每个受影响的附加修改已经完成了吗? 正式评审已经评价了技术正确性 遵循了标识变更、记录变更、报告变更的变 更控制流程了吗? 说明了变更日期、变更者和变更内容了吗? 配置库中所有相关的配置项都已正确地做了 更新吗? 配置库中当前基线处所有的配置项已完备了 吗 发布基线活动与相应基线产品之间保持一致 了吗? 评审报告-缺陷验证表 评审报告-工作产品评审情况记录表 变更申请单、变更控制规程、变更产品前的变更记录 变更申请单、变更产品 变更申请单、变更产品(文档)前的变更记录 配置管理计划 基线发布申请、基线状态报告、工作产品(时间和版本)

检入检出 版本的分支和合并 版本的历史纪录
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
19
配置控制
版本访问和同步控制的流程
软件配置管理
2011年7月2日 SEI of ECNU 版权所有©
相关主题