第七章 软件项目配置管理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7
软件配置管理(SCM)概述
指一套管理软件开发和软件维护以及各种 中间软件产品的方法和规则。 ---- 记录软件产品的演化过程。 确保软件开发者在软件生命周期中的各个 阶段都能得到精确的产品配置。 最终保证软件产品的完整性、一致性、追 朔性、可控性。

8
软件配置管理(SCM)概述
主要思想和具体内容在于版本控制,
第七章 软件项目配置管理
1
前言
软件项目开发遇到如下问题怎么办? 开发人员使用错误的版本修改程序 开发人员未经授权修改代码或文档,或修改的结果 不能及时反映到各个相关部分; 人员流动交接不彻底造成软件关键部件遗失; 已修复的Bug在新版本中出现; 找不到某个文件的历史版本; 无法重新编译某个历史版本; 因协同开发中,或者异地开发,版本变更混乱导 致整个项目失败; … …
基线计划;交付计划;备份计划;配 置审计和评审;变更管理等。
配置控制委员会
CCB审批该计划;
20
配置管理计划过程
参加项目 规划 规划配置 管理任务 形成配置 管理计划 评审配置 计划
计划入 库
21
配置管理计划大纲
基线定义 版本控制
定义变更控制过程
变更委员会的管理
变更控制纪录
版本控制注意功能是追踪变更
9
配置管理的作用
•软件项目的位置 管理 ----
•Who am I?
•Why am I here
•Why am I who I am?
2013-5-19 10
•Where do I belong?
给出程序的状态 给出一个程序的最新版本 处理并发更新申请 取消一个程序变更 防止未授权的变更或删除 提供需求变更申请和程序变更之间的可跟踪性 取消一个需求变更 显示相关变更 收集当前系统源代码和文档信息,以便恢复
1
28
基线(Base Line)
(IEEE)基线:已经正式通过复审和
批准的某规约或产品,它因此可作为 进一步开发的基础,并且只能通过正 式的变化控制过程改变。 基线由一组配置项组成,这些配置项 构成了一个相对稳定的逻辑实体。 基线中配置项不能随意修改。基线通 常对应开发过程中的里程碑
4
配置管理的重要目标
有序、及时和正确的处理对软件配
置项的变更,实现此目标需要 CCB的有效管理。
5
本章要点
配置管理的概念 2 配置管理计划 3 配置标识与建立基线 4 变更管理 5 版本管理 6 配置审核 7 配置状态报告
1
6
配置管理概念

PMBOK(项目管理的知识体系)
按配置项类型分类建库;
适用于通用的应用软件开发;
按任务建库;
适用于专业软件研发组织;
57
受控操作
包括建立控制点和建立报告与审查制度 变更控制要素:同步控制和存取控制

Check in
评审/验证
受控环境
Check out 变更控制 流程
新版本
58
配置库
有效的版本管理
更好的解决并发控制的问题
38
配置项标识
配置项被唯一的标识
ID
一个项目可能有多种配置项标识定义
(如文档类、代码类、工具类);也 可以统一一个规范定义。
39
配置项标识示例
项目名称_所属阶段_产品名称_版本标
识 版本标识以V开头 版本号分三部分:主版本号、次版 本号、内部版本号
40
配置项标识示例
公司:3个字符 项目:最长10个字符 类型:最长5个字符 编号:最长8位数字 版本号:V m.n
59
变更控制
Configuration
Control Board (CCB) 是配置项变更的监管组织;其任务是 对建议的配置项更改做出评价、审批 以及监督已批准变更的实施。
利用配置库实现变更控制;

动态库(开发库、程序员库、工作库)
开发周期的某个阶段,存放与该阶段工作有关系
的信息

受控库(主库、系统库)
开发周期的某个阶段结束时,存放做为该阶段产
品及其相关的信息,配置管理对其中的信息进行 管理,也称配置库

