UML软件工程组织

 

 

Rational 高管谈强化 SOA 中的“A”
 
Scott Laningham (scottla@us.ibm.com), Podcast 编辑, IBM developerWorks
 

以下是 developerWorks Podcast 编辑 Scott Laningham 与 IBM Rational 高管 Jamie Thomas、Lee Nackman 和 Scott Hebner 进行 Podcast 访谈的谈话文本。

 developerWorks:您正在收听的是 developerWorks 访谈,其中播出我们与来自各个领域的技术名人和思想领袖就技术专业人员感兴趣的主题所展开的对话。我是主持人 Scott Laningham。我们今天邀请的嘉宾将讨论 Rational Software Delivery Platform 桌面工具的 Version 7 发行版:全套基于 Eclipse 的解决方案和最佳实践流程。今天来自 IBM Rational 的嘉宾分别是 Rational Software Development 副总裁 Jamie Thomas、Product Development and Customer Support 副总裁 Lee Nackman 和 Marketing and Strateg 副总裁 Scott Hebner。非常感谢诸位抽时间参加今天的访谈。

Thomas:谢谢,Scott。非常高兴来到这里。

Nackman:噢,非常高兴再次与您交谈,Scott。

Hebner:是的,毋庸置疑,我对此期待已久。

developerWorks:Scott Hebner,也许您可以从该发行版大致有哪些重要特性和新功能开始讨论。

Hebner:好的,这实际上是一次非常重要的发布,因为它完成了 Software Delivery Platform 的 Version 7 的交付。在年初,我们已宣布推出该组合的团队版本;现在发布的是桌面版本。实际上,此次发布的主题和新功能全都与如何在诸如 SOA 等更模块化的环境中强化体系结构有关——尤其是在软件、服务和系统的交付方面。本质上,新功能将帮助客户利用可靠的体系结构设计在地理上比较分散而且通常采用 SOA 的环境中更快、更成功地交付服务——尤其是在体系结构完整性方面。因此,如果您从总体上考虑所有新功能,那么我们本质上是在强化全球团队,以更好地实现和管理具有经过改进的生命周期质量的软件和系统体系结构。

在新功能方面,我们要考虑四个关键事项。其一,由于可靠的体系结构设计和服务交付及维护的自动化,它将加速 SOA 成果的实现。其二,它将确保全局体系结构的完整性以及所交付软件的质量,尤其是包括对诸如 SAP、Oracle 和 Siebel 等打包应用程序的新的测试支持。我们正在采用的更简单、模块化的新系统开发方法也非常重要,对于正在构建高度耦合的系统和软件的客户而言尤其如此,例如航空航天和国防领域。在这些领域中,您需要为导弹系统构建导航系统,或者构建用于移动电话或模拟碰撞的系统和软件,而上述系统开发方法将为这些工作提供新的硬件和软件建模技术和标准支持。最后,您将看到可用性方面的大量增强功能,这些功能不仅利用 Eclipse 社区在标准方面的最新和最好的创新(即 Eclipse 3.2),而且有些 IBM 创新技术还允许我们的客户通过更大程度的模块化,在桌面上构建出他们需要的环境,同样,这一切都基于 Eclipse 平台。

综上所述,它是在强化 SOA 中的“A”,我们希望这将帮助客户在全局体系结构、设计和质量方面扩展他们的业务。

developerWorks:好极了——非常全面。谢谢。我听到您使用了术语“交付”——在“交付平台”中。以前我一直听说的是“开发平台”。这是一个新术语吗,或者它只是我以前未曾注意到的一个不同事物?

Hebner:我们一直在使用“交付”这个词,因为我们所能交付的价值和为客户提供的帮助在不断发展中。当您考虑我们正在为其提供产品和服务的人时,您是否想到,正是这些人负责向企业交付软件。而交付软件不仅仅是开发新软件,还可以利用现有的 Web 服务,可以在打包应用程序中进行构建、扩展和集成。因此当您考虑所交付的功能时,它将帮助客户根据他们的战略业务需要来更有效地交付软件。

同样,“交付”的概念是您在这方面所尝试实现的最终目标。您可以开发它,可以外包它,可以对服务进行自定义,可以在打包应用程序场景中进行构建和集成。因此,我们希望确保它不仅与新的自定义应用程序的软件开发有关,而且还与如何更有效地交付软件这个更广泛的概念有关。

developerWorks:我明白了——术语的细化——只是为了使其中交付的内容更加明确,即该平台中提供了什么功能。

Hebner:非常正确。但是在软件开发方面,它仍然与以前一样全面——如果不是更全面的话。但同样地,您可以做的事情的范围将更加广泛,而不只是开发新代码。

