IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope:Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    

developerWorks 中国  >  Rational  >

Mike Devlin 和 Danny Sabbah:Rational 领导者分享他们的远见卓识

由 Grady Booch 进行的采访

developerWorks
文档选项

未显示需要 JavaScript 的文档选项


对此页的评价

帮助我们改进这些内容


级别: 初级

Grady Booch , IBM Fellow, Rational 软件

2005 年 9 月 07 日

从总经理 Mike Devlin 到 Danny Sabbah,关于 Rational 品牌的领导变化给了 Grady Booch 一个与两位领导讨论他们的目标、造诣和在软件开发领域见解的机会。这些访问提供了对 Rational 历史的洞察和 IBM 软件开发品牌的未来。

IBM Rational 软件的总经理 Mike Devlin 在处于企业领导地位二十四年后,并将迭代软件开发实践纳入 IT 规划中之后,退休了。接任 Rational 总经理职位的是 Danny Sabbah,从前是 WebSphere 品牌开发副总裁,并且最近是 IBM Software Group Strategy 的领导。

1981 年 Mike Devlin 与 Paul Levy 合作建立了 Rational 软件公司。公司着手创建一个商业化的可用环境,用于改善与软件开发相关的过程 —— 一个导致统一建模语言(Unified Modeling Language,UML)、Rational Unified Process(RUP)和许多简化当今软件工程可接受的最佳实践工具的目标。作为公司成功的标记,2003 年公司被 IBM 收购,并且现在是 IBM 软件集团五个主要品牌中的一个。

Danny Sabbah 于 1974 年加入 IBM,并在 1981 年取得了计算机科学的博士学位。在进入 IBM 软件集团成为体系结构和工具开发的副总裁之前,他致力于远程通信技术、人工智能、程序设计语言和软件技术。在 90 年代晚期,他领导一支交付 WebSphere Web 应用程序服务器的团队,并作为 WebSphere 产品开发的副总裁,他负责 IBM 应用程序开发工具和 IBM Web 及业务集成软件的体系架构和策略。

Rational 指挥棒从 Mike Devlin 传递到 Danny Sabbah(两人都是软件开发舞台中的受尊重的预言家)引出了采访 IBM 软件开发产品的领导者的离开和进入的历史性时机。谁能够比 Grady Booch 更好地引导该访谈,谁在 US Air Force Academy 时就和 Mike 一起工作,谁自从 Danny 在 IBM 开始其杰出事业时就知道 Danny?

随后 Grady 的问答部分不仅阐述了两位领导者的个性,还阐述了 Rational 继续经历软件开发的复杂性的辉煌历程。我想您会认同这些对 Rational 软件的过去和未来的看法。

—— Mike Perrow

对 IBM 软件集团 Rational 软件品 退休的总经理 Mike Devlin 的问题

Grady Booch:Rational 已经推行现代化迭代软件过程多年了。您认为迭代开发是当今的主流吗?

Mike Devlin:现在,迭代开发是通用的行业最佳实践。很少客户会反对实现迭代开发的目标,因为它不仅为团队提供了一个新的系统开发的可靠途径,而且还提供了一个增量改进现有软件系统的过程。然而,实际上只有三分之一的客户会实践真正的迭代开发。在过去的二十几年里,我们积极主张的主要部分是帮助客户将他们的开发过程转变到采用更多的现代方法上,如迭代和基于资产的开发。

GB:Rational 对软件过程领域产生了什么样影响?RUP 形成了工具的集成吗,或反之亦然?

MD:Rational 从最早的时候起就是思想带头人并且对软件工程的方向有着重大的影响。回到 80 年代早期和中期,我们的许多客户处于航天和国防部门。引入迭代开发是一个给予所需的所有文化变更的挑战。在那时,迭代开发真正地迈出了联邦收购规则(Federal Acquisition Regulation)和铭记瀑布生命周期模型的相关的联邦航空局(FAA)和国防部(DoD)标准(且他们铭记功能分解,并且阻碍实现如数据抽象、信息隐藏、封装和现代面向对象程序设计(OOP)的思想)。与客户合作,我们最终能够改变标准以真正促进迭代开发和现代化的体系结构。

