创新触手可及: 一个 IBM 测试机构如何使用 WebSphere CloudBurst 来提高效率和敏捷性

考虑新解决方案时,您可能会对他人如何有效利用该解决方案为其组织带来价值感兴趣。如果您正在考虑 IBM® WebSphere® CloudBurst™,那么请继续阅读。本文介绍 IBM WebSphere Application Server 测试团队如何采用和实现 WebSphere CloudBurst 来提高敏捷性和效率,同时降低他们的组织中的成本。 本文来自于 IBM WebSphere Developer Technical Journal 中文版

Dustin Amrhein, 技术专员, IBM

Dustin Amrhein 是 IBM 的 WebSphere Application Server 的开发团队成员之一。其中 Dustin 负责 Web Services 基础架构和 Web Services 编程模型的开发。此外,Dustin 还带领一个团队进行 Java RESTful 服务框架的开发。Dustin 目前的角色是 IBM WebSphere 产品的技术专员。他目前关注于实现云计算功能的 WebSphere 技术,包括 WebSphere CloudBurst Appliance。


developerWorks 专家作者

Robbie John Minshall, WebSphere 性能开发, IBM

Robbie John Minshall 目前从事 IBM Software Groups Service Orientated Architecture 的 Standard Data Objects 开发工作。Robbie 来自新西兰,获得 Johns Hopkins University 的数学和计算机科学双学位荣誉学士学位。Robbie 的专有技术包括应用程序基准测试和可伸缩性、自主性能代理、J2EE 环境中的健康状况和系统监控,包括内存泄露检测。



Pinwu Xu, WebSphere 系统和软件工程师, IBM

Pinwu Xu 已经在 WebSphere Application 组织中工作了 5 年时间。他擅长 J2EE 应用程序开发以及系统压力和可伸缩性分析。最近,Pinwu 将他的开发和测试经验带到部署和推动我们的私有云项目的用户案例中。



2010 年 10 月 11 日

每一期创新触手可及从开发人员和从业人员的角度提供了有关新兴技术主题的新信息和讨论,并探秘了前沿 IBM® WebSphere® 产品的幕后知识。

“给我讲个案例”

尽管在实验室工作,我们很珍惜走出去与我们的客户直接对话的机会。最近,我们的许多谈话都围绕云计算,具体而言,是 IBM WebSphere CloudBurst™ Appliance 和 IBM WebSphere Application Server Hypervisor Edition 虚拟映像。

通常,这些讨论都围绕这些解决方案的技术功能和实现方法。我们通常讨论 WebSphere CloudBurst 和这些特殊虚拟映像如何应用于他们心中的场景。然后,似乎在稍加思索之后,他们总是会说:“这听起来都不错,但告诉我谁正在使用它,他们从中获得了哪种价值?”

我们喜欢听到这种问题。

一方面,我们拥有稳固并持续增长的用户生态系统,那些用户从 WebSphere CloudBurst 解决方案获得了真正的价值。在众多好处中,我们的用户见证了这些解决方案在降低成本、提高敏捷性和严格调配业务价值和技术行为方面的价值。尽管每个用户案例都清晰地突出了这个设备的价值,但其中有一个案例我们认为最有代表性。那就是我们自己的 WebSphere Application Server Continuous Test 组织如何使用 WebSphere CloudBurst 来降低成本和克服在企业范围内采用敏捷开发实践方面遇到的困难。(没错,我们使用我们自己的产品。)


敏捷开发是一个旅程,而不是一个决策

如果您从事或关注软件开发行业,您可能会注意到敏捷开发越来越受欢迎。最近几年,IBM 也加入了向更敏捷开发转变的征程。这个征程中的一个团队是 WebSphere Application Server 开发团队,他们取得的成效是显著的。在短短几年内,该团队就开发并交付了几个 WebSphere Application Server 特性补丁,这个领域内的一些产品的更新,以及 WebSphere Application Server V8 的 alpha 版本。如果没有敏捷开发流程提供的速度,这样丰硕的成果将很难或不可能实现。

当然,众所周知,如果软件质量很差,那么快速软件开发和交付就一无是处。快速交付低质软件有点像快速准备厨房订单,结果却发现菜品还没有烹饪熟,口味极差。

为确保菜品 “完全煮熟”,开发和测试团队必须建立一种机制来在整个开发过程中确保企业级代码质量。为此,组织应该:

  • 建立严格的测试标准,要求编写一些自动化测试案例,这些测试案例针对类似于生产的 WebSphere Application Server 拓扑执行。
  • 扩展传统测试驱动开发方法系统,确保系统回归测试套件随所有新特性和补丁演变。
  • 创建 Continuous Test 团队,该团队负责在每个 WebSphere Application Server 版本上执行一个全面回归测试。
  • 为客户类应用程序创建自动测试套件,在整个开发周期内执行压力和性能测试。

建立一组职责后,组织主要关注实现每个职责,并迅速意识到,要实现这些任务,他们需要一个自动化、快速和统一的方法来设置 WebSphere Application Server 环境。为此,Continuous Test 团队:

  • 开发了一个自定义硬件租用应用程序,以便测试人员能够检查用于测试工作的资源。
  • 使用 IBM Tivoli® Provisioning Manager 自动化实验室机器上的操作系统安装。
  • 为 WebSphere Application Server 构建安装和配置脚本。

