如何选择配置管理工具

上传人:woxinch****an2018 文档编号:38980913 上传时间:2018-05-10 格式:DOC 页数:6 大小:67KB
返回 下载 相关 举报
如何选择配置管理工具_第1页
第1页 / 共6页
如何选择配置管理工具_第2页
第2页 / 共6页
如何选择配置管理工具_第3页
第3页 / 共6页
如何选择配置管理工具_第4页
第4页 / 共6页
如何选择配置管理工具_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《如何选择配置管理工具》由会员分享,可在线阅读,更多相关《如何选择配置管理工具(6页珍藏版)》请在金锄头文库上搜索。

1、如何选择配置管理工具如何选择配置管理工具 来自:CSDN 作者:不详2004/04/12每一个软件项目,无论是工程类项目,还是产品类项目,都必须经历需求分析、 系统设计、编码实现、集成测试、部署、交付、维护和支持的过程。在这个过程中, 将生成各种各样不同的工件,包括文档、源程序、可执行代码、支持库。更可怕的是, 频繁出现的变更是不可避免的,因此面向如此庞大且不断变动的信息集,如何使其有 序、高效地存放、查找和利用就成为了一个突出的问题。针对这一问题,最早的开发人员尝试过的解决办法是通过手工来实现:1)文档:每次修改时都另存为一个新的文件,然后通过文件名进行区分,例如 “XXX 软件需求说明书

2、V1.0,XXX 软件需求说明书 V1.1,XXX 软件需求说明书 V2.0.“,并且在文件中注明每次版本变化的内容;2) 源代码:每次要修改时就将整个工程目录复制一份,将原来的文件夹进行改名, 例如“XX 项目 V1.0、XX 项目 1.01、.“,然后在新的目录中进行修改;但是这种方法,不仅十分繁琐,容易出错,而且会带来大量的垃圾数据。如果是 团队协同开发或者是项目规模较大时,还是会造成很大的混乱。很显然,这样简陋的 方法是无法应对这一问题的。后来,有人尝试从制造工业领域引入了“配置管理“这一概念,通过不懈的研究与 实践,最终形成了一套管理办法和活动原则,这也就是软件配置管理。通过软件配置

3、管理,将对软件系统中的多重版本实施系统的管理;全面记载系统 开发的历史过程,包括为什么修改,谁作了修改,修改了什么;管理和追踪开发过程 中危害软件质量以及影响开发周期的缺陷和变化。并对开发过程进行有效地管理和控 制,完整、明确地记载开发过程中的历史变更,形成规范化的文档,不仅使日后的维 护和升级得到保证,而且更重要的是,这还会保护宝贵的代码资源,积累软件财富, 提高软件重用率,加快投资回报。 常见的配置管理工具常见的配置管理工具 正如前面所述,由于软件配置管理过程十分繁杂,管理对象错综复杂,如果是采 用人工的办法不仅费时费力,还容易出错,产生大量的废品。因此,引入一些自动化 工具是十分有裨益的

4、,这也是做好配置管理的必要条件。正是因为如此,市场上出现了大量的自动化配置管理工具,这些工具的实现原理 与基本机制均十分接近,但由于其定位不同,因此各有特点,下面我们就对一些常见 的配置管理工具做一简单的介绍。 元老:元老:CCC、SCCS、RCS上个世纪七十年代初期加利福利亚大学的 Leon Presser 教授撰写了一篇论文,提出 控制变更和配置的概念,之后在 1975 年,他成立了一家名为 SoftTool 的公司,开发了 自己的配置管理工具:CCC,这也是最早的配置管理工具之一。在软件配置管理工具发展史上,继 CCC 之后,最具有里程碑式的是两个自由软件: Marc Rochkind

5、的 SCCS (Source Code Control System) 和 Walter Tichy 的 RCS (Revision Control System),它们对配置管理工具的发展做出了重大的贡献,直到现在 绝大多数配置管理工具基本上都源于它们的设计思想和体系架构。 中坚:中坚:Rational ClearCaseRational 公司是全球最大的软件 CASE 工具提供商,现已被 IBM 收购。也许是受 到其拳头产品、可视化建模第一工具 Rose 的影响,它开发的配置管理工具 ClearCase 也是深受用户的喜爱,是现在应用面最广的企业级、跨平台的配置管理工具之一。ClearCa