类似地,在面向对象分析和设计的早期,我们面临抵触标记和标准的零碎市场。我们组织完成了一个单一的行业标准,使 UML 成为了业界的规范。第一步涉及将思想带头人(也是市场带头人)作为“三个朋友”引入到 Rational 中:你,Grady(你从最开始就在 Rational)、Jim Rumbaugh 和 Ivar Jacobson。甚至更多的挑战得到所有主要的行业参与者(Microsoft、IBM、HP 等等)的支持。一旦我们为 UML 巩固了单一的方向并实现了市场领导,就很可能建立正式的 OMG 标准。

RUP 为获取我们所有的经验和最佳实践提供了框架。然后通过在工具中支持 RUP,我们可以使客户实现那些最佳实践。RUP 明确地影响了我们的工具,但可用的工具技术实践影响了 RUP 也是事实。

GB:众所周知 Rational 有对多种平台支持的历史,是什么吸引您到 IBM 来?

MD:客户需求促使 Rational 支持多种平台(包括其他除了 Microsoft 和 IBM 的平台)。然而,我们需要转移到单一的技术体系结构以减少开发成本并使我们在市场中运转的更快。只有 IBM 提供能够支持多平台的开放技术体系结构并允许我们加速开发活动。所以选择是明确的 —— 转向 IBM 是对我们的客户和我们的业务都正确的事情。

GB:为什么“客户成功”是您销售模型中的哲学,并且您是如何在该主旋律下稳固住企业文化的?

MD:当我们创建 Rational 时,对我们来说很清楚的是,客户成功是业务的核心,几乎是一个基本的完整性问题。我们感到我们的技术可以对软件的经济情况产生巨大的影响,但前提是在客户成功地使用技术时。

确保客户成功也是与自身利益有关的。我们早期的客户是大型的航天和国防承包商以及大型的电信设备公司。这些都是集中的市场,任何出现的失败都会通过口头形式快速地传遍整个行业。作为一个小型的公司,确保客户成功对我们来说是一个生存性的问题,因此它自然地成为我们的文化和我们做业务的方式的中心。

通过指出我们的人员和专业技术至少与工具本身一样对客户的成功(及延续的购买决定)是具有有决定意义的,早期的客户对此进行了加强。这导致我们形成这样一个模型,对应每个销售人员都有三个领域内的技术人员(包括现在所谓的实验室服务)。每个经理都了解,成功的客户会以更低的成本带来更多的业务。我们客户的成功再一次与我们自身的成功相结合。

要将其制度化,我们首先建立一个(简单的)领域度量系统,在此(五个中的)第一个量度是客户成功。这是管理者的主观评价,但由于领域管理人员与大部分客户接近,所以获得直接的反馈对他们来说很容易。

于是我们确定销售人员和工程人员了解它们的工作是使领域组织和客户成功。所有其他的职能(HR、财政等等)是从属于那些服务于客户的职能的(领域、销售、工程)。贯穿整个公司我们颂扬客户和服务于客户的团队。

GB:在软件开发环境的早期, Rational 的技术主张是“保持中间表示法的持久性。”这是 Rational 对版本控制的信心,或编码生命周期的其他辅助概念的开端吗?

MD:有关丰富的中间表示(intermediate representation,IR)的早期经验使我们相信工具中真正的语义集成的价值。拥有 IR 使我们能够达到更高级别的集成并提供更大程度的自动化。今天我们利用 Eclipse EMF 实现了。

该经验还教导我们关于体系结构、配置管理、工具和过程之间的重要交互的内容。明显地,语义集成引入了语义一致性的概念,这暗示了配置管理和版本控制。然而在应用程序体系结构和工具支持周围还存在更深入的问题。我们发现我们的工具可以促进并支持构建(组成)良好的应用程序体系结构。然而,我们还发现构架很糟的应用程序会创造大多数的配置管理问题并且不能利用工具的完全功能。

GB:众所周知,您的工作跨越数十年并遍及全球,您会怎样描述,软件如何重要起来以及开发软件的过程是如何变化的?

