级别: 初级 Alan Brown, 杰出工程师,
IBM
2005 年 4 月 01 日 本文来自于 Rational Edge:因为 Rational 软件是 IBM Software Group 的一部分,所以我们有必要为完成 Rational 的使命(即确保客户能够成功地创建软件和依赖于软件的系统)定义出一个清晰的远景和策略。本文是对 Rational 设计与构建工具的简明介绍。通过介绍一个简单的 Rational 投资关注点的关键领域的概念视图,和此投资与广泛的 IBM Software Group 计划与技术的关系,使该策略意味深长。
在过去的十年里,Rational
的基本使命没有什么变化。 我们仍旧在努力确保客户能够成功地开发软件,以及依赖于软件的商业系统。实际上,曾经在 IBM Rational 转变过程中帮助过我们的这些基本原则,在今天仍旧同过去一样非常重要:着重于体系结构、迭代开发、管理变更和资产以及在生命周期内不断地确保质量。这些原则通过帮助 IBM Rational 的人员设定所提供的产品和服务的范围来指导 IBM Rational 的人员,并告知客户所制定的战略性决策。
新的现实
在过去几年中所发生的事情基本上改变了 Rational 的使命和原则所应用的环境。了解了这些变化可以使您知道 Rational 是如何兑现它的承诺以确保客户的成功的。特别的是:
-
IT 组织不同了。 IT 专业人员需要在细分业务的领域表现出直接的影响。他们需要论证用于 IT 花消的投资资回报(return on investment,ROI),并且并利用能够支持新的业务机会的现有 IT 投资。
1
所有这些是处在新兴技术、软件在我们的所有生活方面的不断深入的作用以及推进产品和要传递的服务的需要的环境中的。
-
IBM Software Group 不同了。 随着 Rational 加入到 IBM 中来,IBM Software Group 经历着技术和解决方案上的重大变化。最近,中间件技术被收录到单独的 WepSphere 产品之下(包括应用程序服务器和业务整合服务器),将 Holosofx 和 Rational 并入 IBM 旗下是强调工具在推动并细分 IBM 中间件的供应上不断增长的作用,并且 IBM 大力支持基于开放标准的能够整合基于 Eclipse 技术的所有工具的基础架构、用于应用程序开发与部署的基于 Java 的标准和 Linux 操作系统与相关软件的商业生存性。
-
IBM 不同了。 对平台和服务器市场的合并已经进行了一段时间了。IBM 已经在许多艰难的日子中奋斗过来了,现在 IBM 再次将重点放在为客户所提供的价值上,从而摆脱出来。这是基于对解决方案和服务的关注,以确保客户的成功、带有支持管理功能的完整应用程序部署平台的传递以及一个成熟的基于行业标准的且能够提供从设计到部署都能与 Microsoft 对抗的可行方案的 J2EE 运行时程序设计模式。
此环境是重要的。它将 IBM Rational 要在将来进行的以保成功的各种类型的投资形式化。特别地,尽管许多由 Rational 提出的能够提高软件开发实施的重要原则仍旧保持原样,但有必要对那些原则的应用作出改变。 从四个重要的领域可以看出最大的影响:
-
了解环境。 大多数软件已经不再做成独立的产品了,而是作为较大系统(业务或产品)的关键组件。人们日益关注对软件操作和开发的环境的了解。
-
提供解决方案关注点。 IBM 解决方案和服务的传递是其成功的必要部分,并且 Rational 品牌代表着这些解决方案的重要部分,这是由于能够将其他 IBM Software Group 品牌力量组合在一起的巨大潜力。
-
Rational 技术的作用是推动 IBM 解决方案、服务和平台的发展。 对于IBM Rational 来说,由工具销售带来的直接收入是很重要的。但就母公司而言,Rational 产品只占 IBM 总收入中相当小的比例。同时,在提供服务和解决方案的市场方面,及推动 Software Development Platform
销售方面,Rational 的服务功能起到了真正的效果。
-
平台问题。 传统的 Rational 声称我们不考虑用于实现解决方案的特定语言和平台。那已经是昨天了。IBM 正在设计并使行业的主导计算平台能够用于企业解决方案的实现、传递及管理。Rational 的新作用就是促进、支持并帮助细分平台以应对竞争对手。
这些原则并不意味着 Rational 只负责 IBM 的平台 —— 正相反。我们很清楚地认识到我们的客户将会继续跨不同种类的平台部署应用程序,那么 IBM Rational 将会帮助客户对那些解决方案进行组合、部署、管理及发展。我们关于开放标准的长期承诺是实现支持解决复杂、多种类环境的方案的部署和管理的目标。然而,就创建解决方案部件而言,Rational 产品将证明 IBM 的平台和技术是卓越的,并能够提供给客户传递高质量企业解决方案的快速途径。
IBM 正在进行提高生产力的业务,通过以下两种重要的业务功能,IBM 提供能够增强生产力的解决方案:
-
传统 IT。 这些是能够支持商家更好地管理重大的基于事务的过程的组织。例如,包括零售工作、提供链式管理以及返回办公过程,但不仅限于此。
-
产品和系统开发。 例如,包括普遍深入的设备、深入计算、对策、模拟、命令及控制系统和大型人工产品(如汽车和飞机)。
许多 IBM 客户都是关注传统 IT 的大型商业组织,并了解 IT 在支持他们业务方面所发挥的作用。出于此原因,本文中大量的讨论都涉及到通常情况下,Rational 策略如何支持这些企业以及如何支持 IBM 解决方案和服务。Rational 工具的价值可以由这些受 IT 支配的大商家(IBM 的传统力量)和具有影响力的中小型商家简单地证明。
然而,对 IT 的关注并不意味着这是我们唯一的关注点。尽管增强 Rational 在这些领域内的地位对 IBM 的传统企业业务来说是重要的,然而对系统和存在于企业之后的软件环境的范围进行描述也是很重要的,这代表着在传统领域外发展的重要领域。特别地,随着软件成为社会各方面的核心部分,我们看到了不断增长的需求以及有关对普遍深入的设备、深入计算、决策、模拟、命令和控制系统及许多其他内容的系统和软件进行开发方面的改革。在历史上,Rational 工具曾对这些“技术开发人员”团体产生重大的影响,IBM Rational 必须在这些领域继续支持现有的客户。事实上,我们对软件开发工具和最佳实施的见识能够提供支持并过渡为 IBM 的核心企业业务,并成为 IBM 在更大系统和软件领域内进行增长的手段。
设计与构建的新观点 传统的 Rational 软件设计与构建的观点集中于以下的序列:需求分析、系统构架、在集成开发环境(IDE)中进行具体的软件设计与构建,然后部署到运行时环境上。该观点对于今天的企业解决方案已经不够了。下面是组织看待他们下一代解决方案平台方式的三种推动力:
-
服务观点。 企业日益地认为跨 IT 基础架构的功能集合是一套以满足具体业务需求的组合而成的服务。系统体系结构设计成受到内部服务协议和外部服务级别协议(service-level agreement,SLA)管理的服务集合。
-
解决方案的快速组合与重新组合。 通过将 IT 组织视为可以创建满足发展的业务目标的解决方案的“软件工厂”来提供更大的灵活性。要实现这一点,开发小组必须能够按照业务和市场的环境需求简单地组合并重新组合解决方案的部分。这需要业务分析员和 IT 架构师之间密切的联系,以及管理这些要组合的部件的严格的方法。
-
关注资产管理及重用。 由于组织寻求获得更大的业务效率,所以强调了贯穿软件开发生命周期的重用。特别地,曾经只限于通过共享代码类库而重用的概念现在已经扩展到业务流程、需求定义、体系结构设计元素、测试脚本等等的概念了。此项扩大了的重用概念从本质上改变了解决方案的生命周期,改变了个人在组织中的作用,并为在生命周期中创建、收获、应用及管理资产创建不同项目的实施。这必须依据强有力的用于依靠灵活的资产管理基础架构的可重用的资产的治理实施。
同样,Rational 方案在传统上忽视了部分 IT 组织,而 IBM 通过其他软件供应(业务专家、IT 运作、财务分析员)关照到了这些组织。IBM 的客户需要一个比 Ratioanl 曾经可以提供的作为独立实体的更完整的生命周期解决方案。作为首要的 IT 解决方案的提供者和许多大企业中负有责任的厂商,IBM 所具有的能够提供一整套解决方案的新功能拥有巨大的价值和潜能。
此项新功能要求我们用服务的观点来理解工具和平台,并提供了一种将业务与 IT 观点更有效地联系在一起的方式。由此观点,新的“服务连接”的比喻替代了原来的“扩展对象模型”的比喻。我们能够更好地利用显露出来的基于服务的中间件,并便于解决方案碎片的管理和重用。得到结果是不同种类的解决方案、不同的作用和来自工具的不同的期望。
从 IBM 发布的消息中很容易看出面向服务方法的重要性,并且该重要性更广泛地体现在含有来自 Microsoft、BEA、Oracle、Sun、HP和其他公司的基于服务的技术的软件行业中。
新兴的设计与构建环境
因为厂商要满足客户的需求,所以就出现了关于设计和构建环境如何发展的广阔远景,如图 1 所示。
图 1. 新兴的设计与构建工具环境
概括地规定,设计与构建环境包括五个领域:
-
中间件平台。 在关于企业解决方案的运行时平台方面已经取得了许多进步。健壮的企业应用程序服务器已经摆脱出来,形成了今天分布式的基于服务的解决方案的架构。现今存在着多种技术,当今的大多数组织将解决方案部署到异类的中间件技术的混合体上。因此,能够管理部署到多种平台上的企业解决方案是很重要的,同时要支持开发新的基于开放标准的解决方案。例如,J2EE 标准定义了如何将应用程序和服务建立成能够部署到适于标准的运行在应用程序服务器上的容器。另外的在应用程序服务器上分层的功能支持 1)直接执行用标准语言表示的业务工作流,例如 BPELWS,
2
2)创建并组合来源于可重用的 portlet 集合的
portal 风格的应用程序。
-
运行时程序设计模式。 中间件平台接口定义了程序设计模式,那些想要设计、构建并在中间件平台上部署解决方案的软件构架师们必须理解此程序设计模式。这需要平台的用户具有明确的企业解决方案及其执行部件的物理实现的概念性观点。
-
工作流控制。 在组合系统中,将许多类型的应用程序看作是业务交互流程的精心编制的集合。许多业务流程可能是自动进行的,而其他将需要由小组成员执行的人工任务。编制这些工作流提供了更集中于业务上的关于任务如何执行的观点。现在有足够丰富的语言来表示这些业务工作流(例如,BPELWS),这些语言可以直接在合适的运行时平台上执行,并作为企业应用程序服务器顶部的一层。
-
业务级工具。 业务模型必须用一种适合于业务专家的语言和记法来定义,并且必须由这些流程的业务级模拟支持,以探究流程中变化的潜在影响。 必须通过推断来自于低级别技术驱动的事件(发生在中间件平台上)的集合的业务级暗示,将业务影响推广到管理经营业绩。这两个方面,即业务流程建模和经营业绩监控,与那些通过 IT 投资来推动业务价值的组织紧密联系。
-
通过组件架构系统。 对服务进行组合并将其部署到中间件平台上意味着那些服务必须在体系结构的蓝图环境中创建并组合。在许多情况下,服务由各种来源衍生而来:例如,来源于现有产品中的应用程序和包、以前的项目,或第三方供应商。在其他情况下,必须要改变服务以满足新的需求,或从零开始建立服务。要支持的关键任务是管理现有服务的库,了解新服务及在适当的系统环境中将服务组合。
IBM 方案
当然,在这种趋势出现时,IBM 没有原地不动。实际上,IBM 已经将推动支持这些客户需求的标准和技术作为手段。IBM 解决这些难题的方案在很好的运作中,并且开始在 IBM 工具和基础架构中得以自动化并简单化了。图 2 中显示了大量 IBM 解决方案中的关键部件。
图 2. IBM 设计与构建工具方案
IBM 解决方案集中在前面定义的五个领域上:
-
IBM 中间件平台。 IBM 提供了丰富的基于 WebSphere Application Server 的中间件技术。附加的功能将可以执行工作流(WebSphere Server Foundation)和开发 portal
(WebSphere Portal Server)的基本功能进行了扩充。该平台的方向是重新构建其功能以使功能以更灵活的方式进行组合。中间件平台可看作是 ESB 构架风格的执行平台,在其中,可以对服务进行定义、部署、执行并通过通用的事件机制来通信。
-
IBM 程序设计模式。 中间件平台的功能是健壮并复杂的,而运行时程序设计模式的重要变更正在进行中,以简化软件专业人员对中间件平台功能的观点。当然,这将引出面向服务的观点,并对许多由中间件基础架构管理的底层实现细节进行抽象。这将把服务数据对象(Service Data Objects,SDO)作为不同数据来源的统一抽象,把 JService 作为描述服务、服务组合及服务交互的方式,并把 portlet 和 JavaServer
Faces (JSF) 作为用户交互视图。由于中间件平台发展到可以支持 ESB 的程度,所以将会直接支持这些概念。
-
WBI 服务器基础工具。 服务需要用足够的细节进行描述,并可以由业务整合专家设计成支持业务任务的内容。WBI Server Foundation Tools 提供了图形化的服务工作流视图,工具允许业务整合专家将业务流程映射到含有足够细节并能够在
ESB 上执行的服务上。该工具支持来自于多个来源(提供的合伙人、包装了的遗留系统和最新的构建)的“连接在一起”的服务。对 BPELWS 的支持提供了描述业务工作流的基于标准的方法,并且确保了工作流执行引擎间的互操作性的方法。
-
WBI 工作台。 对整个业务目标进行描述需要适于领域专家(如业务专家)的工具。WBI Workbench 提供了 WBI Modeler 工具,以支持业务活动、组织结构、共享工件和资源的定义。业务流程能够模型化并且可以对其工作进行模仿以提高业务理解和优化业务工作流的设计。这些描述可以用于引出工作流执行和开发活动。在
ESB 中执行流程会发出与 WBI Monitor 中业务活动相关联的事件。这支持在一定范围的经营业绩管理任务将操作系统与业务流程连接起来。
-
Rational 设计与构建工具。
3
丰富的建模、设计及实现工具能够用来实现服务并将服务组合成结构上的可靠的结构。Rational 设计与构建产品提供从现有系统中收集部件的功能、建立为 IBM 运行时所优化的新服务的功能以及构架使用了行业标准记法和技术的应用程序和服务的功能。
4
这里有三个必要的计划:用来提高生产力的快速设计和开发技术、跨生命周期的质量焦点和确保传递服务和解决方案质量的有力的分析法。底层的基于小组的投资管理功能确保了系统的一些部分可以很容易地确定、组合及管理。

 |