6、se 提供了比较全面的配置管理支持,其中包括版本控制、工作空间管理、 Build 管理等,而且开发人员无需针对其改变现有的环境、工具和工作方式。其最大的缺点就在于其价格不菲,每个客户端用户许可证大约需要几千美金,所 以在国内应用群体有限。1) 版本控制ClearCase 不仅可以对文件、目录、链接进行版本控制,同时还提供了先进的版本 分支和归本功能用于支持并行开发。另外,它还支持广泛的文件类型。2)工作空间管理可以为开发人员提供私人存储区,同时可以实现成员之间的信息共享,从而为每 一位开发人员提供一致、灵活、可重用的工作空间域。3) Build 管理对 ClearCase 控制的数据,既可以使

7、用定制脚本,也可使用本机提供的 make 程 序。其最大的缺点就在于其价格不菲,每个客户端用户许可证大约需要几千美金,所 以在国内应用群体有限。 新秀:新秀:Hansky Firefly做为 H a n s k y 公司软件开发管理套件中重要一员的 Firefly,可以轻松管理、维 护整个企业的软件资产,包括程序代码和相关文档。Firefly 是一个功能完善、运行速 度极快的软件配置管理系统,可以支持不同的操作系统和多种集成开发环境,因此它 能在整个企业中的不同团队,不同项目中得以应用。Firefly 基于真正的客户机/服务器体系结构,不依赖于任何特殊的网络文件系统, 可以平滑地运行在不同的

8、LAN、WAN 环境中。它的安装配置过程简单易用,Firefly 可以自动、安全地保存代码的每一次变化内容,避免代码被无意中覆盖、修改。项目 管理人员使用 Firefly 可以有效地组织开发力量进行并行开发和管理项目中各阶段点的 各种资源,使得产品发布易于管理;并可以快速地回溯到任一历史版本。系统管理员 使用 Firefly 的内置工具可以方便的进行存储库的备份和恢复,而不依赖于任何第三方 工具。 开源奇葩:开源奇葩:CVSCVS 是 Concurrent Versions System 的缩写,它是开放源代码软件世界的一个伟大 杰作,由于其简单易用、功能强大,跨平台,支持并发版本控制,而且免

9、费,它在全 球中小型软件企业中得到了广泛使用。其最大的遗憾就是缺少相应的技术支持,许多问题的解决需要自已寻找资料,甚 至是读源代码。 小工作组级:小工作组级:Merant PVCSMERANT 公司的 PVCS 能够提供对软件配置管理的基本支持,通过使用其图形 界面或类似 SCCS 的命令,能够基本满足小型项目开发的配置管理需求。PVCS 虽然 功能上也基本能够满足需求,但是其性能表现一直较差,逐渐地被市场所冷落。入门级:入门级:Microsoft Visual Source SafeVisual Source Safe,即 VSS,是微软公司为 Visual Studio 配套开发的一个小型

10、的 配置管理工具,准确来说,它仅能够称得上是一个小型的版本控制软件。VSS 的优点 在于其与 Visual Studio 实现了无缝集成,使用简单。提供了历史版本记录、修改控制、文件比较、日志等基本功能。但其缺点也是十分明显的,只支持 Windows 平台,不支持并行开发,通过 Check out - Modify - Check in 的管理方式,一个时间只允许一个人修改代码,而且速度慢、 伸缩性差,不支持异地开发。甚至于微软本身也不采用其做为配置管理工具,而是使 用一个名为 SLM 的内部工具。 如何选择配置管理工具如何选择配置管理工具面对这些形形色色,各有千秋的配置管理工具,如何根据组织

11、特点、开发团队需 要,选择切合适用的工具呢?笔者就结合工作实践中的经验与大家做一些交流与探讨。配置管理工具的选择所需考虑的因素大体包括以下几个因素:功能是否符合实际需求?是否符合团队特点?性能是否满意?费用是否可以接受? 售后服务如何?接下来,我们就这几方面逐一深入地探讨: 1)功能是否符合实际需求,是否符合团队特点)功能是否符合实际需求,是否符合团队特点工具就是用来帮助您解决问题的,因此功能是否符合实际需求是最重要的判断因 素。而大多数主流配置管理工具的基本功能都能够满足,因此主要需要判断以下几个 因素: 并行开发支持并行开发支持在团队协作开发过程中,有两种主要的模式:集体代码权和个体代码权