这种方法反映一个用于设置测试环境的高度自动化和有效的流程。这种方法允许团队同时测试高达 8 个(不错,就是 8 个)不同的 WebSphere Application Server 版本。另外,团队还能够使通过这个流程创建的 WebSphere Application Server 环境每天接受超过 200 万个测试。总之,团队执行的测试支持快速开发,同时保持杰出的质量。

尽管团队在执行他们的所有职责方面取得了巨大的进步,他们总是关注能够进一步提高效率的方法。具体而言,团队确认了以下需要改进的领域:

  • 可用性:尽管高度自动化,但这些 WebSphere Application Server 测试环境的设置过程仍然包含容易出错的元素,原因是涉及的元素的复杂性和数量。这将导致配置环境时出现 20-50% 的失败率。
  • 利用率:与这个行业中的许多测试团队一样,他们体验了较低的硬件利用率(平均 6-12%)。
  • 可管理性:测试组织与许多小型、敏捷的团队合作。在这些团队之间有效管理和共享硬件资源同时确保足够的利用率是一个难题。另外,很难确保所有测试团队都使用标准化的、认证的 WebSphere Application Server 配置。

引入紫盒(purple box)

改进这三个领域的愿望促使 Continuous Test 团队采用 WebSphere CloudBurst。通过使用这个设备,测试组织利用单个设备,以一种非常快速统一的方式提供完全配置的 WebSphere Application Server 环境。这个设备支持相同的测试应用程序,以及通过其他方式实现的 WebSphere Application Server 环境,它甚至支持他们使用现有的配置脚本来为那些应用程序安装和配置资源。具体而言,它对以下三个焦点领域提供了一个真正的提升:

  • 可用性:使用 WebSphere CloudBurst,配置失败的数量从 20-50% 降到 5% 左右。剩余的配置失败的主要原因是耗尽云中的容量,WebSphere CloudBurst 使得定位和纠正这个问题很容易。另外,这些环境比使用 WebSphere CloudBurst 前更快可用。团队将已配置的 WebSphere Application Server 环境(包括操作系统)的提供时间从 3 个小时减少到 20-30 分钟。
  • 利用率:对于由 WebSphere CloudBurst Appliance 管理的资源,硬件利用率从 6% 提高到 60%。这是测试组织强调的一大要点,因为与当今的其他组织一样,他们采购新资源的预算有限,意味着他们必须用现有资源完成更多任务。这样大幅地提高利用率肯定是在正确方向上迈出了一步。
  • 可管理性:WebSphere CloudBurst 对硬件和软件资源提供简化的管理功能。测试团队使用 WebSphere CloudBurst 命令行界面自动化他们的云资源的增长和收缩。他们还通过自定义映像(经由扩展捕获)、自定义模式和他们自己的脚本包提供标准化的、统一的 WebSphere Application Server 环境。通过构建一组认证的模式并稍后授予其访问权,测试组织确保由 WebSphere CloudBurst 分发的所有环境都满足组织的安全要求并遵守其团队对 WebSphere Application Server 环境的最佳实践和标准。另外,对云计算组的使用使团队能在必要时精细地划分和管理资源。

描述 WebSphere Application Server 开发和 Continuous Test 小组如何使用 WebSphere CloudBurst 构成了一个不错的案例,因为它回答了我在与客户讨论过程中经常遇到的问题:

  • 是的,您可以在 WebSphere CloudBurst 分发的环境中满足组织安全策略的要求。
  • 是的,您可以在 WebSphere CloudBurst 中利用您在 WebSphere Application Server 配置脚本编写方面的现有投资。
  • 是的,您可以将 WebSphere CloudBurst 用于生产目的(尽管是一个测试组织,但这肯定是用于生产、关键路径)。

另外,以这种能力使用 WebSphere CloudBurst 清楚地展示了此设备可交付真实、有形的价值:

  • 除了可以计量的可用性、利用率和可管理性方面的提高外,WebSphere CloudBurst 在被采用的第一年就提供了明显的直接成本节约。
  • 此外,WebSphere CloudBurst 在消除采用敏捷开发的障碍方面发挥了重要作用。从专门的回归循环和团队迅速转换到敏捷开发为该组织节约了大量人力成本。

与这些节约一样、甚至更令人印象深刻的是,这个团队制定了一个渐进的 WebSphere CloudBurst 采用计划,这意味着,第一年这个设备仅仅管理实验室内 6% 的资源。而且,这个有效的渐进采用计划意味着,为了实现它的好处,这个设备不会强制执行一个破坏性的替代方法。


结束语

当我们有机会和用户谈论 WebSphere CloudBurst 时,我们解释说它提供了一个革命性的方法来创建和管理 IBM 中间件应用环境。这里的 “革命性” 的意思是一个更新、更好的看待传统问题的方法。WebSphere CloudBurst 只向您提供那种方法,但这里讲述的用例强化了这个事实。如果您是一位 IBM 和 WebSphere 中间件用户,请您自己研究一下这个设备,看看它能给您的组织带来什么样的潜在价值。

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere, Web development
ArticleID=555227
ArticleTitle=创新触手可及: 一个 IBM 测试机构如何使用 WebSphere CloudBurst 来提高效率和敏捷性
publish-date=10112010