最新软件配置管理PPT
合集下载
软件配置管理详解

●SP1.2 Establish a Configuration Management System( 建立配置管理系统),建立和维护配置管理和变更管 理系统,控制工作产品的完整性。
● SP1.3 Create or Release Baselines(建立或发布基线) ,创建或者发布基线,供内部使用或提交给客户。
● 借助于配置管理系统的配置控制、变更管理和配置 审计功能,使基线变更和工作产品发布得到监督和 控制。
CM(一)
● SG 1 Establish Baselines(建立基线),建立已识别工 作产品的基线。
●SP1.1 Identify Configuration Items(识别配置项),标 识将要置于配置管理之下的配置项、组件和相关的工 作产品。
常用的基线:
● 需求基线(SRS_BL):在需求分析阶段结束后,《用户需求说明书 》、《软件需求规格说明书》经过了评审。
● 计划基线(PLN_BL):详细计划经过评审。 ● 设计基线(DESIN_BL):在概要设计和详细设计阶段结束后,设计
阶段工作产品经过了评审。 ● 实现基线(CODE_BL):代码和集成测试计划、用例、报告等工作
该项目(这个过程进行过近一千四百万次修改)的一个经验总结。
配置管理定义 Leon Presser在1975年成立了一家名为SoftTool的公司,开发了配置管理工具:Change and Configuration Control(CCC),这是最
早的配置管理工具之一。国外已经有30多年历史的软件配置管理,在国内的发展却是在21世纪这几 使相关组和个人及时了解软件基准的状态和内容。
概念——配置库
存放配置项的数据库,常用两种形式:按配置项类型分类建库 和按任务建库。
● SP1.3 Create or Release Baselines(建立或发布基线) ,创建或者发布基线,供内部使用或提交给客户。
● 借助于配置管理系统的配置控制、变更管理和配置 审计功能,使基线变更和工作产品发布得到监督和 控制。
CM(一)
● SG 1 Establish Baselines(建立基线),建立已识别工 作产品的基线。
●SP1.1 Identify Configuration Items(识别配置项),标 识将要置于配置管理之下的配置项、组件和相关的工 作产品。
常用的基线:
● 需求基线(SRS_BL):在需求分析阶段结束后,《用户需求说明书 》、《软件需求规格说明书》经过了评审。
● 计划基线(PLN_BL):详细计划经过评审。 ● 设计基线(DESIN_BL):在概要设计和详细设计阶段结束后,设计
阶段工作产品经过了评审。 ● 实现基线(CODE_BL):代码和集成测试计划、用例、报告等工作
该项目(这个过程进行过近一千四百万次修改)的一个经验总结。
配置管理定义 Leon Presser在1975年成立了一家名为SoftTool的公司,开发了配置管理工具:Change and Configuration Control(CCC),这是最
早的配置管理工具之一。国外已经有30多年历史的软件配置管理,在国内的发展却是在21世纪这几 使相关组和个人及时了解软件基准的状态和内容。
概念——配置库
存放配置项的数据库,常用两种形式:按配置项类型分类建库 和按任务建库。
配置管理

配置标识
配置控制 配置状态发布 配置审计
配置控制
配置控制包括配置项在完成基线化后所产生的变更的评估、协调、批准
、驳回以及实现过程。
建立CCB
在项目开始时,由项目负责人根据项目的情况确定CCB,并记录在配置
管理计划中
CCB组长也可以根据更改请求的情况事件驱动地召集CCB会议 如有必要,可以设立不同级别的CCB,他们具有不同的授权,对不同层 次的变更申请进行控制 根据修改的影响范围,CCB召开相应的评估会议,并邀请相关人员参加
配置管理常用术语
配置
配置项
基线 版本 版本标示
版本的概念
版本是表示一个配置项具有一组定义的功能的一种标识。随着功能的增
加,修改或删除,配置项的版本随之演变。
版本以版本号进行标识。
配置管理常用术语
配置
配置项
基线 版本 版本标示
版本标识的概念
软件版本以xx.yy.zz.pp的形式标识。
产品的完整性和可溯性的过程
配置管理常用术语
配置
配置项
基线 版本 版本标示
配置的概念
“配置”是在技术文档中明确说明并最终组成软件产品的功能或物理
属性。因此“配置”包括了即将受控的所有产品特性,及其内容及相关
文档,软件版本,变更文档,软件运行的支持数据,以及其他一切保证 软件一致性的组成要素。
配置管理
课程目标
掌握配置管理的基本概念
掌握配置管理和变更控制的基本流程
课程内容
软件配置管理介绍 软件配置管理活动 软件配置库管理 答疑&交流
配置管理的概念
配置管理是通过对在软件生命周期的不同的时间点上的软件配置进行标识
软件配置管理