12、。采用集 体代码权模式进行开发时,一段代码可能同时会被多个开发人员同时修改;而采用个 体代码权模式进行开发时,每一段代码都始终被一个开发人员独享,别人需要修改时 也会通过该开发人员完成。而配置管理软件针对这一情况,也采用了不同的策略:Copy-Modify-Merge(拷贝、 修改、合并) 的并行开发模式、Check out-Modify-Check in(签出、修改、签入)的独 占开发模式。在并行开发模式下,开发人员可以并行开发、更改代码,Firefly 会自动 检测到代码冲突,并自动合并,或提示开发人员手动解决。表一、并行开发支持比较表 工具名称说明ClearCaseCopy-Modify

13、-Merge 模式FireflyCopy-Modify-Merge 模式CVSCopy-Modify-Merge 模式PVCSCheck out-Modify-Check in 模式VSSCheck out-Modify-Check in 模式异地开发支持异地开发支持如果你的开发团队分布在不同的开发地点,就需要对工具的异地开发功能进行仔 细的评估了。大多数工具都提供基于 Web 的界面,用户可以通过浏览器执行配置管理 的相关操作,而且有些工具就通过这样的方法来实现对异地开发的支持。这种实现方法有太多的局限性,例如网络(Internet)连接带宽的限制、防火墙以 及安全问题等。真正意义上的异地开

14、发支持,是指在不同的开发地点建立各自的存储 库,通过工具提供同步功能自动或手动同步。这样做的好处是与网络无关,即便各个 开发地点之间没有实时连通的网络,也可以通过 E-Mail 附件等其它方式将同步包发给 对方,实现手动的同步。表二异地开发支持比较表工具名称说明ClearCase提供 MultiSite 模块,通过自动或手动同步位于不同开发地点的存储库的方式,支持异地开发Firefly提供 ServerSync 模块,通过自动或手动同步位于不同开发地点的存储库的方式,支持异地开发 CVS无专门支持的模块PVCS无专门支持的模块VSS无专门支持的模块 值得说明的是,在不同开发点建立各自存储库的方

15、式,主要适用于两个或两个以 上位于不同地点的开发团队协作开发的情况。如果仅是采用虚拟团队合作的方式,开 发人员以个体的形式散落在不同地方,则更适合通过 Internet 直接操作远程的配置管 理服务器。跨平台开发支持跨平台开发支持如果企业需要从事多个不同平台下的开发工作,就需要配置管理工具能够对跨平 台开发提供支持,否则势必会给开发、测试、发布等各个环节带来不便,将使大量的 时间被浪费于代码的手工上传、下载中。 表三跨平台开发支持比较表 工具名称说明ClearCase支持常见的平台Firefly软件本身基于 Java 开发,可在 Windows、Linux、Solaris、HP-UX、AIX

16、等常见平台上使用,平台之间的移植也非常方便CVS支持几乎所有的操作系统PVCS软件本身基于 Java 开发,能够支持常见的平台VSS仅支持 Windows 操作系统与开发工具的集成性与开发工具的集成性配置管理工具与开发工具是编码过程中最常用到两种工具,因此它们之间的集成 性直接影响到开发人员的便利性,如果无法良好集成,开发人员将不可避免地在配置 管理工具与开发工具之间来回切换。表四与开发工具集成性比较表 工具名称说明ClearCase直接与资源管理器集成,十分易用Firefly与常见开发工具无缝集成CVS对开发工具集成性较差PVCS仅支持 Windows 操作系统VSS与 Visual Studio 开发工具包无缝连接,其它开发工具集成性差2)性能是否满意)性能是否满意配置管理工具软件的一些性能指标对于最终的选择也有着至关重要的影响。 运行性能如果开发团队规模不大的情况下,配置管理工具软件的性能不会造成很大影响, 但如果项目规模比较大,团队成员逐渐增多的情况下,其运行性能就会带来很大的影 响。表五运行性能比较表 工具名称说明ClearCase服务器采用多进

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号