Upload
rafe
View
196
Download
0
Embed Size (px)
DESCRIPTION
软件配置管理 SCM. 软件配置管理的必要性 软件配置管理的发展及含义 软件配置管理的目标及任务 软件配置管理的功能 ClearCase 产品简介. 软件配置管理. 个人编程质量. 程序设计:. 程序. 程序员. 编程. 越来越复杂. 小组技术水平. 程序 文档. 编码 测试. 程序系统:. 小组. 程序 文档 数据. 团队管理水平. 软件生 命周期. 软件工程:. 团队. 软件开发的发展历程. 软件开发过程中面临的困境. 缺乏对用户需求进行有效的管理和追踪的工具 产品升级和维护所必需的程序和文档非常混乱 - PowerPoint PPT Presentation
Citation preview
程序设计:
程序系统:
软件工程:
程序 程序员 编程
程序文档 小组
编码测试
程序文档数据
团队软件生命周期
个人编程质量个人编程质量
小组技术水平小组技术水平
团队管理水平团队管理水平
越来越复
杂
软件开发的发展历程
软件开发过程中面临的困境
缺乏对用户需求进行有效的管理和追踪的工具缺乏对用户需求进行有效的管理和追踪的工具 产品升级和维护所必需的程序和文档非常混乱产品升级和维护所必需的程序和文档非常混乱 代码可重用性差从而不能对产品进行功能扩充代码可重用性差从而不能对产品进行功能扩充 开发过程中的人员流动经常发生开发过程中的人员流动经常发生 由于管理不善致使未经测试的软件加入到产品中由于管理不善致使未经测试的软件加入到产品中 用户与开发商没有有效的产品交接界面用户与开发商没有有效的产品交接界面
多操作系统多开发工具网络化团队方式异地开发
OracleOracle SybaseSybase
APPCAPPCMVSMVS
WINDOWSWINDOWS
SQLSQL
OSOS//22
TCP/IPTCP/IP UNIXUNIX
OOOO
PMPM
DB2DB2
NTNT
C++C++
INTERNETINTERNET
INTRANETINTRANET
开发环境的复杂性
“ 协调软件开发使得混乱减到最小的技术叫做软件配置管理,它是一种标识、组织和控制修改的技术,目的是使错误达到最小并最有效地提高生产效率。” ------ Wayne BabichWayne Babich 《 SCM Coordination for Team ProductivitySCM Coordination for Team Productivity 》》
软件配置管理的含义
SCMSCM 贯穿整个软件生命周期与贯穿整个软件生命周期与软件工程过程软件工程过程
SCMSCM 贯穿整个软件生命周期与贯穿整个软件生命周期与软件工程过程软件工程过程
计划需求分析
设计编码
测试运行维护
定义
开发
确认维护演进
软件配置管理
软件生命周期
始于软件项目之初始于软件项目之初终于项目淘汰之时终于项目淘汰之时
软件配置管理的特点
产产品品版 版 本 本 管 管 理理
是对应用程序系统在版本级的管理
File 3File 2File 1Version Labels
正式版
Beta 11.0
1.1
1.2
1.3
1.0
1.1
1.2
1.0
1.11.21.31.4
软件配置管理的功能
变变更更管管理理
对变更严格的加以控制和管对变更严格的加以控制和管理,保持修改信息,并使其理,保持修改信息,并使其精确、清晰。精确、清晰。
• 提出变更申请及方案• 对变更进行评价• 存取控制• 同步控制
软件配置管理的功能
状状态态报报告告
对开发过程作出系统的记录
• 发生了什么( WhatWhat)?• 为什么要发生 (WhyWhy)?• 谁做的 (WhoWho)?• 什么时候发生的 (WhenWhen)?• 在哪儿改变的 (WhereWhere)?
报告
软件配置管理的功能
配 置 和 变 更 管 理 RationalRational 的的配置和变更管理产品线是一套完配置和变更管理产品线是一套完
整的解决方案,它能够管理开发团队在软件整的解决方案,它能够管理开发团队在软件开发生命周期中的全部资产开发生命周期中的全部资产。。 ClearCaseClearCase 提供安全的存储库和软件开发资源的
版本 ClearCase MultiSiteClearCase MultiSite 能够使地理上分布的开发团
队共享开发工作 ClearQuest and ClearDDTSClearQuest and ClearDDTS 能够使你对变更的生命
周期进行管理
ClearCase 能够解决的问题 你的开发人员是否能在一种无法控制的状态你的开发人员是否能在一种无法控制的状态
下访问原代码下访问原代码 ? ? 修改过的错误是否还会出现修改过的错误是否还会出现 ? ? 你的集成过程是否拖延了产品投放市场的时你的集成过程是否拖延了产品投放市场的时
间间 ?? 你是否能有效的管理多个任务你是否能有效的管理多个任务 ? ? 你当前的解决方案是否能应付变化的需求你当前的解决方案是否能应付变化的需求 ?? 你是否有同步开发的问题你是否有同步开发的问题 ?? 你是否能重构所有的建立你是否能重构所有的建立 ((BuildBuild))??
谁需要使用 ClearCase?
开发人员开发人员 保护他们的工作,避免破坏同伴的工作 工作在多个任务中
版本工程师版本工程师 控制版本过程 对建立 (Build) 进行管理以确保其是 100%正确的
项目管理项目管理 管理项目的变更 了解项目的发展状况
为什么使用 ClearCase 是正确的选择 最有力的支持并行开发最有力的支持并行开发 提供自动的分支和归并功能提供自动的分支和归并功能 安全的存储库安全的存储库
防止被破坏并具有灵活性的存储库 灵活可靠的工作空间管理灵活可靠的工作空间管理
能够使开发人员控制变更的传播 全面的建立全面的建立 ((Build)Build) 管理管理
提供 100%的重构能力 支持多种操作系统平台支持多种操作系统平台
ClearCaseClearCase
是当今可用到的最自动是当今可用到的最自动化的弹性解决方案化的弹性解决方案
ClearCaseClearCase
是当今可用到的最自动是当今可用到的最自动化的弹性解决方案化的弹性解决方案
为什么使用 ClearCase 是正确的选择 市场的领导市场的领导
全球销售已超过 100,000 licenses 和和 RationalRational 的其它产品相集成的其它产品相集成
Unix:Unix: ClearDDTSClearDDTS
RoseRose
PurifyPurify
Windows:Windows: ClearQuestClearQuest
RoseRose
RequisiteProRequisitePro
为什么使用 ClearCase 是正确的选择 与多种开发工具和与多种开发工具和 WindowsWindows 资源管理器无资源管理器无缝集成缝集成
开发工具:开发工具: Visual C++Visual C++
Visual BasicVisual Basic
Visual J++Visual J++
Power BuilderPower Builder
Developer 2000Developer 2000
ExplorerExplorer
ClearCase 的集成 (Windows)
SoDA
preVue
SQASuite
Quantify
Coverage
Purify
RequisiteProRequisitePro
RoseRose
ClearQuestClearQuest
ClearCaseClearCase
PowerBuilder,Microsoft Visual Studio,Developer 2000Models and Models and
Sub-UnitsSub-Units
Base-line Base-line ProjectsProjects
Change Requests Change Requests and Softwareand Software
ClearCase 的集成 (UNIX)
SoDASoDA
ApexApexApexApex
preVuepreVue
QuantifyQuantify
PureCoveragePureCoverage
PurifyPurifyRoseRose
ClearCaseClearCase
ClearDDTSClearDDTS
Platform Platform LanguagesLanguages
and Utilitiesand Utilities
Platform Platform LanguagesLanguages
and Utilitiesand Utilities
Models and Models and Sub-UnitsSub-Units
Change Requests Change Requests and Softwareand Software
Check OutCheck OutErrorsErrors
ClearCase 的市场地位 ““ 在软件配置管理工具市场上,在软件配置管理工具市场上, RationalRational公司连续两年居于领先地位。在公司连续两年居于领先地位。在 19971997 年软年软件配置管理工具的收入中,件配置管理工具的收入中, RationalRational 占据了占据了18.4%18.4% 。”。”
------IDC 1998.5------IDC 1998.5
IDCIDC 的一位高级研究人员指出的一位高级研究人员指出 :“:“ 分布式的、异地分布式的、异地的环境大大地增加了软件开发的复杂性。整个软件的环境大大地增加了软件开发的复杂性。整个软件开发生命周期的管理软件的任务已进行到了新的维开发生命周期的管理软件的任务已进行到了新的维度,度, ClearCaseClearCase 一族产品极大的满足了软件开发的一族产品极大的满足了软件开发的这一复杂性。这一复杂性。 ClearCaseClearCase 的市场占有率就表明了这的市场占有率就表明了这一切。”一切。”
Alcatel - 524Alcatel - 524AT&T - 774AT&T - 774Bay Networks - 407Bay Networks - 407BNR/Nortel - 1643BNR/Nortel - 1643Cisco Systems - 937Cisco Systems - 937Boeing - 627Boeing - 627Computervision - 275Computervision - 275Digital - 344Digital - 344EDS - 404EDS - 404Ericsson - 667Ericsson - 667
Alcatel - 524Alcatel - 524AT&T - 774AT&T - 774Bay Networks - 407Bay Networks - 407BNR/Nortel - 1643BNR/Nortel - 1643Cisco Systems - 937Cisco Systems - 937Boeing - 627Boeing - 627Computervision - 275Computervision - 275Digital - 344Digital - 344EDS - 404EDS - 404Ericsson - 667Ericsson - 667
Fidelity - 377Ford Motor - 263GTE - 630Hewlett Packard - 2649Honeywell - 255Hughes - 402Philips - 328Princeton - 757Raytheon - 384SDRC - 250Siemens - 2459Sybase - 478
Fidelity - 377Ford Motor - 263GTE - 630Hewlett Packard - 2649Honeywell - 255Hughes - 402Philips - 328Princeton - 757Raytheon - 384SDRC - 250Siemens - 2459Sybase - 478
Texas Instruments - 608Santa Cruz SCO - 400Silicon Graphics - 368Thomson - 313TRW - 462Informix - 1900Lockheed Martin - 934Lucent - 567Motorola - 2799Oracle - 1290
Texas Instruments - 608Santa Cruz SCO - 400Silicon Graphics - 368Thomson - 313TRW - 462Informix - 1900Lockheed Martin - 934Lucent - 567Motorola - 2799Oracle - 1290
拥有 250 个 License 以上的用户已超过 30 家拥有 250 个 License 以上的用户已超过 30 家
ClearCase 被广泛的使用
对 ClearCase 的评价 “ “ 对于开发人员来讲对于开发人员来讲 ClearCaseClearCase 比其它比其它
配置管理工具配置管理工具使用更为轻松使用更为轻松 ...”...” Hugh Bawtree, Software Development MagazineHugh Bawtree, Software Development Magazine
December ‘97December ‘97
“ “ 如果没有如果没有 ClearCaseClearCase 我们将不能支持我们将不能支持所有不同的产品版本所有不同的产品版本 " "
--SPSSSPSS
“ “ 我们使用我们使用 Java Java 做了许多能够满足商做了许多能够满足商业需求的快速应用开发……业需求的快速应用开发…… ClearCase ClearCase 帮助我们有效的控制变更帮助我们有效的控制变更 ,,并且没有降并且没有降低我们的开发速度低我们的开发速度 .. ” ”
--Marion Brown, Sun ISMarion Brown, Sun IS
ClearCase 的存储库
提供提供自动自动跨越多个存储跨越多个存储库的功能库的功能
根据您的需求
VOB 存储库 ---Version Object Bases作用 ---防止随意变更存储内容 --- 可以存储多种文件类型
ClearCase ClearCase 独有的独有的 !!ClearCase ClearCase 独有的独有的 !!
VOB VOB
ClearCase 版本控制• 控制任何文件的版本• 可对目录和子目录进 行版本控制• 采用版本树结构• 完美归并功能• 文本比较• 丰富的注释和版本报 告信息
6
5
4
3
2
1
2
0
3
主支
CheckoutEdit
Check-in
Rel 1
修复错误建立分支
CheckoutEdit
Check-in
归并、比较
增量存
增量存
储储
Rel 1
ClearCase 并行开发 确保修改过的错误不会再出现确保修改过的错误不会再出现
归并效用能够找到所有未归并的文件 减少集成时间减少集成时间
对于一个项目可以节省几个月,对于一个建立 (Build) 可以节省几天
归并的工作能跨越多个存储库 在多个平台上同时发布在多个平台上同时发布
归并功能可以同时归并 32 个文件 传送一个缺陷的修改到多个版本传送一个缺陷的修改到多个版本
可以在任何方向上建立分支和进行归并 不会拖延产品投放市场的时间不会拖延产品投放市场的时间
使高风险的工作隔离在单独的分支上
工作空间管理的重要性
提供一个与开发人员友好的环境提供一个与开发人员友好的环境
为开发人员创建可靠的工作空间为开发人员创建可靠的工作空间
保证在集成期间能够继续开发保证在集成期间能够继续开发
为开发工作提供可靠的同步机制为开发工作提供可靠的同步机制
foo.c foo.hVVOOBB
bar.c 私私人人存存储储
src
foo.c
bar.cfoo.h
V
I
E
W
• 建立灵活的工作空间• 透明的访问版本元素• 支持非 ClearCase主机 访问视图
ClearCase 工作空间管理
ClearCase 工作空间管理 ClearCase ClearCase 是最好的是最好的 SCMSCM 解决方案解决方案 ,, 可以提可以提
供两种工作模式供两种工作模式 在 Unix 和 Windows NT 上提供动态视图在 Windows NT 上提供快照视图
“…“…ClearCase ClearCase 能够提供我们需要的所有不同能够提供我们需要的所有不同的工作模式的工作模式 .”.”
NobleNet, Inc.NobleNet, Inc.
ClearCase 工作空间管理 动态视图动态视图使用网络连使用网络连
接接 ClearCase ClearCase 的存储库的存储库直接更新 访问数据历史 代码库的整体视图 审核建立 (Build)网络建立 (Build)
ClearCase 工作空间管理 快照试图快照试图在在 Windows Windows
NTNT 上能够可靠地被分上能够可靠地被分离使用离使用只能定期更新 可以远离办公室工作 可以在本地进行建立
( Build) 操作
同步开发是永远可靠的
ClearCase ClearCase 为同步开发提供为同步开发提供最多的自动机制最多的自动机制
ClearCase ClearCase 为同步开发提供为同步开发提供最多的自动机制最多的自动机制
ClearCase 工作空间管理的益处 集成期间不影响开发工作继续进行集成期间不影响开发工作继续进行
在集成工作进行过程中能够保护个人的视图 同步开发是永远可靠的同步开发是永远可靠的
为被检出的开发工作提供标识自动检测多个同时被检出的文件并确保它们被适
当的归并
• 支持 UNIX 和 Windows 平台的建立• 跨越多台主机进行分布 式构造
ClearCase 建立管理
工作站 工作站 工作站 工作站
HP
Sun SGI RS/6000 DEC
Sun HP
VOB Server VOB ServerVOB 可以分布在多个服务
器之间
在多台主机间进行Build操作
ClearCase 建立管理 提供提供 100%100% 的重构能力的重构能力
全面的审核追踪 : • 谁作的• 作了什么• 怎么作的• 什么时间
自动生成配置报告 了解建立 (Build)之间的差异
• 比较两个建立 (Build)
• 确定文件是否有改动
• 事件预触发机制事件预触发机制• 有规则的自动分支有规则的自动分支• 动态配置规格动态配置规格• 历史记录描述历史记录描述• 提供状态报告提供状态报告
系统管理员 开发者 管理 技术
文档
软 件 开 发 过 程警告 警告
文件修改 报告 更新文档
ClearCase 过程控制
ClearCase全面支持 ISO9000
ClearCaseClearCase唯一确定地标识每一个软件项的版本唯一确定地标识每一个软件项的版本 确定地标识每个软件项及其在整个软件产品的版确定地标识每个软件项及其在整个软件产品的版
本本 确定标识软件产品在开发、分配和安装过程中的确定标识软件产品在开发、分配和安装过程中的各个状态各个状态
管理同一个软件部分被多名开发人员同时更改管理同一个软件部分被多名开发人员同时更改 协调多个软件产品根据需要在多个地点的更新协调多个软件产品根据需要在多个地点的更新
使用 ClearCase 的益处 ComputervisionComputervision 缩短开发周期,减少缩短开发周期,减少 70%70% 的集成时间的集成时间 集中的集成团队从集中的集成团队从 1515名工程师减少至名工程师减少至 55名名 减少施工费用减少施工费用 有利于企业知识库的建立有利于企业知识库的建立 帮助团队规范管理帮助团队规范管理
““ClearCaseClearCase 可以恢复我们软件开发过程的秩序和可可以恢复我们软件开发过程的秩序和可预见性,我们有信心满足客户的需求。预见性,我们有信心满足客户的需求。””
ClearCase MultiSite 能够解决的问题 地区之间的开发数据传递地区之间的开发数据传递 你的项目是否正在忍受技术资源不足的影响你的项目是否正在忍受技术资源不足的影响 你是否希望用不同地点的资源支持来缩短产你是否希望用不同地点的资源支持来缩短产
品投放市场的时间品投放市场的时间
55
44
33
22
11
00
22
11
00
33
LondonLondon
22
11
00New
York
New
York
Release 1.0Release 1.0
最自动的解决方案 消除手工的步骤消除手工的步骤
同步是自动进行的 确保顺利集成确保顺利集成
提供对谁拥有什么分支的控制
提供灵活的同步频率提供灵活的同步频率 立即的、每天一次、每周
一次… ...
ClearDDTSfor Unix
ClearDDTSfor Unix
ClearQuestfor Windows
ClearQuestfor Windows
Rational 变更需求管理工具
可以了解谁改了什么、为什么可以了解谁改了什么、为什么 正确及时的项目状态报告 正确及时的项目状态报告 最大限度的利用你的工程师资源最大限度的利用你的工程师资源 利于团队交流利于团队交流
ClearDDTS 是灵活的
E-mailProject AProject BProject C
Project BProject C
Project A
ClearDDTS Site 1
ClearDDTS Site 2
ClearDDTS Site 3
分布的项目可以轻松的分享数据分布的项目可以轻松的分享数据
弹性灵活的体系结构 典型体系结构典型体系结构
ClearQuestClearQuestCoreCore
ClearQuestClearQuestCoreCore
ODBCODBC
Web ServerWeb Server(ASP)(ASP)
Web ServerWeb Server(ASP)(ASP)
ClearQuestClearQuestWebWeb
ClearQuestClearQuestWebWeb
MS AccessMS SQL Server
MS AccessMS SQL Server
ClearQuestClearQuestClientClient
ClearQuestClearQuestClientClient
ClearQuestClearQuestDesignerDesigner
ClearQuestClearQuestDesignerDesigner 客户
容易使用
客户容易使用
服务器是弹性的
服务器是弹性的
核心是灵活的
核心是灵活的
配 置 和 变 更 管 理 RationalRational 的的配置和变更管理产品线是一套完配置和变更管理产品线是一套完
整的解决方案,它能够管理开发团队在软件整的解决方案,它能够管理开发团队在软件开发生命周期中的全部资产开发生命周期中的全部资产。。 ClearCaseClearCase 提供安全的存储库和软件开发资源的
版本 ClearCase MultiSiteClearCase MultiSite 能够使地理上分布的开发团
队共享开发工作 ClearQuest and ClearDDTSClearQuest and ClearDDTS 能够使你对变更的生命
周期进行管理
全面的配置和全面的配置和变更管理变更管理
解决方案解决方案