一个应用程序模块 经历过的多个状态 的存储
1.3
保留文件修改轨迹 增量存储方式
1.2 1.1 1.0
软件配置管理的功能
产 品 版 本 管 理
是对应用程序系 统在版本级的管 理 正式版
1.3 1.2 1.1 1.0 File 1 1.4 1.3 1.2 1.1 1.0 File 3
Beta 1 Version Labels
Apex
Check Out Change Requests and Software
Errors
PureCoverage
ClearCase
preVue
ClearDDTS
与资源管理器的无缝集成
与开发工具的无缝集成
被集成到自然的工 作环境中
ClearCase 的市场地位
“在软件配置管理工具市场上,Rational公 在软件配置管理工具市场上,Rational公 司连续两年居于领先地位。 1997年软件配 司连续两年居于领先地位。在1997年软件配 置管理工具的收入中,Rational占据了18. 置管理工具的收入中,Rational占据了18.4% 。”
1.2 1.1 1.0 File 2
软件配置管理的功能
建 立 管 理
允许为建立程序 有可重用的定义
自动构造程序 自动构造程序 自动回溯机制 自动回溯机制 保证程序建立一致性 保证程序建立一致性
软件配置管理的功能
变 更 管 理
对变更严格的加以控制和管 保持修改信息, 理,保持修改信息,并使其 精确、清晰。 精确、清晰。 提出变更申请及方案 对变更进行评价 存取控制 同步控制
VOB
ClearCase 版本控制
主支 2
Checkout Edit Check-in
1.3
保留文件修改轨迹 增量存储方式
1.2 1.1 1.0
软件配置管理的功能
产 品 版 本 管 理
是对应用程序系 统在版本级的管 理 正式版
1.3 1.2 1.1 1.0 File 1 1.4 1.3 1.2 1.1 1.0 File 3
Beta 1 Version Labels
Apex
Check Out Change Requests and Software
Errors
PureCoverage
ClearCase
preVue
ClearDDTS
与资源管理器的无缝集成
与开发工具的无缝集成
被集成到自然的工 作环境中
ClearCase 的市场地位
“在软件配置管理工具市场上,Rational公 在软件配置管理工具市场上,Rational公 司连续两年居于领先地位。 1997年软件配 司连续两年居于领先地位。在1997年软件配 置管理工具的收入中,Rational占据了18. 置管理工具的收入中,Rational占据了18.4% 。”
1.2 1.1 1.0 File 2
软件配置管理的功能
建 立 管 理
允许为建立程序 有可重用的定义
自动构造程序 自动构造程序 自动回溯机制 自动回溯机制 保证程序建立一致性 保证程序建立一致性
软件配置管理的功能
变 更 管 理
对变更严格的加以控制和管 保持修改信息, 理,保持修改信息,并使其 精确、清晰。 精确、清晰。 提出变更申请及方案 对变更进行评价 存取控制 同步控制
VOB
ClearCase 版本控制
主支 2
Checkout Edit Check-in
第13章 软件配置管理

第27页
三、测试的层次与内容
1.软件测试的层次
软件测试工作包括两个层次:
测试工作的组织与管理,包括制定测试方法与规范、控 制测试进度、管理测试资源。 测试工作的实施,包括编制符合标准的测试文档、研制 测试环境、与开发组织协作实现各阶段的测试活动。
第28页
2.软件测试的内容 软件测试工作可以分为4个方面:
建立控制项; 重构任何修订版的某一项或者某一文件; 利用加锁技术防止覆盖; 当一个修订版时要求输入变更描述; 提供比较任意两个修订版的使用工具,采用增量存储方式; 提供对修订版历史和锁定状态的报告功能;
提供归并功能;
允许在任何时候、任何版本; 控制权限的设置;
渐进模型的建立;
提供各种控制报告。
第18页
实施软件配置管理,主要包括以下活动:
制定配置管理计划;
确定配置标识;
版本管理; 变更控制; 系统整合; 配置审核。
第11页
一、制定软件配置计划
制定配置管理计划的过程就是确定软件配置管理的解决方
案;
项目经理和软件配置管理委员会(SCCB)根据项目的开 发计划确定各个里程碑和开发策略;
一、软件配置管理概述
软件配置管理(SCM)是一组针对软件产品的追踪和控制
活动,它贯穿于项目生命周期的始终,并代表着软件产品接
受各项评审。 IEEE对SCM的论述如下:“软件配置管理由适用于所有 软件开发项目的最佳工程实践组成,无论是采用分阶段开发, 还是采用快速原型进行开发,甚至包括对现有软件产品进行
统,其测试工作涉及大量的人力和物力,有效的测试工作
管理是保证有效测试工作的必要前提。 3)测试环境的建立:设计环境、实施环境和管理环境 。
软件项目管理-配置管理

