《《软件配置管理》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《软件配置管理》PPT课件.ppt(70页珍藏版)》请在金锄头文库上搜索。
1、软件配置管理SCM 软件配置管理的必要性软件配置管理的必要性 软件配置管理的发展及含义 软件配置管理的目标及任务 软件配置管理的功能 ClearCase产品简介软件配置管理软件配置管理程序设计:程序系统:软件工程:程序程序员 编程程序文档小组编码测试程序文档数据团队软件生命周期个人编程质量个人编程质量小组技术水平小组技术水平团队管理水平团队管理水平越来越复杂软件开发的发展历程软件开发的发展历程软件开发过程中面临的困境软件开发过程中面临的困境u缺乏对用户需求进行有效的管理和追踪的工具缺乏对用户需求进行有效的管理和追踪的工具u产品升级和维护所必需的程序和文档非常混乱产品升级和维护所必需的程序和文档
2、非常混乱u代码可重用性差从而不能对产品进行功能扩充代码可重用性差从而不能对产品进行功能扩充u开发过程中的人员流动经常发生开发过程中的人员流动经常发生u由于管理不善致使未经测试的软件加入到产品中由于管理不善致使未经测试的软件加入到产品中u用户与开发商没有有效的产品交接界面用户与开发商没有有效的产品交接界面多操作系统多操作系统多开发工具多开发工具网络化网络化团队方式团队方式异地开发异地开发OracleOracleSybaseSybaseAPPCAPPCMVSMVSWINDOWSWINDOWSSQLSQLOSOS/ /2 2TCP/IPTCP/IPUNIXUNIXOOOOPMPMDB2DB2NTNT
3、C+C+INTERNETINTERNETINTRANETINTRANET开发环境的复杂性开发环境的复杂性操作系统开发工具技术水平操作系统开发工具技术水平与国外的软件开发相比与国外的软件开发相比国外国内操作系统开发工具技术水平操作系统开发工具技术水平管理管理缺乏规范的管理缺乏规范的管理国外国内软件质量软件质量?软件生产达不到规模化人员流动成员间缺少沟通缺少有效的通信机制缺乏管理所造成的问题缺乏管理所造成的问题软件开发管理的基础软件开发管理的基础 软件配置管理的必要性 软件配置管理的发展及含义软件配置管理的发展及含义 软件配置管理的目标及任务 软件配置管理的功能 ClearCase产品简介软件配置
4、管理软件配置管理硬件配置硬件配置 系统硬盘空间 运行速度 外设性能配置的起源配置的起源 软软件件配配置置是由在软件工程过程中产生的所有信息项构成的,它可以看作该软件的具具体体形形态态(软软件件配配置置项项)在某一时刻的瞬间影像代码代码文档文档报告报告数据数据软件配置的定义软件配置的定义“协调软件开发使得混乱减到最小的技术叫做软件配置管理,它是一种标识、组织和控制修改的技术,目的是使错误达到最小并最有效地提高生产效率。” - Wayne Babich SCM SCM Coordination Coordination for for Team Team ProductivityProductiv
5、ity软件配置管理的含义软件配置管理的含义SCMSCM贯穿整个软件生命周期与软贯穿整个软件生命周期与软件工程过程件工程过程计划需求分析设计编码测试运行维护定义开开发发确认确认维护演进维护演进软件配置管理软件配置管理软件生命周期软件生命周期始于软件项目之初始于软件项目之初终于项目淘汰之时终于项目淘汰之时软件配置管理的特点软件配置管理的特点测试测试测试测试服务服务服务服务软件开发过程软件开发过程软件开发过程软件开发过程用户平台用户平台用户平台用户平台软件配置管理的地位软件配置管理的地位需求管理需求管理需求管理需求管理可视化建模可视化建模可视化建模可视化建模软件配置管理软件配置管理软件配置管理软件配
6、置管理软件配置管理软件配置管理 软件配置管理的必要性 软件配置管理的发展及含义 软件配置管理的目标及任务软件配置管理的目标及任务 软件配置管理的功能 ClearCase产品简介 标识变更 控制变更 确保变更 报告变更软件配置管理的目标软件配置管理的目标 l 标识标识 l 版本管理版本管理l 变更控制变更控制 l 配置审计配置审计l 配置报告配置报告软件配置管理的任务软件配置管理的任务修订版管理修订版管理产品版本管理产品版本管理变更控制变更控制状态报告状态报告状态报告状态报告建立管理建立管理完善的软件配置管理功能完善的软件配置管理功能软件配置管理软件配置管理 软件配置管理的必要性 软件配置管理的
7、发展及含义 软件配置管理的目标及任务 软件配置管理的功能软件配置管理的功能 ClearCase产品简介修修订订版版管管理理一个应用程序模块一个应用程序模块经历过的多个状态经历过的多个状态的存储的存储1.01.11.21.3 保留文件修改轨迹保留文件修改轨迹 增量存储方式增量存储方式软件配置管理的功能软件配置管理的功能产产品品版版 本本 管管 理理是对应用程序系是对应用程序系统在版本级的管统在版本级的管理理File 3File 2File 1Version Labels正式版正式版Beta 11.01.11.21.31.01.11.21.01.11.21.31.4软件配置管理的功能软件配置管理的
8、功能建建立立 管管 理理允许为建立程序允许为建立程序有可重用的定义有可重用的定义自动构造程序自动构造程序自动回溯机制自动回溯机制保证程序建立一致性保证程序建立一致性软件配置管理的功能软件配置管理的功能变变更更管管理理对变更严格的加以控制和管对变更严格的加以控制和管理,保持修改信息,并使其理,保持修改信息,并使其精确、清晰。精确、清晰。 提出变更申请及方案提出变更申请及方案 对变更进行评价对变更进行评价 存取控制存取控制 同步控制同步控制软件配置管理的功能软件配置管理的功能状状态态报报告告对开发过程作出系对开发过程作出系统的记录统的记录发生了什么(发生了什么(WhatWhatWhatWhat)
9、)?为什么要发生为什么要发生( (WhyWhyWhyWhy) )?谁做的谁做的( (WhoWhoWhoWho) )?什么时候发生的什么时候发生的( (WhenWhenWhenWhen) )?在哪儿改变的在哪儿改变的( (WhereWhereWhereWhere) )?报报告告软件配置管理的功能软件配置管理的功能 软件配置管理的必要性 软件配置管理的发展及含义 软件配置管理的目标及任务 软件配置管理的功能 Rational配置管理解决方案配置管理解决方案配配 置置 和和 变变 更更 管管 理理 Rational的配置和变更管理产品线是一套完整的解决方案,它能够管理开发团队在软件开发生命周期中的全
10、部资产。ClearCaseClearCase 提供安全的存储库和软件开发资源的版本ClearCase MultiSiteClearCase MultiSite 能够使地理上分布的开发团队共享开发工作ClearQuestClearQuest and and ClearDDTS ClearDDTS 能够使你对变更的生命周期进行管理ClearCase能够解决的问题能够解决的问题w你的开发人员是否能在一种无法控制的状态下访问原代码? w修改过的错误是否还会出现? w你的集成过程是否拖延了产品投放市场的时间?w你是否能有效的管理多个任务? w你当前的解决方案是否能应付变化的需求?w你是否有同步开发的问题
11、?w你是否能重构所有的建立(Build)?谁需要使用谁需要使用ClearCase?w团队式的软件开发需要:长期维护软件管理多个版本在流水线上继续新产品的开发地理上分布的团队支持Windows和Unix开发环境 谁需要使用谁需要使用ClearCase?w开发人员保护他们的工作,避免破坏同伴的工作工作在多个任务中w版本工程师控制版本过程对建立(Build)进行管理以确保其是100%正确的w项目管理管理项目的变更了解项目的发展状况为什么使用为什么使用ClearCase 是正确的选择是正确的选择w最有力的支持并行开发w提供自动的分支和归并功能w安全的存储库防止被破坏并具有灵活性的存储库 w灵活可靠的工
12、作空间管理能够使开发人员控制变更的传播w全面的建立(Build)管理提供100%的重构能力w支持多种操作系统平台ClearCase是当今可用到的最自动是当今可用到的最自动化的弹性解决方案化的弹性解决方案为什么使用为什么使用ClearCase 是正确的选择是正确的选择w市场的领导全球销售已超过100,000 licensesw和Rational的其它产品相集成 Unix:Unix:FFClearDDTSClearDDTSFFRoseRoseFFPurifyPurifyWindows:Windows:FFClearQuestClearQuestFFRoseRoseFFRequisiteProReq
13、uisitePro为什么使用为什么使用ClearCase 是正确的选择是正确的选择w与多种开发工具和Windows资源管理器无缝集成 开发工具:开发工具:开发工具:开发工具:FFVisual C+Visual C+FFVisual BasicVisual BasicFFVisual J+Visual J+FFPower BuilderPower BuilderFFDeveloper 2000Developer 2000FFExplorerExplorerClearCase 的集成的集成 (Windows)SoDApreVueSQASuiteQuantifyCoveragePurifyRequi
14、siteProRequisiteProRoseRoseClearQuestClearQuestClearCaseClearCasePowerBuilder,Microsoft Visual Studio,Developer 2000Models and Models and Sub-UnitsSub-UnitsBase-line Base-line ProjectsProjectsChange Requests Change Requests and Softwareand SoftwareClearCase 的集成的集成 (UNIX)SoDASoDAApexApexpreVuepreVueQ
15、uantifyQuantifyPureCoveragePureCoveragePurifyPurifyRoseRoseClearCaseClearCaseClearDDTSClearDDTSPlatform Platform LanguagesLanguages and Utilities and UtilitiesModels and Models and Sub-UnitsSub-UnitsChange Requests Change Requests and Softwareand SoftwareCheck OutCheck OutErrorsErrors与资源管理器的无缝集成与资源管
16、理器的无缝集成被集成到自然的工被集成到自然的工被集成到自然的工被集成到自然的工作环境中作环境中作环境中作环境中与开发工具的无缝集成与开发工具的无缝集成ClearCase 的市场地位的市场地位 “在软件配置管理工具市场上,Rational公司连续两年居于领先地位。在1997年软件配置管理工具的收入中,Rational占据了18.4%。” -IDC 1998.5-IDC 1998.5 IDCIDC的的一一位位高高级级研研究究人人员员指指出出: :“ “分分布布式式的的、异异地地的的环环境境大大大大地地增增加加了了软软件件开开发发的的复复杂杂性性。整整个个软软件件开开发发生生命命周周期期的的管管理理
17、软软件件的的任任务务已已进进行行到到了了新新的的维维度度,ClearCaseClearCase一一族族产产品品极极大大的的满满足足了了软软件件开开发发的的这这一一复复杂杂性性。ClearCaseClearCase的的市市场场占占有有率率就就表表明明了了这一切。这一切。” ”AlcatelAlcatelAlcatel - 524 - 524 - 524AT&T - 774AT&T - 774AT&T - 774Bay Networks - 407Bay Networks - 407Bay Networks - 407BNR/BNR/BNR/NortelNortelNortel - 1643 -
18、1643 - 1643Cisco Systems - 937Cisco Systems - 937Cisco Systems - 937Boeing - 627Boeing - 627Boeing - 627ComputervisionComputervisionComputervision - 275 - 275 - 275Digital - 344Digital - 344Digital - 344EDS - 404EDS - 404EDS - 404EricssonEricssonEricsson - 667 - 667 - 667Fidelity - 377Fidelity - 377
19、Ford Motor - 263Ford Motor - 263GTE - 630GTE - 630Hewlett Packard - 2649Hewlett Packard - 2649Honeywell - 255Honeywell - 255Hughes - 402Hughes - 402Philips - 328Philips - 328Princeton - 757Princeton - 757Raytheon - 384Raytheon - 384SDRC - 250SDRC - 250SiemensSiemens - 2459 - 2459Sybase - 478Sybase -
20、 478Texas Instruments - 608Texas Instruments - 608Santa Cruz SCO - 400Santa Cruz SCO - 400Silicon Graphics - 368Silicon Graphics - 368Thomson - 313Thomson - 313TRW - 462TRW - 462Informix - 1900Informix - 1900Lockheed Martin - 934Lockheed Martin - 934Lucent - 567Lucent - 567Motorola - 2799Motorola -
21、2799Oracle - 1290Oracle - 1290拥有拥有拥有拥有250250个个个个LicenseLicense以上的用户已超过以上的用户已超过以上的用户已超过以上的用户已超过3030家家家家ClearCase 被广泛的使用被广泛的使用对对ClearCase 的评价的评价 “对于开发人员来讲ClearCase比其它配置管理工具使用更为轻松 .” Hugh Bawtree, Software Development Hugh Bawtree, Software Development MagazineMagazine December 97December 97 “如果没有Clear
22、Case我们将不能支持所有不同的产品版本 - -SPSSSPSS “我们使用Java 做了许多能够满足商业需求的快速应用开发ClearCase 帮助我们有效的控制变更,并且没有降低我们的开发速度. ” - -Marion Brown, Sun Marion Brown, Sun ISIS版本控制建立管理工作空间管理过程控制ClearCaseClearCaseClearCase 功能功能ClearCase的存储库的存储库w提供提供自动自动自动自动跨越多个存储跨越多个存储库的功能库的功能根据您的需求VOB 存储库 -Version Object Bases作用 -防止随意变更存储内容 -可以存储多
23、种文件类型ClearCaseClearCase 独有的独有的独有的独有的! !FFVOBVOBClearCase 版本控制版本控制 控制任何文件的版本 可对目录和子目录进 行版本控制 采用版本树结构 完美归并功能 文本比较 丰富的注释和版本报 告信息 654321203主支CheckoutEditCheck-inRel 1修复错误修复错误建立分支建立分支CheckoutEditCheck-in归并、比较归并、比较增增增增量量量量存存存存储储储储Rel 1ClearCase 并行开发并行开发自动自动自动自动 建立分支建立分支建立分支建立分支自动自动自动自动进行归并进行归并进行归并进行归并Clea
24、rCase 并行开发并行开发w确保修改过的错误不会再出现归并效用能够找到所有未归并的文件w减少集成时间 对于一个项目可以节省几个月,对于一个建立(Build)可以节省几天归并的工作能跨越多个存储库w在多个平台上同时发布归并功能可以同时归并32个文件w传送一个缺陷的修改到多个版本可以在任何方向上建立分支和进行归并w不会拖延产品投放市场的时间使高风险的工作隔离在单独的分支上工作空间管理的重要性工作空间管理的重要性w提供一个与开发人员友好的环境w为开发人员创建可靠的工作空间w保证在集成期间能够继续开发w为开发工作提供可靠的同步机制foo.c foo.hV VOOB Bbar.c私私私私人人人人存存存
25、存储储储储srcfoo.cbar.cfoo.h 建立灵活的工作空间 透明的访问版本元素 支持非ClearCase主机 访问视图 ClearCase 工作空间管理工作空间管理ClearCase 工作空间管理工作空间管理wClearCase 是最好的SCM解决方案,可以提供两种工作模式 在Unix 和 Windows NT上提供动态视图在Windows NT上提供快照视图“ClearCase 能够提供我们需要的所有不同的工作模式.”NobleNet, Inc.ClearCase 工作空间管理工作空间管理w动态视图动态视图动态视图动态视图使用网络连使用网络连接接 ClearCase ClearCas
26、e 的存储的存储库库直接更新访问数据历史 代码库的整体视图 审核建立(Build)网络建立(Build)ClearCase 工作空间管理工作空间管理w快照试图快照试图快照试图快照试图在在Windows Windows NTNT上能够可靠地被分上能够可靠地被分离使用离使用只能定期更新可以远离办公室工作可以在本地进行建立(Build)操作同步开发是永远可靠的同步开发是永远可靠的ClearCaseClearCase 为同步开发提供为同步开发提供为同步开发提供为同步开发提供最多的自动机制最多的自动机制最多的自动机制最多的自动机制ClearCase 工作空间管理的益处工作空间管理的益处 w集成期间不影响
27、开发工作继续进行在集成工作进行过程中能够保护个人的视图w同步开发是永远可靠的为被检出的开发工作提供标识自动检测多个同时被检出的文件并确保它们被适当的归并 支持支持UNIX和和Windows 平台的建立平台的建立 跨越多台主机进行分布跨越多台主机进行分布 式构造式构造ClearCase 建立管理建立管理工作站工作站工作站工作站工作站工作站工作站工作站HPSunSGIRS/6000DECVOB ServerVOB ServerVOB可以可以分布在多分布在多个服务器个服务器之间之间在多在多台主台主机间机间进行进行Build操作操作ClearCase 建立管理建立管理w提供100%的重构能力 全面的审
28、核追踪: 谁作的作了什么怎么作的什么时间自动生成配置报告了解建立(Build)之间的差异比较两个建立(Build)确定文件是否有改动 事件预触发机制事件预触发机制事件预触发机制事件预触发机制 有规则的自动分支有规则的自动分支有规则的自动分支有规则的自动分支 动态配置规格动态配置规格动态配置规格动态配置规格 历史记录描述历史记录描述历史记录描述历史记录描述 提供状态报告提供状态报告提供状态报告提供状态报告警告警告警告警告文件文件修改修改报告报告更新文档更新文档ClearCase 过程控制过程控制ClearCase全面支持全面支持ISO9000 ClearCasel唯一确定地标识每一个软件项的版本
29、唯一确定地标识每一个软件项的版本l确定地标识每个软件项及其在整个软件产品的版确定地标识每个软件项及其在整个软件产品的版本本l确定标识软件产品在开发、分配和安装过程中的确定标识软件产品在开发、分配和安装过程中的各个状态各个状态l管理同一个软件部分被多名开发人员同时更改管理同一个软件部分被多名开发人员同时更改l协调多个软件产品根据需要在多个地点的更新协调多个软件产品根据需要在多个地点的更新使用使用ClearCase的益处的益处 Computervisionn n缩短开发周期,减少70%的集成时间n n集中的集成团队从15名工程师减少至5名n n减少施工费用n n有利于企业知识库的建立n n帮助团队
30、规范管理“ClearCase可以恢复我们软件开发过程的秩序和可预见性,我们有信心满足客户的需求。”ClearCase MultiSite能够使地理上分布的开发团队共享工作ClearCase MultiSite能够解决的问题能够解决的问题w地区之间的开发数据传递w你的项目是否正在忍受技术资源不足的影响 w你是否希望用不同地点的资源支持来缩短产品投放市场的时间ClearCase MultiSite的优势的优势w最灵活地支持分布式的团队开发w最自动的解决方案w市场的领导超过 30,000 licenses最灵活的解决方案最灵活的解决方案w能使一个或多个地点能使一个或多个地点共享工作共享工作复制存储库
31、到一个或多个地点可以增加工作地点跨地区跨地区跨地区跨地区遍布全球遍布全球遍布全球遍布全球!5 54 43 32 21 10 02 21 10 03 3LondonLondon2 21 10 0New YorkNew YorkRelease 1.0Release 1.0最自动的解决方案最自动的解决方案w消除手工的步骤消除手工的步骤同步是自动进行的w确保顺利集成确保顺利集成提供对谁拥有什么分支的控制w提供灵活的同步频率提供灵活的同步频率立即的、每天一次、每周一次.ClearDDTSfor Unix ClearQuestfor Windows Rational变更需求管理工具变更需求管理工具w可以了
32、解谁改了什么、为什么w正确及时的项目状态报告 w最大限度的利用你的工程师资源w利于团队交流提供图形化的项目状况提供图形化的项目状况ClearDDTS是灵活的是灵活的E-mailE-mailE-mailProject AProject BProject CProject BProject CProject AClearDDTS Site 1ClearDDTS Site 2ClearDDTS Site 3w分布的项目可以轻松的分享数据分布的项目可以轻松的分享数据弹性灵活的体系结构弹性灵活的体系结构w典型体系结构ClearQuestClearQuestClearQuestCoreCoreCoreOD
33、BCODBCWeb ServerWeb ServerWeb Server(ASP)(ASP)(ASP)ClearQuestClearQuestClearQuestWebWebWebMS AccessMS AccessMS SQL ServerMS SQL ServerClearQuestClearQuestClearQuestClientClientClientClearQuestClearQuestClearQuestDesignerDesignerDesigner 客户客户客户客户容易使用容易使用容易使用容易使用服务器服务器服务器服务器是弹性的是弹性的是弹性的是弹性的核心核心核心核心是灵活
34、的是灵活的是灵活的是灵活的完全的完全的Web支持支持可视化的项目状况可视化的项目状况ClearQuest是易用的是易用的配配 置置 和和 变变 更更 管管 理理 Rational的配置和变更管理产品线是一套完整的解决方案,它能够管理开发团队在软件开发生命周期中的全部资产。ClearCaseClearCase 提供安全的存储库和软件开发资源的版本ClearCase MultiSiteClearCase MultiSite 能够使地理上分布的开发团队共享开发工作ClearQuestClearQuest and and ClearDDTS ClearDDTS 能够使你对变更的生命周期进行管理全面的配置和变更管理解决方案