MD:我们创建 Rational 的愿景是所有的经济部门,特别是高度增长的部门,会日益地依赖于软件。因此软件开发成为了新兴行业和信息经济中的最重要的技术舞台。

如今事实证实了我们最初观点的正确性。当今大多数产品(电话、相机、立体声、汽车、飞机、医疗设备等)包含不断增多的软件并由软件系统进行设计和制造。大多数服务(金融服务、发行和后勤、零售业、娱乐业等)是基于软件的。

由于推动高度增长、高生产率和劳动力参与的增加,软件(及 IT 行业)也得到了信任(至少在美国)。在整个世界,软件已经加速了全球化,这给发展中国家和发达国家带来了不断增加的繁荣。

虽然现在软件的重要性得到普遍认可,但是开发过程还不像我们希望的那样迅速。改进的开发过程、更多的自动化、增加的协作、全球的外包、通用标准、通用体系结构、开源和其他开发已经大大地改善了软件的经济状况。这已经使软件在整个经济中增殖。

然而,我们都知道大多数软件开发仍旧面临挑战,许多项目是滞后的、超过预算并造成不高质量的软件。作为一个行业,我们需要不断提高质量和生产率等级到更高级别。IBM 处于实现此工作的最佳位置,众所周知只有 IBM 可以为所有的技术(工具、过程、体系结构、所有基于标准的东西)提供易于与客户、合作伙伴、行业组织、学术界、开源协会等的协作的开放框架。

GB: 使 Rational 成功的最困难的部分是什么?是技术本身,是开发的问题,或是领域和交付的难题?

MD:很难将整体中的一部分挑出来作为“最困难的。”我认为似乎每样东西都是关键的成功因素。技术是非常关键的。发布第一个版本比预期的更困难,带有更高的风险且花费更长的开发时间。随着客户基础的增长和我们技术的发展,从那以后的每个版本都有其自己的难题。建立具有深入的技术,能够使客户成功,并可以一贯地交付业务结果的领域组织也是非常困难的。

在这些领域内,我们成功的关键是团队和文化。我们小心地只选择那些可以为使命带来高质量和承诺的人,及适合我们所建立的面向团队、面向客户的文化的人。一旦我们建立了健全的团队,其他的所有事情都成为可能。

GB:您在 Rational 的几年间,最有意思的部分是什么?

MD:毫无疑问,最有意思且我感到最自豪的部分是团队本身。我们建立了一个伟大的企业,一个真正理解个人行为之上的团队重要性的企业。这是一个真正信仰确保客户成功使命的团队,并由个人负责业务的每个方面。我们生产成果,主要因为我们作为团队建立并维护着适当的文化。

GB:您会给出什么建议 —— 也许对高中或大学学生 —— 关于一个软件行业中的职业?

MD:建议?没什么奇特的。努力工作,设立不可能的目标,坚持你的原则,并为你的客户交付成果。如果你一向能做到这些,那么你将会在许多方面得到奖励。你将影响你的队友和企业,并且你将很可能在 IT 行业中产生影响。是的,财政上的成功是一种奖励。而同样重要的是你的个人和职业发展。没有比创造具有永恒价值的东西更令人满意的了。



回页首


对 IBM 软件集团 Rational 软件品牌新任的总经理 Danny Sabbah 的问题

Grady Booch:Mike Devlin 和我已经认识您多年了,在软件开发领域内有许多我们的客户和同事。但对于不熟悉您工作的读者来说,您可以描述一下您在软件开发方面的背景吗?

Danny Sabbah:当然。在 80 年代中期到后期,当我在研究部时,我领导了一个名为“软件技术”的团队,其致力于程序设计语言和开发环境的研究。到那时,我已经在核心软件技术和程序员生产力方面及了解开发人员日常的生活方面具有了深入持久的兴趣。当我开始在 IBM 软件集团 [SWG] 为 Steve Mills 工作时,我花费第一个三年时间完全致力于 IBM 的应用程序开发业务。为补充我们在应用程序开发中所做的,我们在 1996 年后期开始 WebSphere 的工作。当然,在 90 年代前期,我们将应用程序开发的空间丢失给了 VisualBasic、Borland 和一些其他人。但我们曾占有,且仍旧占有关于语言环境的强大市场空间,如 COBOL 和 PL/1,并且现在由 Java 来配合。所以 WebSphere 中 Java 计划的重要方面 —— 包括 WebSphere Studio(如它原来的叫法),和同样出自我的团队的 Eclipse 计划 —— 将重新燃起我们的能力来影响并抓住开发人员的心。