缺点:需要投入一定的时间和资源进行工具的学习和实施可能会增加软件开发的 成本。
比较:不同的配置管理工具在功能、易用性、开放性、可扩展性等方面各有优劣 需要根据实际需求进行选择。
结论:选择适合的配置管理工具是软件项目管理中非常重要的一环可以提高软件 的质量和开发效率。
PRT SIX
配置管理定义:在软件开发过程中对项目的配置项进行控制、状态记录和变更管理的 过程。
配置管理目的:确保软件产品的完整性和可追溯性提高软件质量降低开发成本。
配置管理实践:实施配置管理计划进行版本控制、基线管理、变更控制等操作确保软 件开发的顺利进行。
配置管理工具:使用配置管理工具进行配置项的管理、跟踪和审计如Git、SVN等版本 控制系统。
配置管理在软件项目管理中的重要 性
配置管理在项目管理中的实践案例
配置项:软件项目中需要管理的对象如代码、文档、数据等 版本控制:对配置项的变更进行记录、追踪和管理的过程 目的:确保配置项的一致性和可追溯性避免出现混乱和冲突 常用工具:Git、SVN等版本控制系统
配置项的变更请求提交 变更请求的评估和审批 配置项的变更实施 变更后的验证和审核
配置项审计:确保配置项的准确性和完整性防止 错误和遗漏
添加标题
添加标题
配置管理的实践经验分享
添加标题
添加标题
配置管理未来的发展趋势和挑战
配置管理流程:从需求分析、设计、编码、测试到部署的完整流程 配置管理工具:如Git、SVN等版本控制工具的使用 配置管理最佳实践:如分支管理、代码审查、自动化部署等 案例分析:如某公司如何通过配置管理提高软件质量与开发效率
配置管理工具:用于支持配置管 理的软件工具如版本控制系统、 配置管理系统等。
标识:识别和 管理配置项的
比较:不同的配置管理工具在功能、易用性、开放性、可扩展性等方面各有优劣 需要根据实际需求进行选择。
结论:选择适合的配置管理工具是软件项目管理中非常重要的一环可以提高软件 的质量和开发效率。
PRT SIX
配置管理定义:在软件开发过程中对项目的配置项进行控制、状态记录和变更管理的 过程。
配置管理目的:确保软件产品的完整性和可追溯性提高软件质量降低开发成本。
配置管理实践:实施配置管理计划进行版本控制、基线管理、变更控制等操作确保软 件开发的顺利进行。
配置管理工具:使用配置管理工具进行配置项的管理、跟踪和审计如Git、SVN等版本 控制系统。
配置管理在软件项目管理中的重要 性
配置管理在项目管理中的实践案例
配置项:软件项目中需要管理的对象如代码、文档、数据等 版本控制:对配置项的变更进行记录、追踪和管理的过程 目的:确保配置项的一致性和可追溯性避免出现混乱和冲突 常用工具:Git、SVN等版本控制系统
配置项的变更请求提交 变更请求的评估和审批 配置项的变更实施 变更后的验证和审核
配置项审计:确保配置项的准确性和完整性防止 错误和遗漏
添加标题
添加标题
配置管理的实践经验分享
添加标题
添加标题
配置管理未来的发展趋势和挑战
配置管理流程:从需求分析、设计、编码、测试到部署的完整流程 配置管理工具:如Git、SVN等版本控制工具的使用 配置管理最佳实践:如分支管理、代码审查、自动化部署等 案例分析:如某公司如何通过配置管理提高软件质量与开发效率
配置管理工具:用于支持配置管 理的软件工具如版本控制系统、 配置管理系统等。
标识:识别和 管理配置项的
第八章软件项目配置管理

▪ 系统地控制对处于配置管理下的各种软 件制品的修改和更新
▪ 维护软件开发过程中的各种制品的一致 性和可跟踪性
SCБайду номын сангаас 的目标
❖ 目标1: 软件配置管理活动被定义和计划 ❖ 目标2: 软件开发过程中的制品被识别、控制和管理 ❖ 目标3: 对于处于配置管理下的软件制品的修改被控制 ❖ 目标4: 与软件制品相关的项目组和成员应该被通知制品的目前
与软件的第1版、第2版相比,你的项目管理有什么不同?
随着这个产品的演变,项目发生了四个变化: (1)系统的复杂性发生了很大变化; (2) 用于开发该系统的项目环境发生了很大变化; (3)在不同的项目生命周期内,项目控制本身的要求和力度发生了很
大变化; (4)由于组织的变化,管理流程、人员、方式发生了很大变化。
✓ 公司为你的项目组派来了产品经理、项目经理。公司决定这个产品的
测试,由公司总部独立的测试部门承担。同时,公司决定把项目组增 加到50人,其中有20多人并不在你所在的城市。在新公司里,产品管 理、项目管理、测试、质量等等,都与你过去的环境和做法不同,特 别不同的是,公司准备开发的第3版系统与公司原有的产品要进行融 合,使他们看上去是一家出来的不同的兄弟和姐妹。
CMM2的配置管理活动最主要的内容是:建立软件基线库,该库 存储开发的软件基线。通过软件配置管理的更改控制和配置审核 功能,系统地控制基线变更和由软件基线库生成的软件产品版本。
要达到 CMM 规定的 SCM要求所需具备的能力
1. 具有对软件基线产品有管理权限的组织已经建立, 例如:软件配置管理委员会;
因此,从某种意义上讲,SCM本质上是变更的管理。 SCM使软件产品和过程的变更变为受控的和可预见的,它要求并在适当 的工具支持下能够做到这样几点: (1)谁做的变更? (2)软件有什么变更? (3)什么时间做的变更? (4)为何要变更?
▪ 维护软件开发过程中的各种制品的一致 性和可跟踪性
SCБайду номын сангаас 的目标
❖ 目标1: 软件配置管理活动被定义和计划 ❖ 目标2: 软件开发过程中的制品被识别、控制和管理 ❖ 目标3: 对于处于配置管理下的软件制品的修改被控制 ❖ 目标4: 与软件制品相关的项目组和成员应该被通知制品的目前
与软件的第1版、第2版相比,你的项目管理有什么不同?
随着这个产品的演变,项目发生了四个变化: (1)系统的复杂性发生了很大变化; (2) 用于开发该系统的项目环境发生了很大变化; (3)在不同的项目生命周期内,项目控制本身的要求和力度发生了很
大变化; (4)由于组织的变化,管理流程、人员、方式发生了很大变化。
✓ 公司为你的项目组派来了产品经理、项目经理。公司决定这个产品的
测试,由公司总部独立的测试部门承担。同时,公司决定把项目组增 加到50人,其中有20多人并不在你所在的城市。在新公司里,产品管 理、项目管理、测试、质量等等,都与你过去的环境和做法不同,特 别不同的是,公司准备开发的第3版系统与公司原有的产品要进行融 合,使他们看上去是一家出来的不同的兄弟和姐妹。
CMM2的配置管理活动最主要的内容是:建立软件基线库,该库 存储开发的软件基线。通过软件配置管理的更改控制和配置审核 功能,系统地控制基线变更和由软件基线库生成的软件产品版本。
要达到 CMM 规定的 SCM要求所需具备的能力
1. 具有对软件基线产品有管理权限的组织已经建立, 例如:软件配置管理委员会;
因此,从某种意义上讲,SCM本质上是变更的管理。 SCM使软件产品和过程的变更变为受控的和可预见的,它要求并在适当 的工具支持下能够做到这样几点: (1)谁做的变更? (2)软件有什么变更? (3)什么时间做的变更? (4)为何要变更?
配置管理培训课程

