技术开发 频道

IBM RBF集成构建解决方案及案例研究

    集中控制分布访问

    团队的沟通问题经常是阻碍发布及时性的一个关键因素。如果没有一个高效的构建和发布自动化系统,配置管理团队对于请求新构建、新测试以及新项目的响应能力会对开发流程产生不利影响。另外,与构建流程脱节的开发人员经常会因为等待构建结果而丧失效率。类似地,如果一个项目不可被重复并且没有很好地进行文档化,会很难确定产品不同版本的信息,重现客户的问题,结果重现客户问题经常变成整个问题修复过程中最花时间的部分。

    Rational BuildForge 通过统一控制及基于角色的安全访问机制可以支持地域分布的开发团队。用户可以将来自许多部门的流程集中在一个统一系统中,然后可以将对这些流程的访问以及这些流程生成的信息扩展到整个组织中任何期望扩展到的范围。统一的配置管理组可以先创建并测试流程,然后将流程的使用权限授予其他相应组的成员,即使这些人员不都属于同一部门。不属于正式配置管理组的个人可以创建他们自己的流程并将其在公司范围内共享。同时管理人员拥有管理控制权,决定谁可以运行某个自动化流程、阅读某个报告或定义一个新流程。

    通过 Rational BuildForge 开发人员可以启动构建项目,及时得到反馈并对新特性或缺陷修改进行测试,但开发人员只能启动那些有权限启动的项目。这种自助服务使得开发人员获得更高的生产效率,减少配置管理团队在响应这类请求方面花的时间。实际上如前所述,这种思路并不局限在构建及发布方面,用户可以将其扩展到想自动化的任何流程。

    通过更频繁的测试周期提供敏捷性

    尽管自动化测试永远不能替代 QA 团队的所有工作,但 Rational BuildForge 可以将有效的自动化测试嵌入到整个构建和发布流程中,并将测试结果在整个组织范围内共享。进而 Rational BuildForge 的自文档特性可以帮助使每个测试周期更加有效,因为每次构建包含了此次构建的过程以及最终的可执行文件所包含的内容等信息。任何迭代化开发流程,例如敏捷开发及其他方法论都要求不断进行的“编码-构建-测试”活动来给开发团队和测试团队提供频繁的反馈。Rational BuildForge 提供了强大的自动化、调度以及源代码集成能力,帮助团队实现持续集成。通过 IBM Rational BuildForge 测试人员可以在许多有关产品的细节信息都已明确的基础上开始测试。

    通过自动化测试检测到的问题可以在 QA 人员得到发布版本之前就可以反馈给开发团队,这样手工测试就可以在自动化测试通过后才开始。
    以前碰到的问题可以很快加以重测,从而加速和改进回归测试流程,以便开发人员和测试人员较少担心引入新问题,而是将精力集中在新问题的修复上。
    可以自动执行压力测试和负载测试。
    通过 Rational BuildForge 的体系结构决定了它可以在所有目标机器上启动测试活动并收集测试结果。
    Rational BuildForge 定制过滤器可以对测试结果进行预处理,用详细的警告或失败列表来加强报告能力。
    物料清单(BOM)报告可以详细报告构建中包含的缺陷修复,因此可以对每个缺陷修复进行测试或者和自动化测试结果进行逐一匹配。
    Rational BuildForge 可以与用户的源码控制系统和缺陷追踪数据库进行集成。
    测试团队还可以将 IBM Rational BuildForge 用于:

    执行冒烟测试。在每次构建后启动一个基本测试集,依据该测试集的成败来确定本次构建是否满足基本要求,是否可以继续后续测试。
    自动将完成的构建安装在多台目标机器上。可以使用 Rational BuildForge 来配置用户的测试环境并通知测试人员这些机器已经准备好运行测试脚本了。
    确定执行哪些测试。Rational BuildForge 系统中的项目都有不同的类别(class)标记,用户可以使用项目类别来决定执行哪些测试。下图是项目类别定义画面,在 Start on entry 可以决定一旦项目类别转为此类后就开始执行的项目,例如一旦一个项目从开发类转为测试类后就开始执行一个测试项目。
    图 13: 项目类别定义

    如果某个开发人员只想执行一个快速构建可以选择跳过测试步骤。
    对于自动调度执行的构建,执行一个冒烟测试以确保主要部分没有问题。
    对于一个生产构建,运行一个完整的测试集合,可能包括扩展性或负载测试。这可能需要非常大的系统资源。
    以上这些特性使得在整个流程中建立更有效率的测试成为可能,因此也就将更高的品质融入到最终产品发布中。

    为集成而进行的产品设计

    从本质上看 IBM Rational BuildForge 实际上是一个将不同应用组合在一起以完成复杂开发任务的解决方案。借助 Rational BuildForge 用户可以轻易地将项目中的不同应用、操作系统命令、批处理文件或外壳脚本混合在一起。

    通过其独特的命令行封装能力,Rational BuildForge 可以对在目标系统上执行的每条命令在执行前创建适合该命令的必要环境。并且用户可以为与系统其他部分集成的命令定义所需的环境。

    除了将不同应用链接在一起这一基本功能以外,Rational BuildForge 也可以与其他解决方案进行集成。

    可以通过轻量级目录访问协议(LDAP)标准与现有的用户数据进行集成,这样就避免了为新的信息系统创建额外的用户登录帐号。
    IBM Rational BuildForge 为常用的源码控制工具、缺陷跟踪工具以及测试自动化系统提供了开箱即用的适配器,这样就可以通过开发活动来驱动信息的更新。例如,BuildForge 和 Rational 配置管理工具 ClearCase 的集成可以在编译前调用 ClearCase 相关功能来扫描版本库的变化,只有版本库有变化时才进行编译。下图示出了创建一个用于源码控制的适配器界面,利用随产品提供的源码控制工具适配器模板可以快速创建一个同源码控制工具(如 ClearCase)的接口(适配器),将该接口与具体的项目链接在一起后就可以在项目活动开始前调用 ClearCase 的功能(如扫描上次编译时间以来版本库内发生的变化)了。
    图 14: 创建一个用于源码控制的适配器

    通过 IBM Rational BuildForge 的 API 接口用户可以在自己的信息系统中从其他应用程序调用 BuildForge 的功能,用户可以进行细粒度的流程控制。
    借助上面这些功能,Rational BuildForge 可以成为用户开发环境中的关键组成部分,同时成为企业信息系统中的重要成员之一。

    开箱即用集成的价值:IBM Rational 软件开发工具

    IBM Rational BuildForge 标准版和 IBM Rational BuildForge 企业版都可以配有开箱即用的与 IBM Rational 软件开发平台(SDP)的紧密集成,可以快速给客户带来价值。通过集成使用这些产品,公司可以管理、自动化和跟踪从需求到生产整个开发生命周期。这些集成包括:

    IBM Rational BuildForge 标准版和 IBM Rational BuildForge 企业版都可以配有开箱即用的与 IBM Rational 软件开发平台(SDP)的紧密集成,可以快速给客户带来价值。通过集成使用这些产品,公司可以管理、自动化和跟踪从需求到生产整个开发生命周期。这些集成包括:
    IBM Rational ClearQuest。Rational BuildForge 自动检测用于特定构建过程的 ClearQuest 活动,一旦一个构建成功完成,Rational BuildForge 可以自动将相关联的缺陷状态置为已解决状态,并在 ClearQuest 中将这些已解决的缺陷关联到构建记录上,这样就可以轻松在 ClearQuest 中查出某次构建所包含的缺陷修复。Rational BuildForge 还可以通过与 ClearQuest 的接口创建一个部署单元(deployment unit),用于传递给使用 IBM Tivoli Provisioning Manager 的部署工程师。
    IBM Rational Application Developer。通过在开发人员使用的 Rational Application Developer 集成开发环境中提供对构建流程的受限访问,Rational BuildForge 打破了开发与配置管理之间的隔阂,从而允许开发人员在进行小组级构建之前即可在自己使用的集成开发环境中运行预先定义好的构建流程并立即得到结果,从而达成更高质量和更及时的发布。下图是嵌入到 Rational Application Developer 中 BuildForge 的透视图。
    图 15: 嵌入到 Rational Application Developer 中 BuildForge 的透视图

0
相关文章