GB:为什么您认为软件开发工具对 IBM 是如此重要?在 IBM 软件组合中,它们真的需要一个单独的鲜明的品牌吗?

DS:我总是认为软件开发对任何想在现代商业气候中成功的企业来说是决定性的。IBM 决定收购 Rational 的一个重要原因 —— 且我自豪地说我是在决策团队中 —— 是要扩大并补充我们所建立的有关集成开发环境的东西。我们需要生命周期能力。没有开发人员可以在不了解如何做每件事的情况下处理软件的一个个别部分 —— 从在软件生命周期内收集并管理需求,包括维护,到管理软件的建模和编码,从编码到在整个生命周期内进行测试。所有这些事情都是至关重要的。没有生命周期管理和建模工件,一个单独的集成开发环境就不十分有用了。

作为主要的品牌,Rational 正帮助我们围绕软件开发的规范,围绕创建并管理企业中的软件资产,来建立并维持思想和市场的领导地位。这就是为什么去年将一些开发工具从 WebSphere 移到 Rational 品牌下具有意义的原因。基本上,John Swainson 和我,我们做了有意识的决策,要更好地将 Rational 整合到 IBM 软件家族中,我们需要将开发团队和开发资产 —— 从 Eclipse 和 WebSphere Studio —— 转移到 Rational 品牌下。

所以在一定程度上,您可以将我向 Rational GM 的转变看成是与我的过去和过去为我工作的一些人的重聚。整个 Rational 工具集的补充是我多年来一直期望的。

GB:您可以给出一个例子来说明 Rational 的软件开发工具和最佳实践是如何帮助 IBM 的软件计划的吗?

DS:这里是一个很棒的实例。Rational 已经使我们在 Web 服务和面向服务的体系结构的承诺产生积极的影响。当我在策略部门时,我开始关于 SOA 的传播工作,我们所做的大部分工作是与 Rational 团队一起创建可以使开发人员理解资产生命周期管理的开发工具 —— 不仅在 IBM 内部,还与我们的直接客户。更广泛的目的是获取关于局部系统集成者,以及定制开发工作空间内的一般开发人员的人心和市场的领导。服务和 SOA 缺少了开发工具的完全补充是不会成功的,许多的需要都来自 Rational。当然市场空间内的指导和领导也需要来自 Rational。

我的观点是 Rational 在 SOA 决策成功方面发挥重要的作用,与 WebSphere 在支持运行时环境方面发挥的作用同样关键。因为如果您没有抓住开发人员,运行时基本上是次要的。

GB:Rational 如何为企业服务总线模型的成长或接收做出贡献?

DS:IBM 软件集团的企业服务总线的概念是,它本身不是终点,而是到达终点的方法 —— 一种制定自定义接口间更松散耦合的途径。这些自定义的接口是在需要出自建模规程,和一组出自 Rational 的工具的资产生命周期管理模型中定义并受到管理的。 方法论元素是 RUP 的扩展,如此多的技术(通过我们对 RUP 的依附所采用的技术)直接出自于 Rational 工具集。所以不管它是 ClearCase 的部署,WebSphere(现在称为 Rational Application Developer)的采用,出自 Rational 工具包的端口建造器的合并 —— 所有这些都在内部使用并且帮助我们创建并分离在未来的产品开发中成为核心组件的资产。

对于我们的客户,只是当 Rational 已经在过去围绕 RUP 促进技术的移入时 —— 例如,将他们的工具的一些功能结合成一个关于您如何进行面向对象设计的集中观点 —— 同样的事情需要发生在 SOA 和面向服务设计的周围。资产的创建和管理只是在为开发工具、方法论和运行时平台发展模块性过程中的下一个阶段。所以建立抽象的概念,可插的进入抽象企业服务总线的接口,且创建恰当的接口集和管理都需要由 Rational 的方法论推动,并且由像你,Grady 一样的人推动。

