IT软件项目配置管理
2016/5/12
上海海事大学计算机系
20
软件项目管理
第8章 IT软件项目配置管理
8.2 软件配置管理基本活动
8.2.1 制定软件配置计划
8.2.2 确定配置标识
8.2.3 版本管理
8.2.4 变更控制
8.2.5 系统整合
8.2.6 状态报告
8.2.7 配置审计
2016/5/12
开发库:存放在开发过程中按照要求生成的各种技术文档、源 代码、可执行代码和使用的数据,为开发人员的活动提供支持 受控库,存放基线产品即项目转阶段经评审通过的和已经批准 的软件工作产品和软件产品。 产品库:存放项目正式交付用户的最终产品和最终运行环境。
2016/5/12
上海海事大学计算机系
17
软件项目管理
公司准备开发的第 3版系统与公司原有的产品要进行融合,
使他们看上去是一家出来的不同的兄弟和姐妹。
2016/5/12
上海海事大学计算机系
4
软件项目管理
第8章 IT软件项目配置管理
实例
与软件的第1版、第2版相比,你的项目管理有什么不同? 随着这个产品的演变,项目发生了四个变化: (1)系统的复杂性发生了很大变化; (2)用于开发该系统的项目环境发生了很大变化; (3)在不同的项目生命周期内,项目控制本身的要求和力 度发生了很大变化; (4)由于组织的变化,管理流程、人员、方式发生了很大 变化。 前二类变化要求项目的组织和管理适应系统扩展的需要; 后二种变化则要求项目管理具有适应性和灵活性。
则软件配置管理的许多关键活动就无法及时有效 地进行,其直接后果是项目开发状况的混乱,并
注定软件配置管理活动仅仅成为一种“救火”行
2016/5/12
上海海事大学计算机系
16
软件项目管理
第8章 IT软件项目配置管理
2. 变更控制 1)定义基线:基线标志着软件开发过程一个阶段的结 束,任一软件配置项,一旦形成文档并审议通过,即成 为基线。基本的作用在于把各阶段的工作划分得更明确 ,使本来连续的工作在这些点上断开,以便检验和肯定 阶段成果。
2016/5/12
上海海事大学计算机系
13
软件项目管理
第8章 IT软件项目配置管理
8.1.2 软件配置管理(1)
软件配置管理是贯穿于整个软件过程中的保护性活动,通 常可以归纳为4个主要方面: 配置识别、变更控制、配置状态统计、配置审核。
软件配置管理
配置标识
变更控制
配置状态统计
配置审核
图8.1 软件配置管理功能
不懂软件项目的配置管理,就不懂软件开发管理
不对软件项目进行配置管理,就没有进行软件项目 开发管理
2016/5/12
上海海事大学计算机系
7
软件项目管理
第8章 IT软件项目配置管理
8.1 软件配置管理概念
8.1.1 软件配置及软件配置项
8.1.2 软件配置管理
2016/5/12
上海海事大学计算机系
第8章 IT软件项目配置管理
2)存取控制
开发库(不受控),开发者对自己的文件库有读写权,但是没有 删除的权限。 基线受控库,配置管理员有读写权限,开发人员只有读的权 产品受控库,只有项目负责人和配置管理员有读写权限。
3)版本控制:配置管理的基本要求,使得组织在任何 时刻都可获得配置项的任何一个版本 4)流程控制:提供了一个明确的流程,要求任何进行 配置管理的软件产品变更都要经过相应的授权与批准才 能实施
2016/5/12
上海海事大学计算机系
6
软件项目管理
第8章 IT软件项目配置管理
软件项目的配置管理
随着计算机软件的发展,软件开发已由最初的“程 序设计阶段”经历了“软件系统阶段”进而演变为 后来的“软件工程阶段”,软件的复杂性日益增大。 此时,如果仍然把软件看成一个单一的个体,就无 法解决所面临的问题,于是配置的概念逐渐引入软 件领域,人们越来越重视软件配置的管理工作。
2016/5/12
上海海事大学计算机系
9
软件项目管理
第8章 IT软件项目配置管理
发展:软件配置管理概念的提出则在20世纪60年代末70 年代初。当时加利福尼亚大学圣巴巴拉分校的Leon Presser教授在承担美国海军的航空发动机研制合同期间 ,撰写了一篇名为“Change and Configuration Control”的论文,提出控制变更和配置的概念,这篇论文 同时也是他在管理该项目(这个过程进行过近一千四百万 次修改)的一个经验总结。
2016/5/12
上海海事大学计算机系
14
软件项目管理
第8章 IT软件项目配置管理
1.配置标识 1)定义配置项:软件配置项是配置管理的基本单位。 同时,开发过程中使用的环境,如操作系统、各种支撑 软件、配置管理工具,也可纳入软件配置管理范围。 2)标识配置项:正确标识软件配置项对整个管理活动 非常重要,对软件开发过程中的所有软件项目赋予唯一 的标识符,便于对其进行状态控制和管理。
上海海事大学计算机系
2
2016/5/12
软件项目管理
第8章 IT软件项目配置管理
实例
3个月后,公司决定把系统升级到第二版,除增加了许多 新的功能外,公司决定支持多平台,同时,为了提高系统
的性能和效率,准备采用第三方厂家的中间件,取代自己
做的接口。第一版的缺陷修改,也要反映到第2版中。
第2版经过2个多月的开发,最终推向了市场。公司的这个
2016/5/12
上海海事大学计算机系
10
软件项目管理
第8章 IT软件项目配置管理
8.1.1 软件配置及软件配置项(2)
软件配置:计算机程序(源代码和可执行程序)、描述计算机 程序的有关文档(针对技术开发者和用户)、数据(包括在程 序内部或程序外部),统称为软件配置。
随着软件过程的进展,软件配置项(Software Configuration Items, SCI)迅速增长。一般,系统的软件规格说明了产生软件项目计划和软 件需求说明以及与硬件相关的文档资料,然后在这些文档基础上又产生 了其他的一些文档,从而形成了一个信息层次。 通常,在一个变量(配置项)进入到软件过程中,不仅带来需求的变化, 而且对先前理解错误的更正都能带来变化。即变化随时可能发生。
配置标识包括:文档标识、代码标识、运行文件标识。 典型的命名规则是RUP法。RUP(Rational Unified Process,统一软件开发过程)是一个面向对象且基于网络的 程序开发方法论。
2016/5/12
上海海事大学计算机系
15
软件项目管理
第8章 IT软件项目配置管理
RUP中定义了一些核心概念, 如图: 角色:描述某个人或者一 个小组的行为与职责。 RUP预先定义了很多角色 。 活动:是一个有明确目的 的独立工作单元。 工件:是活动生成、创建 或修改的一段信息。
2016/5/12
上海海事大学计算机系
12
软件项目管理
第8章 IT软件项目配置管理
原因: 新的商业机会的出现或市场条件的变化,引起产品需求
或业务的变化
客户根据自身的情况,提出新的需要。可能要求修改信
息系统处理的数据、流程,改变产品提供的功能,或者 增加基于计算机系统所提供的信息服务。 企业改组或流程改造,导致系统项目优先级或软件工程 队伍结构的变化。 项目预算或进度的限制,导致系统或产品的重定义。
2016/5/12
上海海事大学计算机系
11
软件项目管理
第8章 IT软件项目配置管理
8.1.2 软件配置管理
软件配置管理使得整个软件产品的演进过程处于一种可视 的状态。 软件配置管理作为CMM第2级上的一个关键域(Key Practice Area,KPA),在整个软件的开发活动中占有 很重要的位置。
制定配置管理计划、变更控制、确定配置标识、系统整 合、版本管理
上海海事大学计算机系
2016/5/12
22
软件项目管理
第8章 IT软件项目配置管理
8.2.1 制定软件配置计划(1)
及时制定一份可行软件配置管理计划在一定程度
上是项目成功的重要保证措施之一。
如果不在项目开始时就制定软件配置管理计划,
产品不但被用户所欢迎,也被一家大公司所看中(就像
IBM收购了Lotus和Rational、Informix一样),你们的产 品,正好可以填补这家大公司产品线的空缺,你所在的公 司被这家公司买去了。
2016/5/12
上海海事大学计算机系
3
软件项目管理
第8章 IT软件项目配置管理
实例
公司为你的项目组派来了产品经理、项目经理。公司决定 对这个产品进行测试,由公司总部独立的测试部门承担。 公司决定把项目组增加到50人,其中有20多人并不在你所 在的城市。在新公司里,产品管理、项目管理、测试、质 量等等,都与你过去的环境和做法不同,特别不同的是,
上海海事大学计算机系
5
2016/5/12
软件项目管理
第8章 IT软件项目配置管理
缺乏管理所造成的问题
软件开发人员之间缺乏必要的交流
产品升级和维护所必需的程序和文档非常混乱
开发过程中的人员流动经常发生
因管理不善致使未经测试的软件加入到产品中 项目开发状态不清楚 软件生产达不到规模化
上海海事大学计算机系
21