静态库(软件仓库、软件产品库)
存放最终产品的软件库
备份库
56
配置库的建库模式
2
软件项目进行中面临的一个主要问题
是持续不断的变化
有效的项目管理能够控制变化,以最
有效的手段应对变化,不断命中移动的 手段对产品及其开发
过程和生命周期进行控制、规范的一 系列措施和过程。 对变更加以控制 PMBOK ISO9000 CMM的重要组成部 分
QTD-School–RM–SRS-v1.0
41
配置项的跟踪
2013-5-19
42 42
配置项跟踪过程示例
2013-5-19
43 43
配置项跟踪过程示例
2013-5-19
44 44
建立配置管理方案的步骤
组建配置管理方案构造小组; 2 对目标机构进行了解评估; 3 配置管理工具及其提供商评估; 4 制定实施计划; 5 定义配置管理流程; 6 试验项目的实施; 7 全面实施;
有关的工作产品。 包括:交付给顾客的产品;制定内部 工作产品;采办的产品、工具;其他 用于创建和描述这些工作的实体;
34
配置项标识
识别产品的结构、产品的构件及其类
型,并为其分配唯一的标识符。提供 存取控制。同时找出需要跟踪管理的 中间产品,并维护其关系。
35
配置项识别





1 识别 过程描述;需求;设计;测试计划和规程;测 试结果;代码;工具;接口描述; 2 分配唯一的标识号 3 确定每个配置项的重要特征 4 确定进入配置管理的时间 5 确定每个配置项的拥有者的责任 6 填写配置项管理表 7 审批配置项管理表
内部人员沟通协调;
50
项目变更的分类
按性质:重大变更、重要变更、一般变
更; 按迫切性:紧急变更、非紧急变更; 按发生的领域和阶段:进度变更、成本 变更、设计变更、范围变更; 按发生的空间:内部环境变更、外部环 境变更;
51
由于项目渐进明细的特性;
项目变更产生的原因
常见变更原因:

11
配置管理主要功能
软件配置管理的主要活动
配置识别; 变更控制; 状态报告; 配置审计;
12
配置项
产品配置项是指一个产品在其生命周
期各个阶段所产生的各种形式和各种 版本的文档、计算机程序、部件以及 数据的集合。该集合中每一个元素成 为该产品的一个配置项。 Configuration Item 属于该产品组成部分的工作成果; 属于项目管理和机构支撑过程域产
1
45
创建基线并发行基线
构造基线或发行基线的步骤
获得CCB授权; 2 创建构造基线或发行基线; 3 形成文件; 4 使基线可用;
1
46
本章要点
配置管理的概念 2 配置管理计划 3 配置标识与建立基线 4 变更管理 5 版本管理 6 配置审核 7 配置状态报告
13
软件配置项
软件配置项(Software
Configuration Item) 是项目定义其 受控于软件配置管理的项。每个项目 的配置项也许会不同。 一个软件配置项是一个特定的、可文 档化的工作产品集,这些工作产品是 生存期中产生或者使用的。
14
常见配置项示例
项目计划书 系统规格说明书
测试
系统提交
测试计划、过程、数据
可运行系统
31
基线的作用
把开发阶段的工作划分更明确,使连
续的工作在这些点上断开,以便于检 查和肯定阶段成果。
属性
名称;标识符;版本;日期; Release
Build
32
基本的活动
配置标识
变更控制
状态统计
审核
33
识别配置项
识别将置于配置管理之下的配置项和

26
制定配置管理计划的步骤
9 制定基线计划 10 制定配置库备份计划 11 制定变更控制规程 申请人提出变更;配置管理员受理;配 置管理员评估影响;CCB审批;实施变 更;CCB审批变更结果; 12 制定审批计划