GB:您如何看待 Rational 促进迭代开发实践的更大的使命,及您提前看到的难题?

DS:存在许多难题。一个是让人们了解,出于许多原因,迭代开发是极其重要的。明显的原因是迭代技术帮助减少错误,更多的检查点帮助团队准确了解将发生什么,反对以前很适当的长期运行的瀑布流程。

但重要的是,我们许多在环境上进行投资的公司客户正寻找着更加增量的方法来改进功能。他们需要快速地看到投资回报,这意味着他们更希望向一个映射到可增长的面向业务的模型的迭代方法投资。这是我们在 Rational 品牌中努力建立的东西 —— 业务目标中的增量细分和迭代的面向 RUP 的开发方法之间的坚固连接。这将快速地将我们的客户领到一个工具投资和业务目标的更紧密结合上。

GB:在 IBM 全球服务部(Global Services,IGS)的客户合约中,IBM 全球服务在什么程度上使用 Rational 工具?

DS:随着 IGS 转移到一个更基于资产的模型,远离硬件和基于人工的模型,Rational 工具和方法论是 IGS 成功的很大部分。IGS 发现不断增长对软件开发的依赖 —— 软件资产的创建和管理,以及对需要复用那些资产的应用程序生命周期的理解。这些是 IGS 转变的限定元素,并且涉及到我们试图用 IBM 软件集团中的 Rational 工具来完成的关键的内容。

IGS 和 SWG 之间的合作在发展 —— 是与 Rational 之间关系的重要部分。IGS 将会更加成功,因为我们围绕资产的建立和管理,帮助他们建立技能、方法论,和有组织的运行,所有这些对他们业务模型的发展都是重要的。

GB:当领导更换时,通常存在一些业务领域得到特别关注。您最初的 100 天是什么样的?

DS:我将在许多方面进取地工作。

  1. 通过密切关注我们客户的实际运行时环境,确保 Rational 工具密切联系客户的业务目标。这意味着用我们现有的工具并使它们适应当今业务中的许多类型的运行时环境。我们在处理建模和方法论方面做了许多工作,但我们需要用我们的开发环境和我们的测试环境及我们的性能管理环境并将它们与我们客户用来推动其业务的实时的运行时进行更好的整合。 例如,处理与成品或已打包应用程序的关系,并且将其延伸到其他已打包应用程序和遗留应用程序。我们需要追求与我们在 SWG 中已经拥有的资产进行的更好的整合,并将那些功能和成功带入 Rational。

  2. 我们将继续与 Tivoli 的 Al Zollar 团队开始的工作,以加强系统管理和操作管理工具的集成。我们将试图调整开发时期创建的资产,并帮助跨越操作和产品或开发之间的鸿沟。在许多定制开发和系统集成工作间,您会发现开发人员和操作人员处于冲突状态,因为开发人员工作在围绕过于简化的假设而设计的工具环境中。倒不是工具本身简单。但开发应用程序的环境与将其部署的环境非常不同。我们与 Tivoli 试图要做的是确保更多地了解所有涉及到的团队 —— 开发人员、操作人员,和系统管理员,所遇的难题。

  3. 我们将与 Eclipse 更进一步地集成。此工作将涉及我们的数据体系结构工具,以及业务构成建模工具,加上门户创建和管理工具。我们将做此工作,连同 WebSphere 和 Lotus 产品,并将其扩展到 Tivoli 产品。基本上,我们将做更多的与个别 SWG 产品的集成,注意到 Rational 的价值超过了 IBM 本身的软件供应(同每个其他 SWG 产品一样的情况)。所以我们将继续关注在不同种类的工作平台内的功能,因为那是我们的客户工作的真实环境。

  4. 我们将密切关注发展与软件开发人员社区的协作工作。Rational 的工具需要不仅采用对应用程序开发团队的生命周期管理,还要采用对围绕 Internet 建立的,社区观念的生命周期管理。考虑地理分布开发的动态性。每个人都希望利用在 Internet 上可得到的社区协作功能,不论那是 blog、RSS 馈给、直接消息、门户,或者地理分布的源代码库工具。所有这些都已经被开源社区所利用,并且他们必须成为 Rational 价值主张的一部分。我们希望将协作社区的概念(如 Internet 所定义的)包含到进行资产管理的开发团队的发展中。