developerWorks:Lee,我是否可以问一下,这如何对六月份团队产品的 Baltic 发布形成补充呢?

Nackman:它实际上完善了该发布。让我们仅讨论您和 Scott 刚才讨论的“交付”这一概念吧。在 Baltic 发布中,我们发布了用于协调总体软件生命周期的功能。因此这不仅仅与开发代码有关,而且还与您如何进行体系结构建模、如何进行需求收集、如何将需求与测试用例和测试结果联系起来,以及如何将它与不同构建版本联系起来有关。再者,您如何利用已通过测试的良好构建版本并推出和部署它们呢?这一切都与交付有关。

当然,Caspian 所做的工作实际上是对该功能进行补充。因此,正如 Scott 所提到的,它增添了用于建模的新功能和用于服务建模的更好功能。它增强了我们的测试功能,因此我们可以支持 SAP 和 Siebel 的打包应用程序测试,所采用的方法是以前在 Baltic 时间期限内所无法实现的。它使得将我们的工具部署到更大的团队变得前所未有的容易。Scott 提到了经过改进的可用性的整体思想。我们从客户处获悉的重要信息之一是,他们希望在实际部署工具方面拥有更多的灵活性,我将他们称之为从业人员而不是开发人员,因为有许多不同类型的人员在使用这些工具。我们已在实现该类部署的能力方面迈出了重要的步伐。我实际上将 Caspian 视为与 Baltic 的强强联合的一部分。

developerWorks:Caspian 是我们在这里讨论的 Version 7 的内部术语,对吗?

Nackman:不错,Baltic 同样也是团队产品的 Version 7 的内部术语。

developerWorks:好的。您刚才谈到了一些这方面的信息,但是在 IT 和业务中,成为新发行版推动力的其他发展变化是什么呢?

Nackman:您知道,客户正在非常努力地提高他们交付业务价值的能力。因此我们 IT 业的客户正在设法更快地响应客户所拥有的业务模型的变更,这意味着 IT 组织必须能够对总体生命周期有良好的控制。当需求更改或新的需求出现时,他们如何管理该需求的实现呢?他们如何管理该需求实现的测试呢?他们如何管理优先顺序?以及所有诸如此类的问题。因此,我们在该软件开发平台中做的工作实际上集合了全套广泛的功能以满足此类挑战。

现在,另一个问题是,这不仅与 IT 有关,而且还与系统开发有关。我们从系统客户处获得了非常类似的反馈,他们不仅关心代码开发,而且还关心他们的软件如何与硬件一起构成他们正在开发的整个系统。在这个方面,真正重要的地方在于,拥有对体系结构进行建模的方法以及了解软件如何与所属的更大系统交互的方法。因此,我们正在同时从 IT 和系统方面看到这种跨行业的推动力,即实现更高的响应能力和更快地完成软件与它们所做工作的其他部分集成的能力。

我将指出的又一个问题是,我们看到许多客户(包括 IT 和系统两方面的客户)都需要能够进行文档记录和为审核做好准备,以便可以真正跟踪软件的整个生命周期。因此在法规遵从方面,他们如何确切知道他们部署了什么软件呢?当他们部署新软件时,需要满足什么要求和修复什么缺陷,以及如何对此做文档记录?谁批准了该新代码的部署,是如何对其做文档记录的?Caspian 和 Baltic 这两个版本的各个部分就是这样组合的,因为 Baltic 实际上提供了用于完成该工作的大量基础设施,而 Caspian 则提供了适应该基础设施的专业工具。

developerWorks:我想现在最好让 Jamie 加入这方面的讨论。Jamie,您是否可以更详细地讲一下到目前为止已提到的一些内容:面向服务的体系结构、跟踪、测试等?也许您可以为我们详细介绍一下这对开发人员日常工作的影响?

Thomas:好的,Scott——非常明显,我们希望为开发人员解决一个关键问题,即帮助他们在这个 SOA 体系结构领域中更好地进行开发,对吧?因此我们将集中于两个关键方面。其中一个方面主要围绕整个生命周期中的体系结构变更的管理,另一个方面当然是在整个生命周期中管理质量问题。我们认为,开发人员真正希望能够作为开发过程一部分来实现的一些关键之处在于,确保他们能够在整个生命周期中跟踪构件:从需求阶段一直到建模阶段,再到代码生成,当然还包括了解如何系统地测试代码并在生产环境中部署它们。因此,当我们讨论端到端的生命周期时,我们实际上是在讨论整个资产的总体管理。