当工作产品完成之后,签入后,按公司版本约定打标识
; 如果需要再修改,则签出;
修改完成后签入,三级或四级版本号加一,按打上面版
本约定打标识 依次类推,直到该配臵项完全定稿。
配置库建议使用原则(续)
配臵管理员按如下原则使用配臵库:
拥有配臵库的全部权限,建立配臵库并分配操作权限
;
由开发人员或系统分析人员提出变更需求; 由CCB(变更控制委员会)或项目经理审核并决定是否批准;
配臵管理员根据CCB或项目经理 的决定开放相应的权限,并形成
记录备案; 变更申请人员执行相应的变更。
第八章 软件配置管理
CMMI对应实践 配臵管理基本概念 配臵管理活动
产品发布流程
把评审通过的配臵项根据评审后确定的版本,打上版
本标识;
根据审计过的版本控制表生成基线,从开发区把配臵
项移到受控区;之后,锁定该版本的工作产品;
负责配臵库的日常维护及备份;
发布时定期或事件驱动从配臵库生成配臵状态报告。
配置库建议使用原则(续)
测试工程师按如下原则使用配臵库:
测试工程除了对测试区域及公共区域有权限外
CM(二)
SG 2 Track and Control Changes(跟踪并控制变更)
,跟踪和控制配臵管理下工作产品的变更。
SP2.1 Track Change Requests(跟踪变更申请),变更
申请不只是关于新的或变更的工作产品,还包括工作 产品中的错误及缺陷。 SP2.2 Control Configuration Items(控制配臵项),主 要是控制配臵项的变更,一般会形成配臵项的修订历 史和基线的存档两种工作产品。
第八章 软件配置管理
; 如果需要再修改,则签出;
修改完成后签入,三级或四级版本号加一,按打上面版
本约定打标识 依次类推,直到该配臵项完全定稿。
配置库建议使用原则(续)
配臵管理员按如下原则使用配臵库:
拥有配臵库的全部权限,建立配臵库并分配操作权限
;
由开发人员或系统分析人员提出变更需求; 由CCB(变更控制委员会)或项目经理审核并决定是否批准;
配臵管理员根据CCB或项目经理 的决定开放相应的权限,并形成
记录备案; 变更申请人员执行相应的变更。
第八章 软件配置管理
CMMI对应实践 配臵管理基本概念 配臵管理活动
产品发布流程
把评审通过的配臵项根据评审后确定的版本,打上版
本标识;
根据审计过的版本控制表生成基线,从开发区把配臵
项移到受控区;之后,锁定该版本的工作产品;
负责配臵库的日常维护及备份;
发布时定期或事件驱动从配臵库生成配臵状态报告。
配置库建议使用原则(续)
测试工程师按如下原则使用配臵库:
测试工程除了对测试区域及公共区域有权限外
CM(二)
SG 2 Track and Control Changes(跟踪并控制变更)
,跟踪和控制配臵管理下工作产品的变更。
SP2.1 Track Change Requests(跟踪变更申请),变更
申请不只是关于新的或变更的工作产品,还包括工作 产品中的错误及缺陷。 SP2.2 Control Configuration Items(控制配臵项),主 要是控制配臵项的变更,一般会形成配臵项的修订历 史和基线的存档两种工作产品。
第八章 软件配置管理
软件项目管理(SoftwareProjectManagement)精品PPT课件