这在本质上倒不是新的。但 Internet 引入了新功能和更大的范围,这导致了像全球化分布式开发这样的事情,帮助您决定如何及什么时候外包或内包,且在管理开发资产方面提供给您更多的灵活性 —— 包括知识产权和创造它的人。随着我们的客户的需求更加全球化,他们将需要这些功能。

GB:Rational 的遗留管理团队现在已经大部分被 IBM 的人替代。在未来的几年 Rational 会遭受管理风格的变更吗?

DS:IBM 管理结构与 Rational 原来的管理人员真的没什么不同。在 Rational 建立时我就认识 Mike Devlin(意思是我在过去的 Ada 时期就处在 Rational 内及周围)。现在,我们确实是在更广阔的 SWG 环境里带 Rational 前进,而这是 Mike 认为 Rational 收购首先是个好主意的主要原因。他关心在没有像 IBM 这样的大型合作伙伴的情况下扩展业务的能力。

基本的 Rational 使命不会改变。第一的目标仍旧是依靠开发和部署软件确保企业成功。我们将不断寻找方法,不论付出什么。在 Rational 的早期,那意味着设计并建立最初的硬件来运行 Ada 开发环境。这与我自己的承诺水平一致。大多数人没有发现这点,但当我第一次进入 IBM 研究部,出了研究所,我真的带来了 Symbolics LISP 计算机,因为对于我们试图完成的内容,在那时,它是最好的硬件。

在更深层次上讲,这些年对 Rational 的成功作出大部分贡献的是与客户的紧密合作。那是我已经知道很长时间的。在过去的七年,我们每年平均与 150 个合作伙伴和客户有联系。我真的喜欢这样做,因为它给了我一个连贯的感觉,IBM 的业务价值如何有助于我们的客户。在某些情况下,它向我展示我们在哪里失败地交付该价值。通过与所有类型的客户进行通话,包括我们发现我们做错的内容的地方,我得到了实际的了解。我打算尽可能地多做客户接触,并且我将把它注入 Rational 的文化,甚至比它过去时要多。

GB:关于在 IBM 软件集团领导软件开发品牌,什么对你启示最大?

DS:有许多原因,IBM 软件对 IBM 的成功很重要。IBM 最有利可图的部分还继续是软件。直到 Rational 的介入,现在有巨大的机会来扩展 Rational 在过去 25 年建立的价值。相当清楚的是,开发人员对业务进展的成功越来越重要,他们需要更紧密地联系并理解他们为业务带来的价值。现在正是时候,CIO、软件开发人员,和系统集成者得到机会来与业务模型和业务回报的进展连接得更加紧密。 我想这是 Rational 可以为市场带来价值并扩展其当前价值主张的地方 —— 其主张不仅是使开发人员高效率,还使业务与其软件开发人员相关的方式更加有效。



回页首


参考资料

  • 您可以参阅本文在 developerWorks 全球站点上的 英文原文


回页首


关于作者

Grady Booch 以其在软件体系结构、建模和软件工程过程方面的革新性工作而得到国际上的公认。他所有的工作已经提高了世界上开发人员的效率。Grady 是统一建模语言(Unified Modeling Language,UML)的原始开发人员之一并且也是许多 Rational 产品的原始开发人员之一,包括 Rational Rose,即行业领先的可视化开发工具。Grady 是六本最畅销书籍的作者,已经出版了几百篇关于软件工程的技术文章,并且在世界范围内演讲洽谈。Grady 是 Rational Software 的首席科学家。




回页首


对本文的评价

太差! (1)需提高 (2)一般;尚可 (3)好文章 (4)真棒!(5)

建议?



回页首



    关于 IBM隐私条约联系 IBM