|
对于 IBM Software Development Platform
虽然单个的 Rational 产品功能的改善是重要的,但对客户的实际价值是在于能够用于创建并部署新一带面向服务的解决方案的健壮的软件开发平台的功能组合。此外,所承诺的远景是一组用于利用现在不存在的准确性和清晰性的等级来管理 IT 项目的功能。作为“业务流程”的软件开发观念 —— 业务流程可测量、可预测并易于管理 —— 提供了一个强制的前景,只能通过工具和业务的所有不同方面的运行时功能的深度集成来实现。为了此目标,IBM Software Development Platform 最近的声明是决定性的一步。由于 IBM 发展并简化了基于服务概念和 ESB 的程序设计模式和中间件平台,我们的设计与构建工具必须要反应这些变更以支持部署到基础架构上的解决方案。以下是五个关键的方面:
-
连通业务与 IT 间的间隙。 将活动及流程的业务观点与用于实现活动的技术想联合是有必要的。该联合包括能够推动顺流开发的业务模型的功能,并在组合中发展业务模型和 IT 解决方案。通用的设计实施是确保概念、工件和活动保持同步所必需的。
-
支持 IT 组织中的角色变更。 服务思想的转换改变了技能和组织中团队的组成。开发的焦点,根据强调服务等级协议(SLA)和内部服务协议的结构说明,朝着寻找、定义、管理和组合服务的方向转变。将工具功能传统地分解成今天的一组产品已经不适合此解决方案了。将来会出现 IT 组织中不同成员所需要的不同的功能组合。现有角色,例如“软件构架师”,所需的技能正在改变。同样地,新的角色,如“业务整合专家”也正在兴起。
-
关注资产和重用。 将服务看作是系统设计的重要资产的想法改变了企业的关于重用这些服务价值的观点。服务组合的观点引发了“软件工厂”的思想。因此,技术和管理及治理资产的技术,以及可重复的为组合资产而获取模式的方式很重要。用于管理资产的小组基础架构在此方案中扮演着重要的角色。
-
提高专业人员角色内部和之间的协作水平。 IBM Rational 总是认为软件开发是一项“团队运动”。出于此项原因,我们一贯将注意力集中在生命周期中的共享资产、工件跟踪、和共享的实践和流程的管理上。随着开发组织 1)扩展他们在地理上的分布, 2)增强单个小组成员间的实时通信,以及 3)将嵌入式软件作为广泛的系统开发计划的一部分,软件开发的协作特性越来越明显了。
逐渐地,IBM Software Development Platform 将会作为一个吸纳并接近这些趋势的协作开发环境。
-
产品供应的简化。 将 IBM 设计与构建工具的功能改名并重新装配会大大改进向客户提供的产品,因为我们将使在传递面向服务的企业解决方案时,对这些产品如何提供最佳的灵活性及价值的理解变得更加容易。
为了实际效率,创建并传递一个丰富集成的 Software Development Platform 需要转换到一个基于我们自己的共享组件的通用工具基础架构上。我们正在将这种基于服务的构想和方案应用到我们自己的工具中。Eclipse 基础架构(它的插件体系结构、元模型的框架、共享的元模型及库的功能)使之成为可能。通过在 IBM 开发团队中使用这些建立在此共享基础架构之上的通用组件,我们的客户能够更容易地同时使用 IBM 产品,并且我们的开发团队能够更有效地创建和维护这些产品。
出于以上所述的原因,在 IBM 的未来,Rational 会起到重要的作用。上个月我们声明的产品(2004 年 12 月就将投入市场)能够帮助重新定义软件需求、分析、设计和实现经验。这表现出了向兑现 IBM Software Development Platform 的承诺迈进了一大步、能够支持新的市场实现的 Rational Design and Construction 工具工作台的发展以及对基于面向服务技术的 IBM 策略中间件平台计划的注意力的必要转移。
注释
1 例如, Nicholas Carr 近期的书,名为 IT Doesn’t Matter, 阐述了改变对组织中 IT 所起到的作用的态度。
2 用于 Web
服务的业务流程执行语言(Bsiness Process Execution Language)。
2 Rational Design and Construction Tools 包括最近宣布的 WebSphere Studio 工具的下一代产品。
4 虽然本文只集中在对 IBM 中间件平台的支持上,但对平台支持的范围是非常大的。例如,IBM 工具支持解决方案的创建、具体语言和跨平台的调试、测试、部署及监控(混合了 Web/portal、Java、生成的或手写的 COBOL 及第三方的包应用程序连接器技术)。
参考资料
- 您可以参阅本文在 developerWorks 全球站点上的 英文原文。
关于作者  | 
|  | Alan Brown 负责 IBM Rational 桌面产品后的技术策略。他也是负责矫正由 IBM 多个产品线组成的 IBM 软件开发平台中的 Rational 工具的领导小组的重要成员。此外,他一直负责为 IBM 的模型驱动开发工具进行远景和策略的定位。通过对 IBM Rational 桌面产品的贡献,他赢得了 IBM 杰出工程师的称号,同时他对软件工业的未来也作出了显著的贡献。在过去的十年中,Alan 一直是一位业界思想的领导者,他所著的书籍、论文和大量的与 IBM Rational 的顶尖客户的交互,指导了开发人员经验的发展。想了解更多关于他的工作和思想的话,请访问他的网站www.jorvik.com/alanbrown/index.html 。他于 1998 年在 Newcastle-upon-Tyne 大学获得博士学位。 |
对本文的评价
|