ClearCase的功能和特点 评论,范围
作者: moonsoft(http://moonsoft.itpub.net)发表于: 2008.06.21 03:23
分类: EBS
出处: http://moonsoft.itpub.net/post/15182/464760
---------------------------------------------------------------
随着软件团队人员的增加,软件版本不断变化,时间的紧缺,多种平台的复杂环境,使得 ClearCase所拥有的特殊组件已成为当今软件开发人员(工程人员和管理者)所必须的工具。分布式操作使得基于Client/Server的运算结构跨越于网上客户机和服务器,ClearCase的先进功能直接解决了原来开发团队所面临的难以处理的问题。
软件开发所面临的问题包括:对当前多种产品的开发和维护,保证产品版本的精确,重建先前发布的产品,加强开发政策的统一和对特殊版本需求的处理。通过解决这些问题,ClearCase用资源重用的方法帮助开发团队使他们所有的软件建立得更加可靠。 Rational公司的ClearCase是软件配置领域的先导,它主要基于Windows和UNIX的开发环境。它提供了全面的配置管理──包括版本控制、工作空间管理、建立管理和过程控制,而且无须软件开发者改变他们现有的环境、工具和工作方式。
ClearCase的四种功能
ClearCase主要应用于复杂的产品发放、分布式团队合作、并行的开发和维护任务,包括支持当今流行软件开发环境Client/Server网络结构。在激烈的市场竞争中,ClearCase的特点直接响应了软件团队的需求,如:软件生产、发布、维护等。
ClearCase在某些方式上和其它的软件配置管理系统有所不同,从本质上,ClearCase是无可比拟的,因为它包含了一套完整的软件配置管理工具而且结构透明、界面可亲。虽然ClearCase是一个可集成使用的环境,但实际上我们仍可以把ClearCase的所有特性划分为四个具体功能范畴。
Version Control
ClearCase自动追踪每一个文件和目录的变更情况,通过分支和归并功能支持并行开发。在软件开发环境中,ClearCase可以对每一种对象类型(包括源代码、二进制文件、目录内容、可执行文件、文档、测试包、编译器、库文件等)实现版本控制。因而,ClearCase提供的能力远远超出资源控制,并且可以帮助团队,在开发软件时为他们所处理的每一种信息类型建立一个安全可靠的版本历史记录。
Workspace Management
ClearCase给每一位开发者提供了一致性、灵活性和工作空间域(有时也称为"Sandboxes")可重用的功能。ClearCase采用一种称为View的创新技术,它可以选择所指定任务的每一个文件或目录的适当版本,并呈现它们。View可以让开发者在资源代码共享和私有代码独立的不断变更中达到平衡,从而使他们工作更有效。
Build Management
ClearCase自动产生软件系统构造文档信息清单,而且可以完全、可靠的重建任何构造环境。ClearCase也可以通过共享二进制文件和并发执行多个建立脚本的方式支持有效的软件构造。
Process Control
ClearCase有一个灵活、强大的功能,可以明确项目设计的流程。自动的常规日志可以监控软件被谁修改、修改了什么内容以及执行政策,如:可以通过对全体人员的不同授权来阻止某些修改的发生,无论任何时刻某一事件发生应立刻通知团队成员,对开发的进程建立一个永久记录并不断维护它。
优势
ClearCase帮助所有规模的开发组织进行更加有效的开发和维护、加强竞争力、增加收益、降低成本。独特的ClearCase带来的特殊利益: 增加团队效率――通过对并行开发的支持来实现,包括图形比较和归并、标签、版本目录 结构。
增加个人效率 ――通过自动的工作空间管理来实现,如:直接的版本访问、消除了在拷贝文件上的时间的浪费。
简单的维护和提高对客户的支持――通过快速准确的重建先前的版本来实现。
快速准确的产品发布 ――通过保证构造的准确性和对软件的每一个元件进行版本控制来实现。
减少错误发生 ――通过事件发生以后对每一个元件的变更进行追踪来实现。
硬件资源的优化 ――通过分布式构造、减少文件拷贝、可用对象的共享等功能来实现。
提高项目协调和编制 ――通过文件注释和开发周期阶段变更的自动关联来实现。
提高产品质量 ――通过灵活的进程控制,和图形接口定制,使得软件开发在实际中保持 一致。
更加有效的团队扩展――通过减少系统管理和维护的负担来实现。
支持分布式结构使得团队成长――通过Client/Server结构进行多点复制和及时的对象版本的更新来实现。
使用配置管理工具而降低风险――由于它不干扰软件程序员的工作,所以可以使用常用的工具和文件系统接口。
增加了软件的安全性和保护性 ――通过使用分布式的存储结构,所有的软件资源会随时更新、在硬盘或网络出现错误时那些被ClearCase存储的版本信息会立刻恢复。
减少培训和实现成本 ――ClearCase通过采用透明结构以及和标准开发工具进行集成来实现。
强有力的开发和维护 ――通过和其它工具(如:缺陷追踪)、系统、结构进行集成。
支持不同种类的开发 ――通过兼容不同平台的软件配置管理系统,如:Windows NT、UNIX、和一些Client端的软件,如:Windows 95、Windows NT、Windows 3.1和Windows for Workgroups。
连接UNIX 和Windows的桥梁 ClearCase全面支持软件配置管理,给那些经常跨越复杂环境(如:UNIX、Windows系统)进行复杂项目开发的团队带来巨大的效益。当UNIX和Windows的软件工程人员提出了平台的特性后,ClearCase for UNIX和ClearCase for Windows有高度互用性。
对于它所支持的平台,ClearCase通过TCP/IP来连接客户端和服务器。另外,ClearCase拥有的浮动License可以跨越UNIX和Windows NT平台被共享。ClearCase for Windows NT对ClearCase UNIX VOBs的访问与浏览可以通过一个NFS for Windows NT的产品来实现。
clearcase国内使用情况和一些个人体会
首先问大家一下,真正使用正版Clearcase的有几位?恐怕不多。中国真正在使用clearcase的企业屈指可数:Motorola,siemens,上海贝尔,华为和一些国防研究所,也只有这些电信级的企业才用的起,因为一个license就要几万。而我们的一些纯软件公司非常需要,却无力购买,包括我们的国内首家过CMM3的那家也还没有用。
clearcase本身可以随便找到,但没有license根本就用不起来。不是有Crack吗?对,我也做过试验,它不是提供现有的license或虚license,而是把要license的功能给屏蔽掉,而这样做很可能会出危险,在后来的试验中我也确实遇到了不知名的错误,很可能是由于它。
说句实话,如果个人用clearcase太大材小用了,只是每天当作一个备份工具,记录一个版本而已,当然即使是这样也鼓励大家用。
我们也是上面一个外资企业的行业软件部门,有着很大的开发队伍和非常正规领先的网络环境,即使是这样,程序员们很多还是不愿意用,一个原因是重视不够,另一个就是其复杂度。不客气的说,clearcase的细节浩如烟海,尤其是做为管理员。从设计网络环境,安全机制,到view profile,meta-data,和二次开发(主要用perl)非常之多,我从第一次方案设计时尽管已经有了一定的基础,还是有很多问题不得不请教rational的技术支持,不过凡是请教过技术支持的人都知道,有时候技术支持的水平不一定有你高,还得自己摸索。
说了这么多,以飨对clearcase有兴趣的朋友,当然,以后我还会继续
我也觉得clearcase过于复杂了,我曾经花了些时间来搞这个冬冬,可是
还是觉得比较困难,到现在也没真正的用上,好像国内企业用上它,用好它
的也少的可怜。很多企业只用到vss就不错了,pvcs就少的多,clearcase这种
更要理论和技术实践的东西的企业就更少。好像中文资料也少的可怜。
希望懂clEARCASE的同志能够多多写些东西,做点贡献。


