第5讲 配置管理与变更管理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
配置项标识、跟踪——软件配置项的状态变迁
配置项的状态有三种:“草稿”(Draft)、“正式发布” (Released)和“正在修改”(Changing)。 配置项刚建立时其状态为“草稿”;配置项通过评审(或 审批)后,其状态变为“正式发布”;此后若更改配置项, 必须依照“变更控制流程”执行,其状态变为“正在修 改”。当配置项修改完毕并重新通过评审(或审批)时, 其状态又变为“正式发布”,如此循环。
来越重视软件配置的管理工作。
7
5.1 软件项目配置管理概念
软件配置管理作为支撑平台
8
5.1 软件项目配置管理概念
实例:软件项目开发管理的新需求
你在一家小公司做软件工程师,开始的时候,你只有一个 人,配了 2个助手。你们研究了一种算法(例如:图象压 缩、数据加密等),编写了一个实现模块。有一天老板看 到了你的演示,认为很有市场潜力,可以结合进公司正在 给某行业用户正在准备开发的系统中,成为该系统的核心 技术或一个别人没有的卖点。
27
用户文档
文档
开发文档
管理文档
5.2 软件项目配置管理过程
文档的生成阶段
阶段 文档 可行性研究报告 项目开发计划 软件需求说明 数据要求说明 概要设计说明 详细设计说明 可行性研究与 计划 需求分 析 设 计 代码编 写 测 试 运行与维 护
测试计划
用户手册 操作手册 测试分析报告 开发进度月报 项目开发总结 维护修改建议
与软件的第 1版、第 2版相比,你的项目管理有什 么不同?
11
5.1 软件项目配置管理概念
实例:软件项目开发管理的新需求-3
随着这个产品的演变,项目发生了四个变化: ① 系统的复杂性发生了很大变化; ② 用于开发该系统的项目环境发生了很大变化; ③ 在不同的项目生命周期内,项目控制本身的要求和力度发 生了很大变化; ④ 由于组织的变化,管理流程、人员、方式发生了很大变化。
产品库
29
5.2 软件项目配置管理过程
配置管理环境建立——受控操作
配置库是集中控制的文件库,提供对所存储文件的版本控制。 从受控库导出的文件自动被锁定直到文件重新被导入,一个版本号自 动与新版本文件相关联。
下一周,你的队伍增加到14(你的老板准备就此豪赌一把 了),与你 3个人的小组不同的是,公司从其他部门为你 配备了系统分析师,还有文档编制员、测试员。你的核心 模块已经被大量的用户功能所包装,成为一个行业应用系 统,并开始给用户试用,这是你的系统的第一版。
9
5.1 软件项目配置管理概念
实例:软件项目开发管理的新需求-1
前二类变化要求项目的组织和管理适应系统扩展 的需要,后二种变化则要求项目管理具有适应性 和灵活性。
12
Leabharlann Baidu
5.1 软件项目配置管理概念
软件配置管理概念
软件配置管理(Software Configuration Management,SCM) 是对产品进行标志、存储和控制,以维护其完整 性、可追溯性以及正确性,它为软件开发提供了 一套管理办法和活动原则。 SCM提供了结构化的,有序化的,产品化的管理 软件工程的方法。它涵盖了软件生命周期的所有 领域并影响所有数据和过程。
5.1 软件项目配置管理概念
软件领域引入配置的原因-3
随着软件团队人员的增加,软件版本不断变化, 开发时间的紧迫以及多平台开发环境的使用,使 得软件开发面临越来越多的问题。
解决这些问题的唯一途径是加强管理,配置管理 是有效管理变更的手段,它是软件开发管理的核 心。
软件配置管理是软件项目运作的一个支撑平台, 这种支撑贯穿着几乎软件的整个生命周期。人们越
13
5.1 软件项目配置管理概念
软件配置管理的目的
它是一种标识、组织和控制修改的技术,目的是 记录软件产品的演化过程
确保软件开发者在软件生命周期中的各个阶 段都能得到精确的产品配置。
最终保证软件产品的完整性、一致性、追朔 性、可控性 使错误达到最小并最有效地提高生产效率。
14
5.1 软件项目配置管理概念
在管理过程中产生的文档,例如各种计划、状态报 告等等,这些文档虽然不是产品的组成部分,但是 值得保存。 每个配置项的主要属性有:名称、标识符、文件状态、版 本、作者、日期等。
所有配置项都被保存在配置库里,确保不会混淆、丢失; 配置项及其历史记录反映了软件的演化过程。
21
5.1 软件项目配置管理概念
软件配置管理的目标
SCM活动的目标是为了: ①标识变更;
②控制变更;
③确保变更正确地实现;
④向其他有关的人员报告变更。
在软件工程过程中产生的所有信息项(文档、报 告、程序、表格、数据)构成了软件配置。
15
5.1 软件项目配置管理概念
软件配置管理的主要功能
版本管理 变更管理
其它(过程管理)
5.2 软件项目配置管理过程
5.3 配置管理组织与实施
项目 初始 项目 计划 项目 执行控制 项目 结束
跟踪控制
配置管理
3
5.1 软件项目配置管理概念
配置的概念来自硬件,例如,计算机系统的CPU、磁盘 以及外设配置等等 配置管理(Configuration management)是指用于控 制系统一系列变化的学科。 通过一系列技术,方法和手段来维护产品的历史,鉴别 和定位产品独有的版本,并在产品的开发和发布阶段控 制变化… 通过有序管理和减少重复性工作,配置管理保证了生产 的质量和效率。
用户文档 ——软件开发人员需为用户了解软件的使用、操作和
维护提供详细的资料。
26
5.2 软件项目配置管理过程
文档分类
用户手册 操作手册 维护修改建议 软件需求(规格)说明书 软件需求(规格)说明书 数据要求说明书 概要设计说明书 详细设计说明书 可行性研究报告 项目开发计划 项目开发计划 测试计划 测试报告 开发进度月报 开发总结报告
5
5.1 软件项目配置管理概念
软件领域引入配置的原因-2
② 人员流动,交接工作不彻底造成软件关键部件遗 失; ③ 已修复的Bug在新版本中出现 ④ 找不到某个文件的历史版本; ⑤ 无法重新编译某个历史版本,使维护工作十分困 难; ⑥ 因协同开发或者异地开发,版本变更混乱导致整 个项目失败;… …
6
3个月后,公司决定把系统升级到第二版,除增加了许多 新的功能外,公司决定支持多平台,同时,为了提高系统 的性能和效率,准备采用第三方厂家的中间件,取代自己 做的接口。第一版的缺陷修改,也要反映到第二版中。 第2版经过2个多月的开发,最终推向了市场。公司的这个 产品不但被用户所欢迎,也被一家大公司所看中(就像 IBM 收购了 Lotus 和 Rational 、 Informix 、 Visio 一样), 你们的产品,正好可以填补这家大公司产品线的空缺,你 所在的公司被这家公司买去了。
28
5.2 软件项目配置管理过程
配置管理环境建立
建立配置管理库,简称配置库。软件配置管理库是用来存 储所有基线配置项及相关文件的等内容的系统,是在软件 产品的整个生存期中建立和维护软件产品完整性的主要手 段。 开发库 受控库
开发周期的某个阶段,存放与该阶段工作有关 系的信息;开发库也称为工作空间 开发周期的某个阶段结束时,存放做为该阶段 产品及其相关的信息,配置管理对其中的信息进行管理,也称配 置库 存放最终产品的软件库
4
5.1 软件项目配置管理概念
软件领域引入配置的原因
随着计算机软件的发展,软件开发已由最初的 “程序设计阶段”——〉“软件系统阶段”——〉 “软件工程阶段”。 软件的复杂性日益增大,软件项目开发中可能会 遇到如下问题: ① 开发人员使用错误的版本修改程序 ② 开发人员未经授权修改代码或文档,或修改的结 果不能及时反映到各个相关部分;
用户以及计算机之间,起到了多种的桥梁作用。软件开发人员在软件 生命的各个阶段中,以文档作为前阶段工作成果的体现和后阶段工作 的依据,这个作用是显而易见的。
管理文档或项目文档 ——软件开发过程中软件开发人员需
制定一些工作计划或工作报告,这些计划和报告都要提供给管理人员, 并得到必要的支持。管理人员则可通过这些文档了解软件开发项目安 排、进度、资源使用和成果等。
17
内容提要
5.1 软件项目配置管理概念
5.2 软件项目配置管理过程
5.3 配置管理组织与实施
项目 初始
项目 计划
项目 执行控制
项目 结束
跟踪控制
配置管理
18
5.2 软件项目配置管理过程
软件项目配置的基本活动 配置标识 配置管理过程
① 配置项标识、跟踪 ② 配置管理环境建立 ③ 基线变更管理
软件配置管理作为软件开发过程的必要环节和软件开发 管理的基础,支持和控制着整个软件生命周期。 若要有效地实施软件配置管理,除了培养软件开发者的 管理意识外,更重要的是使用优秀的软件配置管理工具。
16
5.1 软件项目配置管理概念
配置管理给项目组带来的好处-2
造成项目周期拖 延或费用超过预 算的原因很多, 但没有好的阶段 和里程碑划分无 疑是其中最重要 的原因。
变更控制
状态统计
④ 基线审核 ⑤ 配置状态统计 ⑥ 配置管理计划
配置审计 配置管理过程围绕配置管理的5项活动进行
19
5.2 软件项目配置管理过程
配置项标识、跟踪——配置项的概念
软件配置项(Software Configuration Item,SCI)——凡 是纳入配置管理范畴的工作成果统称为配置项。 以下包含了所有在软件过程中产生的信息的工作 成果总称为软件配置项:
作业布置情况与上节回顾
1
第5讲 配置管理与变更管理
涉及教材内容: 第12章 配置管理; 概要:
1. 什么是软件配置项?软件配置项主要有几类?分 别包含哪些内容? 2. 基线的概念是什么? 3. 在实施阶段配置管理主要包括哪些活动? 4. 目前配置管理工具分为哪几个级别?
2
内容提要
5.1 软件项目配置管理概念
① 计算机程序(源代码和可执行程序) ② 描述计算机程序的文档(针对技术开发者和用户) ③ 数据(包含在程序内部或外部)。 ④ 项目管理的有关文件、信息记录等。
软件配置管理的对象就是软件配置项(SCI)。
20
5.2 软件项目配置管理过程
配置项标识、跟踪——软件配置项的类型及属性
配置项主要有两大类: 属于产品组成部分的工作成果,即软件产品,例如 源代码、需求文档、设计文档、测试用例等等。
在引入软件配置管理工具进行管理后,这些配置项都应以 一定的目录结构保存在配置库中。
最终可根据要求将配置项组合生成适用于不同应用环境的 正确的软件产品评估版本。
24
5.2 软件项目配置管理过程
配置项标识、跟踪——配置项的拆分例子
设计规格说明书 数据设计描述
总体结构设计描述 模块设计描述 界面设计描述
10
5.1 软件项目配置管理概念
实例:软件项目开发管理的新需求-2
公司为你的项目组派来了产品经理、项目经理。公司决定 这个产品的测试,由公司总部独立的测试部门承担。同时, 公司决定把项目组增加到50人,其中有20多人并不在你所 在的城市。在新公司里,产品管理、项目管理、测试、质 量等等,都与你过去的环境和做法不同,特别不同的是, 公司准备开发的第 3版系统与公司原有的产品要进行融合, 使他们看上去是一家出来的不同的兄弟和姐妹。
22
5.2 软件项目配置管理过程
配置项标识、跟踪——软件部件分解图
配置标识就是查询、识别和确定配置管理对象。
配置管理对象呈现为一种 层次结构,因此,为了标 识配置管理的对象,我们 需要对软件系统进行分解。
23
5.2 软件项目配置管理过程
配置项标识、跟踪——配置项标识的主要任务
将软件项目中需要进行控制的部分拆分成软件配置项。 对所有配置项都应按照相关规定建立唯一的标识。 建立相互间的对应关系,进行系统的跟踪和版本控制,以 确保项目过程中的产品与需求和规格的要求相一致。
界面设计1 界面设计2 ……
(某医疗网站)需求规格SCI
辅助功能.doc 性能.doc 产品目录.doc
医务管理.doc
医疗专业区.doc 首页.doc
对象描述
25
5.2 软件项目配置管理过程
最基本的配置项管理——文档
软件产品比较容易标识,而文档相对比较复杂。 开发文档 ——文档在软件开发人员、软件管理人员、维护人员、
相关文档
最新文档