项目策划任务集
1. 确定项目范围; 2. 确定可行性; 3. 分析风险; 4. 确定所需的资源:
a. 确定需要的人力资源; b. 确定可复用的软件资源; c. 标识环境资源。
项目策划任务集
5. 估算成本和工作量:
a. 分解问题; b. 使用规模、功能点、过程任务或用例等方
法进行两种以上的估算; c. 调和不同的估算。
软件项目管理中的4 P’s
Pressman认为有效的软件项目管理集中在4个 P上,即:
人员(People)— “人的因素”是成功软件项目中
最为重要的因素;
产品(Product)— 产品的目标与范围,成本与开
发约束是划分项目任务,制定项目进度的依据;
过程(Process)— 软件过程提供了完成特定软件
软件项目管理的特点
软件项目管理与其它的工程项目管理相比有其自身 的独特性:
软件产品是无形的; 软件产品是易变的; 软件开发过程不标准; 很多软件项目都是“一次性”项目。 软件项目不同于其它普通的工程项目,它属于智力密集型
活动,其中,人员、抽象的文档和程序代码是管理的主要 对象。
因此,在实践中,软件工程管理人员不能照抄照搬, 应做到因地制宜,确保管理行为具有针对性。
传统估算技术:
任务分解与成果估算; 规模(如F.P)估算。
经验模型(参数估算); 自动化估算工具。
估算精确度
估算精确度取决于:
计划者对产品规模估计的准确程度; 把产品规模转换成人的工作量/人力成本的准确
度; 对软件团队能力的正确估计; 软件产品需求与环境的稳定性。
任务分解
软件范围 描述
软件项目管理从一组统称为项目策划(project
planning)的活动开始。 项目策划的目标是建立一个能够对复杂的技术项目进 行控制、跟踪和监测的有效策略,这个策略是在对资源 、成本和进度做出合理估算的基础上做出的。 有效的项目管理取决于全面的项目策划。在项目之初 拟定的计划,应该成为整个项目的驱动器。
软件工程配置管理

SP 1.1
典型工作产品:
a)
标识配置项
所标识的配置项。
SP 1.1
标识配置项
子实践:
a)
–
基于文档化的准则选择配置项和构成配置项的工作产 品。 在适当的工作产品层次上选择配置项的准则的例子有: 由两个或多个组使用的工作产品。 因错误或者是因需求更改而经常要更改的工作产 品。 在一个工作产品中的更改会导致在另一个中强制 作相应更改的两个互相依赖的工作产品。 项目的关键工作产品。
有系统的控制和监督,这是通过配置管理的配置控制、更改 管理和配置审核职能完成的。 – 配置管理过程域不仅可用于项目的配置管理,也可用于组织 的工作产品(如,标准、规程和复用库)的配置管理。 – 配置管理关注工作产品(包括交付系统)的管理和技术方面 的严格控制。 – 此过程域包括执行配置管理职能的实践,适用于置于配置管 理之下的所有工作产品。
SP1.2 建立配置管理系统
子实践:
–
–
控制级可以从非正式控制到正式的配置控制, 前者是对开发期间的配置项更改所作的简单跟 踪,后者使用只有通过正式配置管理过程的更 改控制规程才能进行更改的基线。 引入多级控制的例子,包括:
a) b)
c)
项目生存周期不同时段需要不同的控制级(如,随着产品的 成熟采取更严格的控制)。 不同类型的系统需要不同的控制级(例如,纯软件系统与含 软硬件的系统)。 为满足配置项私密性和保密性需要不同的控制级。
a)
SP1.2 建立配置管理系统
子实践:
a)
建立配置管理的多级控制机制。 – 通常基于项目目标、风险和/或资源选择控制等级。 控制级可因项目生存周期、所开发系统的类型和特定 的项目需求而异。 – 控制级的例子,包括:
软件配置管理培训ppt课件