提供某些关键功能,例如提供具有可跟踪步骤的能力,这当然是能够遵守当今跨行业的许多标准的关键要素,也是治理的关键要素,治理通常肯定与 SOA 体系结构密不可分。能够更好地利用我们围绕 BuildForge 引入 Rational 的一些新功能,以真正实现此端到端生命周期的部署方面,能够实现各种生产环境中后端构件的自动部署,能够在这些环境中获得可重复的结果并了解生产模式,以及能够利用 Rational 工具集来相应地重现这些模式。

我认为,对于开发人员而言,非常关键的另一个要素就是完全集中于工作效率。我们对标准(包括基于 Eclipse 的标准、UML 标准、Web 服务标准,当然还包括我们对 Java 标准的强大支持的延续)重视程度的不断提高是我们随 Caspian 更新版本一起发布的产品系列的一个关键要素。我认为,将提高开发人员工作效率的一些重要更改不仅体现在标准方面,而且还体现在产品如何实际安装和反映各个桌面方面。所以,有些关键要求是开发人员期待已久的。

developerWorks:您提到了随该发行版一起推出的一些经过增强的测试功能和产品。如果您愿意的话,请告诉我们一些更详细的信息。

Thomas:好的。我们认为,在质量管理方面,对于许多公司真正实现我们所称的“可重复结果”和能够更好地预测将在生产环境中发生的事情而言,测试和测试的自动化无疑是绝对关键的。

我们有两个增强的产品,即 Rational Performance Tester 和 Rational Function Tester。对于 Performance Tester,我们已在其中集成了大量 Tivoli? 系列产品,以确保我们能够从根本上在 Rational 和 Tivoli 之间共享信息,而 Tivoli 则主要集中于部署环境。通过能够共享 Tivoli 在监视时确定的信息,他们就可以将该信息输入到 Performance Tester 中,并且能够深入到某个特定的性能瓶颈和某些区域,也许我们知道那些区域存在某个需要分析(当然从应用程序开发的角度来说是需要解决)的问题。

整个端到端生命周期管理包括监视方面,能够更全面地诊断问题并快速修复问题是当今体系结构的关键课题,当然也是 SOA 的关键课题。我们认为,对测试组合的这些增强,将极大地提高客户更有效地解决其中某些问题的能力。

developerWorks:这些都是关于您所讨论的治理的重要信息的一部分,是吧?

Thomas:确实如此。所以我认为,我们实际上是在考虑一个生命周期,它从需求定义开始,包括早期在业务和体系结构方面的建模,合作开发,一直到构建资产,然后是能够了解所构建的资产,当然包括测试那些资产,并了解它们在生产环境中的执行情况如何。因此在 Rational 和 Tivoli 组合之间集成的能力对于实现最终目标非常关键。

developerWorks:Jamie,非常感谢您告诉我们这一切。我们就不再挽留您了,因为我们知道您还有其他事情,但是我们非常感激您今天抽时间参加我们的访谈。

Thomas:非常感谢,Scott,我期待将来有机会再与您和听众们一起交谈。

developerWorks:肯定会有机会的。再介绍一下,这是 Rational Software Development 副总裁 Jamie Thomas。

Scott Hebner,现在我们是否可以回到您刚才讨论的话题。听了 Jamie 所介绍的内容和到目前为止已讨论的其他内容后,我感到有些疑惑,您是否能够更多地谈一下这个发行版如何增强和加强了对面向服务的体系结构的推动。

Hebner:好的,SOA 与模块化软件和提供业务灵活性的能力密切相关,其具体方法是支持以更加模块化的方法交付、维护、集成和构建新软件。我们从客户处了解到,他们从事解决方案开发和交付的方式有非常大的改变,并且在许多方面,有一些实际情况需要引起客户更多的重视……例如,将已存在的业务体系结构和业务流程与支撑它们的实际 IT 体系结构和服务模型联系起来变得至关重要,只有这样您才能自动交付服务(这些服务符合业务流程模型、与它们保持一致并相互协调)——尤其是当您开始广泛使用服务时。

除此之外,还需要应对解决和控制全局分布式环境中所固有的风险。客户开始管理越来越多的服务,这些服务的数量非常大,您需要从体系结构上确保他们的服务能够很好地彼此协作,并确保您能够对服务、实际代码和应用程序与设计进行协调。当然,虽然 SOA 概念在某种程度上推动了保持总体组织效率所需要的更大程度的控制和治理,但我们还需要确保为开发人员提供灵活性,并使他们能够控制如何构建自定义桌面,在越来越多的开源元素被引入的情况下尤其如此。

综上所述,SOA 所带来的分散性和模块性实际上增加了对用于体系结构设计、建模和生命周期质量管理的结构化方法的需要。这就是该发行版中的新功能为开发人员和 SOA 项目中涉及的所有客户提供的好处。

