软件项目的配置管理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
与软件的第1版、第2版相比,你的项目管理有什么不同?
随着这个产品的演变,项目发生了四个变化: (1)系统的复杂性发生了很大变化; (2) 用于开发该系统的项目环境发生了很大变化; (3)在不同的项目生命周期内,项目控制本身的要求和力度发生了很
大变化; (4)由于组织的变化,管理流程、人员、方式发生了很大变化。
2020/4/15
7
✓ 公司为你的项目组派来了产品经理、项目经理。公司决定这个产品的
测试,由公司总部独立的测试部门承担。同时,公司决定把项目组增 加到50人,其中有20多人并不在你所在的城市。在新公司里,产品管 理、项目管理、测试、质量等等,都与你过去的环境和做法不同,特 别不同的是,公司准备开发的第3版系统与公司原有的产品要进行融 合,使他们看上去是一家出来的不同的兄弟和姐妹。
2020/4/15
9
软件配置管理 SCM(Software Configuration Management)
软件配置管理(SCM)是指在开发过程中各阶段,管理 计算机程序演变的学科,它作为软件工程的关键元素, 已经成为软件开发和维护的重要组成部分…… SCM提供了结构化的,有序化的,产品化的管理软件工 程的方法。它涵盖了软件生命周期的所有领域并影响所 有数据和过程。
8.1.2 IEEE的配置管理定义 8.1.3 配置管理概述
8.1.4 配置管理活动的作用
5
配置的概念
配置的概念来自硬件 软件工程师是如何处理接口的? 广而言之:
软件的变化可以发生在一秒钟内 软件的变化可以发生在每一秒钟 软件开发过程下一秒钟是不确定的 情况将会怎样?怎么办?
2020/4/15
3
2020/4/15
第八章 • 目录
8.1 软件配置及其管理的概念 8.2 配置管理活动和流程 8.3 配置管理需求 8.4 版本管理 8.5 变更管理 8.6 配置状态监测与报告
8.7 基于配置管理的软件项目管理 8.8 配置管理的技术手段和工具
4
2020/4/15
8.1 软件配置及其管理的概念 8.1.1 CMM2的配置管理概念
不懂软件项目的配置管理,就不懂软件开发管理
不对软件项目进行配置管理,就没有进行软件项目 开发管理
2020/4/15
软件项目的配置管理
路漫漫其悠远
少壮不努力,老大徒悲伤
软件项目的配置管理
பைடு நூலகம்2020/4/15
2
2020/4/15
第八章 • 目录
8.1 软件配置及其管理的概念 8.2 配置管理活动和流程 8.3 配置管理需求 8.4 版本管理 8.5 变更管理 8.6 配置状态监测与报告
8.7 基于配置管理的软件项目管理 8.8 配置管理的技术手段和工具
6
软件项目开发管理的新需求
✓ 你在一家小公司做软件工程师,开始的时候,你只有一个人,配了2
个助手。你们研究了一种算法(例如:图象压缩、数据加密等),编 写了一个实现模块。有一天老板看到了你的演示,认为很有市场潜力, 可以结合进公司正在给某行业用户正在准备开发的系统中,成为该系 统的核心技术或一个别人没有的卖点。
因此,从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的 是使错误降为最小并最有效地提高生产效率。
SCM通过以下方法,强化软件的可靠性和质量: (1)提供用于识别和控制文档、代码、接口、数据库的结构框架,适用 于软件开发生命周期的所有阶段; (2)全面支撑某一特定开发及维护工作方法,能够适应各种类型的需求、 标准、政策、组织机构以及相关的管理策略; (3)针对特定的基线状态、变更控制、测试、发布版本或审查活动,生 成相应的管理信息和产品信息。
✓ 下一周,你的队伍增加到14(你的老板准备就此豪赌一把了),与你
3个人的小组不同的是,公司从其他部门为你配备了系统分析师,还 有文档编制员、测试员。你的核心模块已经被大量的用户功能所包装, 成为一个行业应用系统,并开始给用户试用,这是你的系统的第一版。
✓ 3个月后,公司决定把系统升级到第二版,除增加了许多新的功能外,
因此,从某种意义上讲,SCM本质上是变更的管理。 SCM使软件产品和过程的变更变为受控的和可预见的,它要求并在适当 的工具支持下能够做到这样几点: (1)谁做的变更? (2)软件有什么变更? (3)什么时间做的变更? (4)为何要变更?
2020/4/15
11
软件项目的配置管理
随着计算机软件的发展,软件开发已由最初的“程序设计阶段” 经历了“软件系统阶段”进而演变为后来的“软件工程阶段”, 软件的复杂性日益增大。此时,如果仍然把软件看成一个单一 的个体,就无法解决所面临的问题,于是配置的概念逐渐引入 软件领域,人们越来越重视软件配置的管理工作。
公司决定支持多平台,同时,为了提高系统的性能和效率,准备采用 第三方厂家的中间件,取代自己做的接口。第一版的缺陷修改,也要 反映到第二版中。
✓ 第2版经过2个多月的开发,最终推向了市场。公司的这个产品不但被
用 户 所 欢 迎 , 也 被 一 家 大 公 司 所 看 中 ( 就 像 IBM 收 购 了 Lotus 和 Rational、Informix一样),你们的产品,正好可以填补这家大公司 产品线的空缺,你所在的公司被这家公司买去了。
配置管理是指用于控制系统一系列变化的学科。 通过一系列技术,方法和手段来维护产品的历史,鉴
别和定位产品独有的版本,并在产品的开发和发布阶段 控制变化。 通过有序管理和减少重复性工作,配置管理保证了生 产的质量和效率。
2020/4/15
10
我们知道,在软件建立时,变更是不可避免的,而变更加剧了项目中软 件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确 保变更正确实现并向其他有关人员报告变更。
前二类变化要求项目的组织和管理适应系统扩展的需要,后二种变 化则要求项目管理具有适应性和灵活性。
2020/4/15
8
缺乏管理所造成的问题
软件开发人员之间缺乏必要的交流 产品升级和维护所必需的程序和文档非常混乱 开发过程中的人员流动经常发生 因管理不善致使未经测试的软件加入到产品中 项目开发状态不清楚 软件生产达不到规模化
随着这个产品的演变,项目发生了四个变化: (1)系统的复杂性发生了很大变化; (2) 用于开发该系统的项目环境发生了很大变化; (3)在不同的项目生命周期内,项目控制本身的要求和力度发生了很
大变化; (4)由于组织的变化,管理流程、人员、方式发生了很大变化。
2020/4/15
7
✓ 公司为你的项目组派来了产品经理、项目经理。公司决定这个产品的
测试,由公司总部独立的测试部门承担。同时,公司决定把项目组增 加到50人,其中有20多人并不在你所在的城市。在新公司里,产品管 理、项目管理、测试、质量等等,都与你过去的环境和做法不同,特 别不同的是,公司准备开发的第3版系统与公司原有的产品要进行融 合,使他们看上去是一家出来的不同的兄弟和姐妹。
2020/4/15
9
软件配置管理 SCM(Software Configuration Management)
软件配置管理(SCM)是指在开发过程中各阶段,管理 计算机程序演变的学科,它作为软件工程的关键元素, 已经成为软件开发和维护的重要组成部分…… SCM提供了结构化的,有序化的,产品化的管理软件工 程的方法。它涵盖了软件生命周期的所有领域并影响所 有数据和过程。
8.1.2 IEEE的配置管理定义 8.1.3 配置管理概述
8.1.4 配置管理活动的作用
5
配置的概念
配置的概念来自硬件 软件工程师是如何处理接口的? 广而言之:
软件的变化可以发生在一秒钟内 软件的变化可以发生在每一秒钟 软件开发过程下一秒钟是不确定的 情况将会怎样?怎么办?
2020/4/15
3
2020/4/15
第八章 • 目录
8.1 软件配置及其管理的概念 8.2 配置管理活动和流程 8.3 配置管理需求 8.4 版本管理 8.5 变更管理 8.6 配置状态监测与报告
8.7 基于配置管理的软件项目管理 8.8 配置管理的技术手段和工具
4
2020/4/15
8.1 软件配置及其管理的概念 8.1.1 CMM2的配置管理概念
不懂软件项目的配置管理,就不懂软件开发管理
不对软件项目进行配置管理,就没有进行软件项目 开发管理
2020/4/15
软件项目的配置管理
路漫漫其悠远
少壮不努力,老大徒悲伤
软件项目的配置管理
பைடு நூலகம்2020/4/15
2
2020/4/15
第八章 • 目录
8.1 软件配置及其管理的概念 8.2 配置管理活动和流程 8.3 配置管理需求 8.4 版本管理 8.5 变更管理 8.6 配置状态监测与报告
8.7 基于配置管理的软件项目管理 8.8 配置管理的技术手段和工具
6
软件项目开发管理的新需求
✓ 你在一家小公司做软件工程师,开始的时候,你只有一个人,配了2
个助手。你们研究了一种算法(例如:图象压缩、数据加密等),编 写了一个实现模块。有一天老板看到了你的演示,认为很有市场潜力, 可以结合进公司正在给某行业用户正在准备开发的系统中,成为该系 统的核心技术或一个别人没有的卖点。
因此,从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的 是使错误降为最小并最有效地提高生产效率。
SCM通过以下方法,强化软件的可靠性和质量: (1)提供用于识别和控制文档、代码、接口、数据库的结构框架,适用 于软件开发生命周期的所有阶段; (2)全面支撑某一特定开发及维护工作方法,能够适应各种类型的需求、 标准、政策、组织机构以及相关的管理策略; (3)针对特定的基线状态、变更控制、测试、发布版本或审查活动,生 成相应的管理信息和产品信息。
✓ 下一周,你的队伍增加到14(你的老板准备就此豪赌一把了),与你
3个人的小组不同的是,公司从其他部门为你配备了系统分析师,还 有文档编制员、测试员。你的核心模块已经被大量的用户功能所包装, 成为一个行业应用系统,并开始给用户试用,这是你的系统的第一版。
✓ 3个月后,公司决定把系统升级到第二版,除增加了许多新的功能外,
因此,从某种意义上讲,SCM本质上是变更的管理。 SCM使软件产品和过程的变更变为受控的和可预见的,它要求并在适当 的工具支持下能够做到这样几点: (1)谁做的变更? (2)软件有什么变更? (3)什么时间做的变更? (4)为何要变更?
2020/4/15
11
软件项目的配置管理
随着计算机软件的发展,软件开发已由最初的“程序设计阶段” 经历了“软件系统阶段”进而演变为后来的“软件工程阶段”, 软件的复杂性日益增大。此时,如果仍然把软件看成一个单一 的个体,就无法解决所面临的问题,于是配置的概念逐渐引入 软件领域,人们越来越重视软件配置的管理工作。
公司决定支持多平台,同时,为了提高系统的性能和效率,准备采用 第三方厂家的中间件,取代自己做的接口。第一版的缺陷修改,也要 反映到第二版中。
✓ 第2版经过2个多月的开发,最终推向了市场。公司的这个产品不但被
用 户 所 欢 迎 , 也 被 一 家 大 公 司 所 看 中 ( 就 像 IBM 收 购 了 Lotus 和 Rational、Informix一样),你们的产品,正好可以填补这家大公司 产品线的空缺,你所在的公司被这家公司买去了。
配置管理是指用于控制系统一系列变化的学科。 通过一系列技术,方法和手段来维护产品的历史,鉴
别和定位产品独有的版本,并在产品的开发和发布阶段 控制变化。 通过有序管理和减少重复性工作,配置管理保证了生 产的质量和效率。
2020/4/15
10
我们知道,在软件建立时,变更是不可避免的,而变更加剧了项目中软 件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确 保变更正确实现并向其他有关人员报告变更。
前二类变化要求项目的组织和管理适应系统扩展的需要,后二种变 化则要求项目管理具有适应性和灵活性。
2020/4/15
8
缺乏管理所造成的问题
软件开发人员之间缺乏必要的交流 产品升级和维护所必需的程序和文档非常混乱 开发过程中的人员流动经常发生 因管理不善致使未经测试的软件加入到产品中 项目开发状态不清楚 软件生产达不到规模化