Rational ClearCase与同类型产品分析报告.doc_第1页
Rational ClearCase与同类型产品分析报告.doc_第2页
Rational ClearCase与同类型产品分析报告.doc_第3页
Rational ClearCase与同类型产品分析报告.doc_第4页
Rational ClearCase与同类型产品分析报告.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Rational ClearCase与同类型产品分析报告目录一、背景11.1 ClearCase11.2 Visual SourceSafe11.3 CVS11.4 SVN1二、主要功能说明22.1 Internet网络访问和远程管理32.2 并行开发支持32.3 跨平台开发支持42.4 开发操作使用的便利性42.5 信息安全性4三、ClearCase的四种功能43.1 Version Control53.2 Workspace Management53.3 Build Management53.4 Process Control5四、ClearCase优势5一、背景1.1 ClearCaseIBM旗下Rational公司(2003年被IBM收购)的一款重量级的软件配置管理(SCM, SoftwareConfiguration Managemen)工具。与CVS和VSS不同,Clearcase涵盖的范围包括版本控制、建立管理、工作空间管理和过程控制。从最初的软件配置计划,到配置项的确立,从变更控制到版本控制,Clearcase贯穿于整个软件生命周期。 Clearcase支持现有的绝大多数操作系统,但它的安装、配置、使用相对较复杂,并且需要进行团队培训。 1.2 Visual SourceSafe微软的版本控制工具,仅支持Windows操作系统。虽然简单好用,但是仅适用于团队级开发,不能胜任企业级的开发工作。 1.3 CVSConcurrent Versions System。CVS 是有着三十年以上的时间的考验。CVS是开放源代码软件世界的一个伟大杰作,由于CVS功能强大,跨平台,支持并发版本控制,而且免费,所以它在全球中小型软件企业中得到了广泛使用。CVS最大的遗憾就是缺少相应的技术支持,许多问题的解决需要自己寻找资料,甚至是研究源代码。CVS是一个典型的服务器/客户端软件,有UNIX版本的CVS 、Linux版本的CVS和WINDOWS版本的CVS。CVS支持远程管理,项目组分布开发时一般都采用CVS。 1.4 SVNSubversion。采用了更先进的分支管理系统,它的设计目标就是取代CVS,CVS纵然易用,但也有一些与生俱来的缺点,比如CVS不支持文件改名,只对文件控制版本而没有针对目录的管理等。之后CVS 的创始人之一在其现任公司的资助下开发了SVN,用以针对CVS 的一些弱点进行改进。二、主要功能说明CVS纵然是一个老牌的工具产品,并也对开源事业有贡献,但CVS的命令行操作着实让一些使用者头疼。在对一个特定版本的文档Check in的时候,需要输入一长串的路径名、文件名。在操作易用性上与CVS形成对比的是微软家族的VSS。作为微软的产品,在图形界面化操作上自不用多言,但VSS只能适用于小团队的开发工作。VSS是很好的入门级工具,但它的一些功能太过于“入门”,在验证密码、保存密码这些基本功能上处理的不尽人意。适用于大型软件开发的有“中坚级”的Clearcase,用它来管理一些小型的项目管理有些“大材小用”。Clearcase支持目录版本管理、异地团队开发、视图、多服务器等强大功能,所以一些大公司把它做为一、二级产品管理用,但同样它的价格也不菲。CVS是开源的,免费的,更何况它还有一个理想的替代者SVN。SVN的设计专门针对CVS的问题作了改进,命令的设计更为合理,对二进制文档和目录这样的数据加强了控制能力,并且吸收了VSS的lock-modify-update(release)的模式和modify-merge模式的优点这两种方式在一定程度都支持并作了优化,没有提高使用的复杂度。由于SVN的设计结构很好,所以很容易为它开发客户端,还有WEB模式的,可以远程管理,支持RSS更改订阅。功能名称Internet 网络和远程管理并行开发跨平台开发操作的便利性信息安全性VSS最新发布版本VSS8.0可支持此功能最新发布版本VSS8.0可支持此功能仅支持Windows 操作系统安装、配置、使用均较简单,很容易上手使用安全性不高,基于文件系统共享实现对服务器的访问,需要共享存储目录,这样用户可以对VSS的文件夹执行删除操作。CVS支持,速度一般支持支持几乎所有的操作系统安装、配置较复杂,但使用比较简单,只需对配置管理做简单培训即可安全性高,CVS服务器有自己专用的数据库,文件存储并不采用 “共享目录”方式,所以不受限于局域网。SVN相比CVS,更加适合基于互联网协作开发的团队,速度也更快相比CVS,能够保证所有的修改都入库生效同上同上同上CLEARCASE速度最快,且不受网络连接带宽的限制、防火墙以及安全问题的影响。支持支持常见的平台安装、配置、使用相对较复杂,需要进行团队培训安全性不高,采用C/S模式,需要共享服务器上的存储目录以供客户端访问2.1 Internet网络访问和远程管理 VSS、CVS和SVN都提供基于Web的界面,用户可以通过浏览器执行配置管理的相关操作,即通过这样的方法来实现对异地开发的支持。但是相对于CVS,SVN采用统一的二进制差异算法,所以消耗更少的网络带宽,因此更加适合基于互联网(或广域网)进行协作开发的地理上分布的团队,即版本服务器集中、单一;客户端可广泛分布。 其实上述实现方法有太多的局限性,例如网络(Internet)连接带宽的限制、防火墙以及安全问题等。真正意义上的异地开发支持,是指在不同的开发地点建立各自的存储库,通过工具提供同步功能自动或手动同步。这样做的好处是与网络无关,即便各个开发地点之间没有实时连通的网络,也可以通过E-Mail 附件等其它方式将同步包发给对方,实现手动的同步。而ClearCase就能实现这样的功能。 值得说明的是,在不同开发点建立各自存储库的方式,主要适用于两个或两个以上位于不同地点的开发团队协作开发的情况。如果仅是采用虚拟团队合作的方式,开发人员以个体的形式散落在不同地方,则更适合通过Internet 直接操作远程的配置管理服务器。 2.2 并行开发支持 在团队协作开发过程中,有两种主要的模式:集体代码权和个体代码权。采用集体代码权模式进行开发时,一段代码可能同时会被多个开发人员同时修改;而采用个体代码权模式进行开发时,每一段代码都始终被一个开发人员独享,别人需要修改时也要通过该开发人员完成。 而配置管理软件针对这一情况,也采用了不同的策略:Copy-Modify-Merge(拷贝、修改、合并)的并行开发模式、Check ut-Modify-Check in(签出、修改、签入)的独占开发模式。在并行开发模式下,开发人员可以并行开发、更改代码,并能够自动检测到代码冲突,并自动合并,或提示开发人员手动解决。 VSS最新发布版本8.0可支持并行开发模式,其它三种工具也都可支持。 CVS 采用线性、串行的批量提交,即依次地,一个接一个地执行提交,每成功提交一个文件,该文件的一个新的版本即被记录到版本库中,提交时用户提供的日志信息被重复地存储到每一个被修改的文件的版本历史中。但是当任何原因造成批量操作的中断时(典型原因包括:网络中断、客户端死机等),版本库往往处于一个不一致的状态:原本应该全部入库的文件只有一部分入库,很有可能版本库中的最新版本不能顺利编译,更为严重的是,随着其他的用户执行cvs update 操作,该不一致性将迅速在开发团队中扩散,从而严重影响团队的开发效率,并存在质量隐患。另外,假如该批量提交的中断没有被及时发现,开发团队往往要花更多的时间进行软件调试和排错。 SVN彻底消除了CVS的以上弊端。无论批量提交包含多少文件修改,只有当全部文件修改都成功入库,该提交才变得有效,才对其他用户可见;否则,无论任何原因造成中断,SVN 都会自动执行“回滚”(rollback)操作。换一个说法,SVN保证所有的修改要么全部入库生效,要么一个也不入库,即对版本库不作任何的修改。这就是SVN 的原子性提交(atomic commit)。 ClearCase可以很容易的产生分支,也可以很容易的将不同分支进行合并。这样一来,即便某一部分的工作被冻结或加锁,开发者仍然可以继续自己的工作(如:在软件集成期)。在这种情况,开发者可以在分支上工作,ClearCase的自动化操作和图形归并工具可以很容易的重新集成新的工作。 2.3 跨平台开发支持 如果企业需要从事多个不同平台下的开发工作,就需要配置管理工具能够对跨平台开发提供支持,否则势必会给开发、测试、发布等各个环节带来不便,将使大量的时间被浪费于代码的手工上传、下载中。 VSS仅支持Windows操作系统。 CVS、SVN和ClearCase支持几乎所有的操作系统和平台。但是CVS和SVN的服务器端在Unix, Linux环境下运行会更稳定可靠。 2.4 开发操作使用的便利性 VSS安装、配置、使用均较简单,很容易上手使用。 CVS和SVN安装、配置较复杂,但使用比较简单,只需对配置管理做简单培训即可。 ClearCase安装、配置、使用相对较复杂,需要进行团队培训,需投入成本大概四万元。 2.5 信息安全性 VSS它是基于文件系统共享实现对服务器的访问,需要共享存储目录,这样用户可以对VSS的文件夹执行删除操作,安全性不高。 CVS和SVN服务器有自己专用的数据库,文件存储并不采用 “共享目录”方式,所以不受限于局域网。安全性较高。 ClearCase采用C/S模式,需要共享服务器上的存储目录以供客户端访问,安全性不高。三、ClearCase的四种功能 ClearCase主要应用于复杂的产品发放、分布式团队合作、并行的开发和维护任务,包括支持当今流行软件开发环境Client/Server网络结构。在激烈的市场竞争中,ClearCase的特点直接响应了软件团队的需求,如:软件生产、发布、维护等。 ClearCase在某些方式上和其它的软件配置管理系统有所不同,从本质上,ClearCase是无可比拟的,因为它包含了一套完整的软件配置管理工具而且结构透明、界面可亲。虽然ClearCase是一个可集成使用的环境,但实际上我们仍可以把ClearCase的所有特性划分为四个具体功能范畴。 3.1 Version Control ClearCase自动追踪每一个文件和目录的变更情况,通过分支和归并功能支持并行开发。在软件开发环境中,ClearCase可以对每一种对象类型(包括源代码、二进制文件、目录内容、可执行文件、文档、测试包、编译器、库文件等)实现版本控制。因而,ClearCase提供的能力远远超出资源控制,并且可以帮助团队,在开发软件时为他们所处理的每一种信息类型建立一个安全可靠的版本历史记录。 3.2 Workspace Management ClearCase给每一位开发者提供了一致性、灵活性和工作空间域(有时也称为Sandboxes)可重用的功能。ClearCase采用一种称为View的创新技术,它可以选择所指定任务的每一个文件或目录的适当版本,并呈现它们。View可以让开发者在资源代码共享和私有代码独立的不断变更中达到平衡,从而使他们工作更有效。 3.3 Build Management ClearCase自动产生软件系统构造文档信息清单,而且可以完全、可靠的重建任何构造环境。ClearCase也可以通过共享二进制文件和并发执行多个建立脚本的方式支持有效的软件构造。 3.4 Process Control ClearCase有一个灵活、强大的功能,可以明确项目设计的流程。自动的常规日志可以监控软件被谁修改、修改了什么内容以及执行政策,如:可以通过对全体人员的不同授权来阻止某些修改的发生,无论任何时刻某一事件发生应立刻通知团队成员,对开发的进程建立一个永久记录并不断维护它。四、ClearCase优势 ClearCase帮助所有规模的开发组织进行更加有效的开发和维护、加强竞争力、增加收益、降低成本。独特的ClearCase带来的特殊利益: 增加团队效率通过对并行开发的支持来实现,包括图形比较和归并、标签、版本目录结构。 增加个人效率 通过自动的工作空间管理来实现,如:直接的版本访问、消除了在拷贝文件上的时间的浪费。 简单的维护和提高对客户的支持通过快速准确的重建先前的版本来实现。 快速准确的产品发布 通过保证构造的准确性和对软件的每一个元件进行版本控制来实现。 减少错误发生 通过事件发生以后对每一个元件的变更进行追踪来实现。 硬件资源的优化 通过分布式构造、减少文件拷贝、可用对象的共享等功能来实现。 提高项目协调和编制 通过文件注释和开发周期阶段变更的自动关联来实现。 提高产品质量 通过灵活的进程控制,和图形接口定制,使得软件开发在实际中保持一致。 更加有效的团队扩展通过减少系统管理和维护的负担来实现。 支持分布式结构使得团队成长通过Client/Server结构进行多点复制和及时的对象版本的更新来实现。 使用配置管理工具而降低风险由于它不干扰软件程序员的工作,所以可以使用常用的工具和文件系统接口。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论