developerWorks:该发行版的业务合作伙伴支持如何?您对此是如何看待的?

Hebner:好的,正如我前面提到过的,Version 7 中的这些产品所带来的新价值的关键部分之一是更大程度的模块性,这体现在能够使用不同功能元素根据开发人员的需要对其进行配置。其中一部分是允许和支持业务合作伙伴构建平台扩展。我们拥有整套“Ready for Rational”计划,我们还有一大群新的合作伙伴,他们已经启用了 Version 7 桌面产品中的新功能,例如针对开源软件重用的 Black Duck、系统交付和嵌入式开发扩展 Clockwork、帮助现代化 SOA 环境中的现有应用程序的 Exaltech 软件。

在这个方面,业务合作伙伴随着时间的推移而变得日益重要,因为他们帮助提供我们的客户在桌面产品中需要的一些附加价值和功能,并提供一系列更广泛的咨询服务,这将帮助客户不仅在 SOA 方面取得成功,而且在诸如系统开发等任何类型的开发方面都取得成功。

developerWorks:好的,讲得非常好。你们几位已经让我们很好地了解为什么这是一个非常重要的发行版系列,以及它们对所涉及到的每个人代表着什么。还有什么其他的想法吗?是否还有您希望与大家分享但是这里尚未提及的任何内容?

Nackman:我只想提两件事,我认为它们对于该发行版非常重要。Scott 已经提到,该发行版基于 Eclipse 3.2。我们从许多客户处获悉的另一个信息是,“我们已经在系统中使用 Eclipse,我希望你们的工具只是作为插件安装在我们已经部署的 Eclipse 之上”。这就是 Caspian 中的另一个可用性特性。因此我们实际花费了大量精力来确保 Caspian 发行版产品与现有的 Eclipse 部署、现有的 Java Virtual Machine 部署非常良好地协作。这就是该发行版的另一个重要主题。

我想提到的另一件事是对最新版本的 WebSphere Application Server 的支持。这是该发行版中的 Rational Application Developer、Rational Software Architect 产品向前迈出的重要步伐。

Hebner:我也仅对此作一点补充。它实际上是 Eclipse 的五周年纪念。现在,Eclipse 在全世界有 150 多家成员公司,用户超过 240 万。它是近 1,300 种产品的基础。啊,五年——真是光阴似箭。但它似乎并不是虚度光阴,而是奋勇前行,该社区正在继续成长。它对整个软件业有实实在在的影响。因此,正如 Lee 刚才所提到的,该发行版的发布非常及时,这是我们对 Eclipse 的支持,体现了我们如何希望真正利用它来提供可用性、业务合作伙伴支持和适应我们产品的能力。同样是在已经存在的更大、更广泛的社区中发挥作用。它是一个非常重要的里程碑。五年!10 年前我们甚至还不知道它。

Nackman:是的,绝对正确。该发行版的另一个部分是针对 Eclipse 的服务解决方案,因为同样地,我们看到有许多客户在其组织中使用 Eclipse,他们希望 IBM 支持他们对 Eclipse 的使用。这就是我们在该发行版中引入的一个新功能。

Hebner:Scott,我想我们应该在这里提最后一件事作为本次访谈的总结,也就是我们今天实际讨论的产品是什么?我们提到了作为 Software Delivery Platform Version 7 一部分的桌面产品。更明确地说,我们讨论的是 Rational Software Architect、Rational Software Modeler、Rational System Developer 和 Rational Application Developer,这些是集成开发环境,当然还有我们的测试和质量管理产品套件,例如 Rational Performance Tester 和 Functional Tester 以及 Manual Tester。当然,该发行版还附带了一些套件和程序包。但是当我们谈到桌面产品时,本质上就是指我们在这里讨论的配置。

developerWorks:正如您所说的,通过其 Eclipse 部分,该发行版实际代表了一条非常顺利的成功之路上的另一个重要转折点,是吗?

Hebner:是的,的确如此。您知道,如果没有所存在的社区,没有所出现的大量创新,则为我们客户增添的价值将大不相同,因此,我们无疑会随着时间推移而继续投资并进行拓展。

developerWorks:Lee Nackman、Scott Hebner,再次感谢你们两位参加今天的访谈。与你们交谈总是非常愉快。

Nackman:谢谢,Scott。

Hebner:谢谢。

developerWorks:再介绍一下,我们今天的嘉宾分别是 Rational Software Development 副总裁 Jamie Thomas、Product Development and Customer Support 副总裁 Lee Nackman 和 Marketing and Strateg 副总裁 Scott Hebner。感谢每一位收听 developerWorks Podcast 的听众,我是 Scott Laningham。下次再会。

 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号