27
本章要点
配置管理的概念 2 配置管理计划 3 配置标识与建立基线 4 变更管理 5 版本管理 6 配置审核 7 配置状态报告
1
47
变更管理
变更是信息系统的最普遍的特点 配置管理的主要任务是对变更加以有
效控制和管理,防止软件在多变的情 况下失控。
48
项目变更的不可避免性
用户 开发人员 无序变更可能导致:
基准失效;项目干系人冲突;资源
浪费;项目执行情况混乱;
49
软件项目变更的复杂性
规模、版本; 牵延性;
29
基线
基线提供了软件生存期中各个开发阶
段的一个特定点 一个(些)配置项形成并通过审核,即 形成基线 基线标志开发过程一个阶段的结束和 里程碑 基线修改需要执行正式的程序
30
软件开发各个阶段基线图示
系统工程 系统规格说明 软件需求规格说明 需求分析
软件设计
程序编写
软件设计说明
源代码
36
配置项标识、跟踪
将软件项目中需要进行控制的部分拆
分成基本单位。因为项目中要生成很 多的过程文件。 建立唯一的标识。 建立相互间的对应关系,进行系统的 跟踪和版本控制,以确保项目过程中 的产品与需求和规格的要求相一致。
37
配置项拆分示例
设计规格说明书
a.数据设计描述 b. 总体结构设计描述 c. 模块设计描述 d. 界面设计描述 界面设计1 界面设计2,。。。。 e. 对象描述
产品范围定义过失或疏忽;
项目范围定义过失或疏忽;
增值变更;
应对风险紧急计划或回避计划;
执行中与基准不一致导致;
外部事件;
52
变更管理的基本原则

建立项目基准、变更流程和变更控制委员会; 基准管理; 建立变更控制流程; 明确组织分工; 完整体现变更的影响; 妥善保存变更产生的文档,确保其完整、 及时、准确、清晰,适当时候引入配置管 理工具;
53
变更管理的任务
分析变更;
必要性;经济、技术的可行性;
记录和追踪变更;
采取措施保证变更在受控状态下进行;
54
配置库
Configuration 作用:
Library
记录与配置相关的信息;
利用库中信息评价变更后果;
从库中提取配置管理过程的管理信
息;
55
关于软件配置库的概念
但不是配置管理的全部。
17
配置项版本
需求规格
需求规格 1.0
需求规格 1.1
需求规格 1.2
18
本章要点
配置管理的概念 2 配置管理计划 3 配置标识与建立基线 4 变更管理 5 版本管理 6 配置审核 7 配置状态报告
1
19
配置管理计划
配置管理软硬件资源;配置项计划;
配置管理系统包括提交建议的变更的过程,评审
和批准建议的变更的跟踪系统,为授权和控制变 更规定的批准级别,和确认批准的变更的方法。

CMMI即(能力成熟度模型集成)
运用配置标识、配置控制、配置状态统计和配置
审计,建立和维护工作产品的完整性。 制定配置管理计划;识别配置项;建立配置管理 系统;创建或发行基线;跟踪变更;控制变更; 建立配置管理记录;执行配置审核;版本控制;
1 建立并维护配置管理的组织方针 2 确定配置管理需要使用的资源 配置管理工具;数据管理工具;归档和 复制工具;数据库程序; 3 分配责任 配置管理人员的责任 4 培训计划

25
制定配置管理计划的步骤
5 确定配置管理的项目干系人 建立基线;审查配置管理系统报告和解 决问题;评估配置项变更的影响;进行 配置审核; 6 制定识别配置项的原则 7 制定配置项管理表 标号;名称;特征;进入时间; 8 确定配置管理的软硬件资源
软件需求规格说明书
设计规格说明书
源代码清单
测试规格说明书
15
版本
软件的每一个版本都是源代码、文
档及数据以及相关的系统环境的一 个收集,且各个版本都可能由不同 的变种组成。
16
版本控制与配置管理
版本控制是CM的关键部分
版本控制不等同于配置管理
版本控制是软件配置管理重要部分,
22 22
配置管理计划模板
1引言 2软件配置管理 软件配置管理组织 软件配置管理责任 与软件过程生命周期的关系 3软件配置管理活动 配置标识 项目基线 配置库

23
配置管理计划模板(续)
软件配置管理活动
配置控制程序
配置状态报告
配置审核
4支持
24
制定配置管理计划的步骤
相关文档
最新文档