❖ 如果将它删除,在将来需要它的时候,还要 找历史上的源代码,现从源代码开始编译、 打包,那么会耗费时间。
精选ppt
27
安装包如何保存?
❖ 放进版本库不是明智之举。对于安装包,很 多历史版本,比如送去测试用的安装包,需 要定期清理,否则会占用大量的磁盘空间。 安装包可以保存在共享目录下,该目录可以 在局域网共享,除此之外,还要考虑适当的 备份。
产生变体的原因:
❖ 因支持不同操作系统而产生的变体。 ❖ 因客户制定而成的变体。 ❖ 因不同的功能集而产生变体。
精选ppt
41
用分支支持变体
❖ 假定,基于标准版1.0版,开发
1.0—A版。这是为客户A专门制 主线
定的一个版本,里边增加了了一
个只有客户A才需要的功能:点
1.0版
石成金。
1.0—A
❖ 假定,在推出标准版2.0版后,客
星结构(图2),也就是
设立一个公共储区,作为
参照物和枢纽,大家统一
从这个公共点取代码,的
轩昂程序改完后,都把自
己改的那部分全部传到公
共存储区,别人再从那里
取用。
精选ppt
图1 图2 12
假设两个程序员同时修改同一源代码,会 出现程序覆盖问题。(即后提交的代码B会把 先提交的代码A覆盖)
❖ 监控。阻止同
21
❖ 软件配置管理 ❖ 基本的版本控制 ❖ 系统集成 ❖ 构建管理 ❖ 分支 ❖ 变体 ❖ 三库管理的概念
精选ppt
22
❖ 什么是构建管理
❖ 构建管理分为两部分
❖ 保证构建的可重复性
❖ 如何让构建更快
❖ 安装包有没有必要保存
❖ 安装包如精选何ppt 保存
23
构建管理
精选ppt
27
安装包如何保存?
❖ 放进版本库不是明智之举。对于安装包,很 多历史版本,比如送去测试用的安装包,需 要定期清理,否则会占用大量的磁盘空间。 安装包可以保存在共享目录下,该目录可以 在局域网共享,除此之外,还要考虑适当的 备份。
产生变体的原因:
❖ 因支持不同操作系统而产生的变体。 ❖ 因客户制定而成的变体。 ❖ 因不同的功能集而产生变体。
精选ppt
41
用分支支持变体
❖ 假定,基于标准版1.0版,开发
1.0—A版。这是为客户A专门制 主线
定的一个版本,里边增加了了一
个只有客户A才需要的功能:点
1.0版
石成金。
1.0—A
❖ 假定,在推出标准版2.0版后,客
星结构(图2),也就是
设立一个公共储区,作为
参照物和枢纽,大家统一
从这个公共点取代码,的
轩昂程序改完后,都把自
己改的那部分全部传到公
共存储区,别人再从那里
取用。
精选ppt
图1 图2 12
假设两个程序员同时修改同一源代码,会 出现程序覆盖问题。(即后提交的代码B会把 先提交的代码A覆盖)
❖ 监控。阻止同
21
❖ 软件配置管理 ❖ 基本的版本控制 ❖ 系统集成 ❖ 构建管理 ❖ 分支 ❖ 变体 ❖ 三库管理的概念
精选ppt
22
❖ 什么是构建管理
❖ 构建管理分为两部分
❖ 保证构建的可重复性
❖ 如何让构建更快
❖ 安装包有没有必要保存
❖ 安装包如精选何ppt 保存
23
构建管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件配置管理
2、软件配置管理的任务
——制定软件配置管理计划 ——确定配置标识规则 ——实施变更控制 ——报告配置状态 ——进行配置审核 ——进行版本管理和发行管理
软件配置管理
表2《ISO/IEC 12207: 1995信息技术—软件生存周期过程》 关于软件配置管理过程的规定
活动
任务
解释
1.实施过程 2.配置标识
软件配置管理
软件配置管理
内容提要
1. 软件配置管理的概念 2. 软件配置管理计划 3. 软件配置标识 4. 变更管理 5. 版本管理 6. 配置审核 7. 配置状态报告 8. 软件配置管理工具
软件配置管理
一、软件配置管理的概念
(一)软件配置项的概念
1、软件配置项:配置管理的对象称为软件配置项。
表1 软件配置项的分类、特征和举例
作产品 软件配置管理
2、软件配置
软件配置是一个软件产品在生存期各个阶段的不同形 式(记录特定信息的不同媒体)和不同版本的程序、 文档及相关数据的集合,或者说是配置项的集合。
初始系统
机型1 机型2
操作系统1 操作系统2
用户1 用户2
机型n
图1 不同用户有自己的工作环境
软件配置管理
用户1
FC
AB
DE
方针处理、储存、包装和交付
的主拷贝
软件配置管理
3、软件配置管理与软件开发过程 • 两类不同的变更:
– 开发阶段内部发生的变更: – 开发过程解决不了的变更:
• 变更的评估和批准以及变更实施都要由软件配置管 理人员去做。
• 开发过程应纳入配置管理过程的控制之下。
配置管理
阶段 1
阶段 2
阶段 n
开发过程 图4 配置管软理件配与置开管理发过程
——配置管理计划的目的、适应范围、使用要求 ——项目概述 ——项目中需特别关注的配置管理问题和风险 ——软件配置管理严格性要求的等级 ——限制和假设 ——术语 ——参考文件
软件配置管理
2、软件配置管理
——配置管理的组织结构 ——职责和权限 ——指令和方针 ——参照的规程(组织的规程或客户的规程) ——遵循的标准
3、软件配置管理活动
——配置管理活动 ——变更管理和配置控制 ——配置状态说明 ——配置审核 ——接口和子合同方控制
软件配置管理
4、软件配置管理进度安排
——软件配置管理重要事件的顺序 ——软件配置管理各项活动间的依赖关系
5、软件配置管理所需的资源
——采用的工具 ——使用的设备 ——所需的培训 ——对其他人员的要求
开发配置管理计划 制定标识规则
计划描述:配置活动、这些活动的规程、进度、配置 管理组织及与其他组织的关系 计划应形成文件
以控制软件项及其版本 标识内容包括:基线文档、版本基准号、其他
3.配置控制
4.配置状态报告 5.配置评价 6.发行管理和交付
标志并记录变更申请 分析与评价变更 批准(或不期准)申请 实现、验证和发行已变更的软件项 审核跟踪变更 控制并审核受控软件项 编制管理记录和状态报告
用户2
AB G D H E C
图2 面对不同用户产品的配置
软件配置管理
B
C
A
D
H
E F
G
用户1
A B C D E
F
产品1
产品2
用户2
A B C D E
G H
图3 两个产品具有不同的配置
用户1: A、B、C、D、E和F
用户2: A、B、C、D、E和G、H 软件配置管理
(二)软件配置管理
1、什么是软件配置管理
软件配置管理
2、忽视软件配置管理可能导致的混乱现象
– 发错了版本 – 安装后不工作 – 异地不能正常工作 – 已经解决的缺陷过后又出现错误 – 开发人员把产品拿出去出售赢利 – 找不到最新修改了的源程序 – 找不到编程序的人
软件配置管理
二、软件配置管理计划
配置管理计划标准——IEEE 828-1990 1.引言
(1)ISO 9000-3 :1997 配置管理是一个管理学科,它对配置项(包括软件项)的开发和支持生
存期给与技术上的和管理上的指导。配置管理的应用取决于项目的规模、 复杂程度和风险大小。 (2) W.Babich 的解释
软件配置管理能协调软件开发,使混乱减少到最小。软件配置管理是一 种标识、组织和控制修改的技术,目的是最有效的提高生产率。 (3) GB/T 11457 :1995《软件工程术语》国家标准 A.表示和确定系统中配置项的过程,在系统整个生存期内控制这些配置项 的投放和更动,记录并报告配置的状态和更动要求,验证配置项的完整 性和正确性。 B.对下列工作进行技术和行动指导与监督的一套规范: ——对配置项的功能特性和物理特性进行标识和文件编制工作; ——控制这些特性的更动情况; ——记录并报告这些更动进行的处理和实现的状态。
编码及单元测试后得到的工 作产品
系统设计规格说明、程序规格说明、数据 库设计、编码标准、用户界面标准、测试
标准、系统测试计划、用户手册
源代码、目标码、单元测试数据及单元测 试结果
系统测试完成后的工作产品
系统测试数据、系统测试结果、操作手册、 安装手册
进入维护段以后产生的工
以上任何需要变更的软件配置项
确定和保证软件项的功能完整性、 物理完整性
跟踪变更原因、变更授权 以保证重要功能的安全或保密
表明受控项(包括基线)的状态和历史 状态报告应包括变更号、最新版本、发行标识、版本 号及各种版本比较
有效控制软件产品和文档的发行和
交付
包括重要的安全或保密功能的代码和文档应按组织的
在产品的生存期内保存代码、文挡
(三)软件配置管理的意义 1、软件项目的特点
(1)不可见的逻辑实体 (2)软件项目的规模日益庞大和复杂 (3)参与软件项目的人员增加,人员间的沟通渠道数量
按指数倍增。 (4)产品非常容易拷贝 (5)时时处在演化和变更状态。这包括:
——技术 ——业务环境 ——不同用户各有不同的需求 ——需求变更 (6)开发人员的离去有较大的影响
分类
特征
举例
环境类 定义类 设计类 编码类 测试类 维护类
软件开发环境 及 软件维护环境
需求分析及定义阶段完成后 得到的工作产品
编译器、操作系统、编辑器、数据库管理 系统、开发工具(如测试工具)、项目管
理工具、文档编辑工具
需求规格说明书、项目开发计划、设计标 准或设计准则、验收测试计划
设计阶段结束后得到的产品
6、软件配置管理计划的维护
——维护的职责 ——计划更新的条件和审批 ——计划变更的交流和通报
2、软件配置管理的任务
——制定软件配置管理计划 ——确定配置标识规则 ——实施变更控制 ——报告配置状态 ——进行配置审核 ——进行版本管理和发行管理
软件配置管理
表2《ISO/IEC 12207: 1995信息技术—软件生存周期过程》 关于软件配置管理过程的规定
活动
任务
解释
1.实施过程 2.配置标识
软件配置管理
软件配置管理
内容提要
1. 软件配置管理的概念 2. 软件配置管理计划 3. 软件配置标识 4. 变更管理 5. 版本管理 6. 配置审核 7. 配置状态报告 8. 软件配置管理工具
软件配置管理
一、软件配置管理的概念
(一)软件配置项的概念
1、软件配置项:配置管理的对象称为软件配置项。
表1 软件配置项的分类、特征和举例
作产品 软件配置管理
2、软件配置
软件配置是一个软件产品在生存期各个阶段的不同形 式(记录特定信息的不同媒体)和不同版本的程序、 文档及相关数据的集合,或者说是配置项的集合。
初始系统
机型1 机型2
操作系统1 操作系统2
用户1 用户2
机型n
图1 不同用户有自己的工作环境
软件配置管理
用户1
FC
AB
DE
方针处理、储存、包装和交付
的主拷贝
软件配置管理
3、软件配置管理与软件开发过程 • 两类不同的变更:
– 开发阶段内部发生的变更: – 开发过程解决不了的变更:
• 变更的评估和批准以及变更实施都要由软件配置管 理人员去做。
• 开发过程应纳入配置管理过程的控制之下。
配置管理
阶段 1
阶段 2
阶段 n
开发过程 图4 配置管软理件配与置开管理发过程
——配置管理计划的目的、适应范围、使用要求 ——项目概述 ——项目中需特别关注的配置管理问题和风险 ——软件配置管理严格性要求的等级 ——限制和假设 ——术语 ——参考文件
软件配置管理
2、软件配置管理
——配置管理的组织结构 ——职责和权限 ——指令和方针 ——参照的规程(组织的规程或客户的规程) ——遵循的标准
3、软件配置管理活动
——配置管理活动 ——变更管理和配置控制 ——配置状态说明 ——配置审核 ——接口和子合同方控制
软件配置管理
4、软件配置管理进度安排
——软件配置管理重要事件的顺序 ——软件配置管理各项活动间的依赖关系
5、软件配置管理所需的资源
——采用的工具 ——使用的设备 ——所需的培训 ——对其他人员的要求
开发配置管理计划 制定标识规则
计划描述:配置活动、这些活动的规程、进度、配置 管理组织及与其他组织的关系 计划应形成文件
以控制软件项及其版本 标识内容包括:基线文档、版本基准号、其他
3.配置控制
4.配置状态报告 5.配置评价 6.发行管理和交付
标志并记录变更申请 分析与评价变更 批准(或不期准)申请 实现、验证和发行已变更的软件项 审核跟踪变更 控制并审核受控软件项 编制管理记录和状态报告
用户2
AB G D H E C
图2 面对不同用户产品的配置
软件配置管理
B
C
A
D
H
E F
G
用户1
A B C D E
F
产品1
产品2
用户2
A B C D E
G H
图3 两个产品具有不同的配置
用户1: A、B、C、D、E和F
用户2: A、B、C、D、E和G、H 软件配置管理
(二)软件配置管理
1、什么是软件配置管理
软件配置管理
2、忽视软件配置管理可能导致的混乱现象
– 发错了版本 – 安装后不工作 – 异地不能正常工作 – 已经解决的缺陷过后又出现错误 – 开发人员把产品拿出去出售赢利 – 找不到最新修改了的源程序 – 找不到编程序的人
软件配置管理
二、软件配置管理计划
配置管理计划标准——IEEE 828-1990 1.引言
(1)ISO 9000-3 :1997 配置管理是一个管理学科,它对配置项(包括软件项)的开发和支持生
存期给与技术上的和管理上的指导。配置管理的应用取决于项目的规模、 复杂程度和风险大小。 (2) W.Babich 的解释
软件配置管理能协调软件开发,使混乱减少到最小。软件配置管理是一 种标识、组织和控制修改的技术,目的是最有效的提高生产率。 (3) GB/T 11457 :1995《软件工程术语》国家标准 A.表示和确定系统中配置项的过程,在系统整个生存期内控制这些配置项 的投放和更动,记录并报告配置的状态和更动要求,验证配置项的完整 性和正确性。 B.对下列工作进行技术和行动指导与监督的一套规范: ——对配置项的功能特性和物理特性进行标识和文件编制工作; ——控制这些特性的更动情况; ——记录并报告这些更动进行的处理和实现的状态。
编码及单元测试后得到的工 作产品
系统设计规格说明、程序规格说明、数据 库设计、编码标准、用户界面标准、测试
标准、系统测试计划、用户手册
源代码、目标码、单元测试数据及单元测 试结果
系统测试完成后的工作产品
系统测试数据、系统测试结果、操作手册、 安装手册
进入维护段以后产生的工
以上任何需要变更的软件配置项
确定和保证软件项的功能完整性、 物理完整性
跟踪变更原因、变更授权 以保证重要功能的安全或保密
表明受控项(包括基线)的状态和历史 状态报告应包括变更号、最新版本、发行标识、版本 号及各种版本比较
有效控制软件产品和文档的发行和
交付
包括重要的安全或保密功能的代码和文档应按组织的
在产品的生存期内保存代码、文挡
(三)软件配置管理的意义 1、软件项目的特点
(1)不可见的逻辑实体 (2)软件项目的规模日益庞大和复杂 (3)参与软件项目的人员增加,人员间的沟通渠道数量
按指数倍增。 (4)产品非常容易拷贝 (5)时时处在演化和变更状态。这包括:
——技术 ——业务环境 ——不同用户各有不同的需求 ——需求变更 (6)开发人员的离去有较大的影响
分类
特征
举例
环境类 定义类 设计类 编码类 测试类 维护类
软件开发环境 及 软件维护环境
需求分析及定义阶段完成后 得到的工作产品
编译器、操作系统、编辑器、数据库管理 系统、开发工具(如测试工具)、项目管
理工具、文档编辑工具
需求规格说明书、项目开发计划、设计标 准或设计准则、验收测试计划
设计阶段结束后得到的产品
6、软件配置管理计划的维护
——维护的职责 ——计划更新的条件和审批 ——计划变更的交流和通报