级别: 中级 Dan McCreary (dan@danmccreary.com), 元数据策略顾问, Dan McCreary & Associates
2008 年 1 月 17 日
本文分析在企业范围内采用 XFroms 标准的投资回报率(Return on Investment,ROI)的几种计算方法。从不同的角度进行 ROI 分析,包括对标准的评估以及和避免厂商锁定策略有关的问题。了解企业 XForms 迁移的三种 ROI 模型:利用供应商的技能将标准表单转化成基于富 Web 客户机的 XForms 应用程序,计算三年内投资和节省的费用、XForms 如何与面向服务的体系结构(SOA)和业务过程管理(BPM)这类以 XML 为核心的技术形成协作关系。本文最后讨论了如何克服 XForms 迁移计划执行中的阻力。
背景
由于本文讨论的是 XForms 标准的投资回报率,熟悉 XML 和其他 W3C 标准,对成本计算的基本背景有一定的了解将很有帮助。本文提供了一个
Microsoft® Excel 模板 进行 ROI 分析。电子表格中的每个页签分别使用不同的模型计算总的 ROI。
读者
准备在整个企业范围内采用 XForms 标准或者将其作为某一业务领域局部解决方案的任何机构都可将本文作为蓝本进行分析。很多文章主要讨论 XForms 的特性,本文试图客观地分析 XForms 技术对企业的价值。
当开发人员和架构师尝试一项新技术,并试图让管理者觉得能从新技术中获益时,新技术标准的采用常常是 “自下而上” 的。本文可以帮助开发人员向那些需要了解技术决策投资收益情况的高级管理人员说明 XForms 的战略意义。
高层的执行者有时会要求企业架构师分析某种技术的成本效率。出现这种情况,通常是因为类似企业的高层已经证明了这种技术具有不错的 ROI。这样的话,通过案例研究网站寻找 ROI 分析文档通常是一种很好的办法。但不幸的是,对于任何新技术,特定行业的案例研究很难找到。我希望这种情形下本文能够起到一定的作用。
标准:实践证明的高 ROI
上个世纪八十年代后期,个人计算机在工厂和企业的普及带来了一种新的需求,那就是将这些计算机连接到本地网络或 LAN。早期的 LAN 被认为很有价值,但不幸的是,其收益还抵不上成本。这是为什么呢?缺乏标准。IBM®、Novell、Digital Equipment
Corporation 和 Xerox 这些公司提出了至少十几种 LAN 标准。每家公司都出售价格昂贵而且完全不兼容的系统。LAN 成本效率最终得到提高是因为 Ethernet 和 TCP/IP 协议这些标准被逐步采用。最终,Ethernet 硬件被直接安装到计算机中,建立 LAN 只需要购买很便宜的集线器。因此其 ROI 变得很明显。
今天我们在 Web 开发中遇到了同样的问题。我们一定要牢牢记住,HTML 设计的初衷不是处理表单,而仅仅是链接文档的一种手段。在 XForms 之前,除了硬塞到 HTML 标准之中的极其简单的字段填充标签,根本没有其他的用户交互标准。没有针对富用户接口和异步交互的标准。
大多数首席信息官(CIO)和首席财务官(CFO)对于支持多种标准的代价非常清楚。雇佣三个数据库性能专家团队通常比一个团队昂贵许多,因此经常面临着采用某种公共基础结构的压力。如果提议采用 XForms 标准,成败可能取决于您能否使企业的决策者相信采用单一的 Web 应用程序标准是合理的。
XForms 和梅特卡夫定律
要考虑的另一个因素是随着其他人的采用,标准的价值会迅速提升。最好的说明是梅特卡夫定律:网络标准的价值随连接的节点数增加呈指数增长。梅特卡夫定律是以以太网标准的发明者 Bob Metcalfe 的名字命名的。他发现,采用的用户越多,标准对于企业的价值会迅速增加。比如,如果只有一家公司拥有传真机,可能没有什么用处。但是如果企业的所有客户和供应商都有传真机,就可以把订单传送给安装了传真机的任何人,其价值就显现出来了。
与以太网和传真机不同的是,XForms 并非网络上任何两个节点间的正式通信协议。它是一种用户界面交互通信标准,也可以作为软件开发环境中通信的标准。比如,可以在表单设计器应用程序、表单部署服务器、业务规则服务器、浏览器或浏览器插件、Web 调试器及其他开发工具中使用 XForms。元数据注册可以用多种语言存储任何形式的 XForms 标签。因此,将 XForms 看作对特定问题的局部解决方案时,并没有将新标准对网络的影响考虑在内。随着这些标准推广到多个业务部门,您很快就会发现更高的 ROI。
技术聚集与国际标准
当人们使用 Ajax (Asynchronous JavaScript and
XML) 这类技术的时候,实际上是利用一个函数(XMLHttpRequest 函数)将一些技术简单地组合起来。现在有成百上千种图书、文章和出版物可以实现不重载页面而更新网页元素。但是,这些文章都以不同的方式分解了问题。两个 Ajax 也许只能共享一个
XMLHttpRequest 函数调用。有些在数据交换中甚至不使用 XML。没有一种被广泛采用的 Ajax 标准可以将模型-视图-控制器放入浏览器中或者使用依赖图跟踪变化。采用 Ajax 可能会改善用户体验,但事实上也可能大大增加开发和维护 Web 应用程序的成本。
ROI 分析至关重要
分析人员认为,没有 提供 ROI 分析的新技术提议只有 20% 在第一次提出的时候就被采纳。但是如果提供了 ROI 分析,采纳比例就会上升到 60% 以上。因此,在准备提出您的企业技术标准之前最好做一下 ROI 分析。如果以前从未做过 ROI 分析,可以请企业中的其他人帮助您,也许您的从事会计工作的朋友是个不错的选择。
ROI 策略:把正确的信息传递给正确的接收者
企业选择采用新的技术有很多原因。一项回溯到 1950's 的研究表明,爱荷华州农场主选用新的杂交玉米种子的决策过程和大多数技术采用的决策过程类似。采用新技术的企业可分为五种类型:
革新者(大约占总数的 2%)或者技术狂热者,他们看中的是技术的性能,采用新技术之前不需要进行财务分析。
早期的采用者(大约占总数的 13%)或理想主义者,等到革新者证明一种技术确有价值时就会采用,但仍然不受财务分析驱动。
早期的多数派(大约占总数的 33%)或实用主义者,需要看到明确的 ROI 分析或者类似行业其他企业基于 ROI 的证明。
后期的多数派(大约占总数的 33%)需要多种来源的具体客观的 ROI 分析。
落伍者(剩下的 16%)或怀疑论者,仅当没有其他选择时才使用先进的技术。通常只有当新技术被纳入完整的解决方案中后,落伍者才会采用新技术。
这表明,除了少数人之外,大部分人在使用新技术之前需要可靠的 ROI 分析。实际上,有时候落伍者对于自己的企业不采用新标准的原因最清楚。如果能够说服企业中的落伍者相信 XForms 会带来正的 ROI,其他人可能很快就能达成一致。
这就是说至少可以采取三种不同的策略。
如果有幸在一家注重创新的企业工作,就可以凭借 XForms 技术上的优点去推销,让革新者和早期采用者将 XForms 的特性转化成企业的优势和效益。您需要掌握 XForms 的总体设计和复杂性,以及每种特性的原理。
或者,向早期采用者和早期的多数派用户推销时,需要关注 XForms 标准本身的 ROI,并小心地将 XForms 特性对应到企业中的具体优势和效益。还需要说明 XForms 相对于其他选择的优点,以及第三方非 XForms 供应商如何使用特殊技术将您固定到他们的工具上。好消息是此前已经有人使用过这种方法,而且很可能愿意分享他们的分析经验(更多资料请参阅 参考资料 部分)。
向后期的多数派和落伍者推销,可能需要将 XForms 捆绑到一个更大的包中,把该包作为一种企业级解决方案来销售;比如为使用 ACORD 标准的保险业,或者使用 HL7 等标准的医疗保健行业提供一套完整的 XForms 库。
您的解决方案可能需要和供应商合作,将 XForms 直接嵌入其产品中。但是要注意,一些解决方案提供者宣称支持 XForms 标准,而实际上使用的是与许多 Web 应用程序开发框架相同的锁定策略。
让这些 XForms 应用程序在多种表单播放程序下运行,这样可以测试其可移植性。其头部包含非 W3C 名称空间的任何文件都应视作危险信号。选择供应商的一种办法是询问其在 XForms 标准协会中担任的角色。仔细阅读参考手册,访问确实用 XForms 开发工具使用和定制表单的其他企业的网站,也有助于甄别供应商。
一点忠告。很多公司确实宣称 “创新” 是其企业战略目标的一部分。问题在于高层决策者没有足够的技术知识以了解 XForms 的特性。如果
CIO 邀请您 “来和我谈谈 XForms”,而在您尝试解释 MVC 结构的时候看到对方露出困惑的表情,马上改变策略!注意他们的 “口头禅”。如果经常说 “提高质量”、“控制开发预算” 或者 “缩减开支”,那么这正是他们所想的。帮助他们建立一种思维模型,以理解 XForms 如何符合其企业目标。
计算 ROI:警告:方法可能不一样
对于任何新技术来说计算投资回报率都是一个充满变数的过程。没有两家公司具有完全相同的结构和技术能力,面临同样的机遇和挑战来赢回 IT 投资成本。本文也不可能说明所有这些因素,只是试图对 “我们的企业为何要采用 XForms 标准?” 这一问题寻找常见的模式和答案。
考虑的因素不同,信息技术解决方案的效果也会不同。有三个考虑因素至关重要:
- 企业面临的主要业务挑战是什么?
- 当前的 IT 资源(人员、过程、技术、标准、政策和远见)是否适应这些挑战?
- XForms 之类的技术如何帮助 IT 部门获得更高的投资回报率?
基本术语
开始之前,必须保证您和您的受众对下列术语的理解一致。虽然这些术语和概念具有很强的技术性,但对它们的表述必须有助于理解,不管其技术原理是怎样的。选择适当的比喻解释关键概念,术语越少越好,过多地使用技术行话注定会失去许多听众。
声明性编程是指定系统需求的一种方式。声明性编程用来描述系统应该做什么,而不是如何做。XForms 标准是一种声明性系统,因为它只用了 21 个功能元素描述表单的需求,但是标准没有规定这些元素如何映射到任何特定的显示设备,如 Web 浏览器或移动电话。XForms 没有规定使用哪种计算机语言来呈现表单、使用哪种 Web 浏览器或者表单应该在什么操作系统上运行。XForms 有很多优点,因为它没有规定表单如何在特定设备上呈现的实现细节。
要说明这一点,可以将其比喻为告诉一个人去机场的大体方向。“向东北方向走 10 英里就能看到飞机”。而过程性的描述可能包含 50 个步骤,向左,向右等等。
XML Schema 是很多开发系统使用的表单数据的 “蓝本” 或者 “数据规范”。XForms 重用了 XML Schema 数据类型,XForms 应用程序可从 XML Schema 自动生成。很多行业提供 XML Schema 作为标准表单,比如保险业的 ACORD。如果 XML Schema 与企业元数据注册以及集中的布局标准(CSS)联系在一起,这些系统能够创建大量看起来非常专业的、符合行业标准的、精确的表单。如果您也使用行业标准,而且每个数据元素的含义或者语义都是一样的,这样可以简化系统之间的数据交换。
Model-View-Controller (MVC) 体系结构是把输入表单的数据和具体的屏幕表示分离开来的一种方式。MVC 是一种基本的设计模式,它把问题分解开来,使得系统更容易构建、管理、调试和维护。就像大厦需要精心的设计一样,XForms 也利用了基于 MVC 体系结构的精心设计。
表单依赖图是一个网络,包括显示的所有控件及其关联方式。如果表单控件彼此依赖,这种依赖性就会在依赖图中自动表示出来。例如,可以在客户设备上重新计算订单总额,而不需要和服务器交换数据。这样就简化了复杂表单的开发,减少了客户设备和应用服务器之间网络通信量。
采用 XForms 的主要理由:出色的应用程序体系结构
如果您是一位曾经使用 XForms 创建过复杂交互式 Web 应用程序的技术人员,那么我所讲的内容没有什么新鲜的。您知道用 Ajax 和 Web 2.0 技术创建应用程序比不上使用 XForms 技术。不幸的是,大多数执行者对杰出的体系结构不太感兴趣,尽管他们可能注意到您的工作业绩,也承认您取得的非凡成就,但是仍然需要 “诱之以利”。
如何向企业管理层演示 XForms 技术的优势取决于您能否找到企业的 “痛处” 并将其和具体的 XForms 特性联系起来。
有很多情形表明 XForms 非常适合您或者您的企业。以下仅是其中的一小部分:
- 花费大量的时间和金钱创建复杂的应用程序,而这些应用程序可从 Web 部署中获益。
- 似乎在规定期限和预算内无法完成交互式 Web 应用程序的开发。
- 已经或者正准备投资用 XML 文档(XML Schemas、XML 转换等)处理您的数据。
- 希望业务部门能够使用元数据购物车工具和图像化的模式设计工具创建自己的 Web 应用程序。
- IT 部门难以承受编写和维护很多大型的内部或第三方 JavaScript 程序的压力。
- 希望构建富 Web 应用程序,但是不想使用 JavaScript。
- 有很多 XML 配置文件,需要非技术人员修改但不能破坏。
- 已经或者正考虑进行原生 XML 数据存储,并希望系统能够使用这些数据。
- 正在开发 Web 表单应用程序,但是不想为私有的 Web 表单创建工具支付高昂的许可证费。
- 不希望受到供应商私有的 Web 应用程序开发工具的约束。
- 应用程序架构团队喜欢成熟的开放体系结构,如客户端 MVC 和依赖图。
- 用户希望改善 Web 体验,厌倦了由于简单的数据验证检查而反复加载整个网页。
- 数据质量团队希望在 Web 应用程序中加入更多的逐字符的数据验证。
- 希望表单直接在 Web 表单中执行统一的业务规则,使用 XPath 之类的行业标准来表示。
- 希望使用现有的行业专用 XML 标准(如 ACORD),其中包含为标准文档定义的 XML 模式。
- 很多表单中的控件(如选择列表)需要从动态数据源(如 Web 服务)获取数据。
- 希望能够直接从 XML Schema 自动生成 Web 表单。
- Web 表单加载缓慢,支持团队建议把多次小的 Web 传送结合成一次带更多数据验证的提交。
当然,也可能有情形表明 XForms 不适合您的公司:
-
不存在真正的与用户交互相关的问题。比如您的任务是向 Google 那样为大量的 Web 内容创建索引。这实际上不是一种 Web 交互模型,不可能降低企业运作的成本。
-
已经受到特定供应商的标准的太多约束。已经被锁定到当前供应商的私有解决方案上,而且该解决方案性能不错,比如出类拔萃的浏览器内置 MVC 体系结构和先进的浏览器依赖图。
从好的方面来看,上面的表很短。通常很快就能判定企业可否从 XForms 受益。
BAF 不是 FAB
一旦使用,您很快就会被 XForms 丰富的特性所征服。但是如何将这些特性用于节约成本呢?常用的一种办法是永远不要假定在阐述某种新技术的特性时听众(或读者)会自动确定它能带来的效益。
BAF 是效益(Benefits)、优点(Advantage)和特性(Features)的首字母缩写。FAB 把顺序反过来了,除非听众非常懂技术,否则不要用这种方法。陈述 ROI 分析时,首先说明效益,然后是优点,最后举例说明这些特性会如何带来这些优点。
效益包括两方面:节省时间和节约金钱。优点包含与其他备选方案进行比较的词(更快、更好、更出色)。特性就是事实。比方说,MVC 的效益、优点和特性可以这样说:
效益:节省构建和维护 Web 应用程序的开发时间。
优点:不需要像 JavaScript 那样用很多变量存储数据,开发人员很快就能在模型中找到表单数据
特性:MVC 把表单数据和表示分离开
企业可能从一个特性获得不同的优点和效益。如何展示 XForms 特性能够为公司创造的最低收益,这取决于您自己。
把 XForms ROI 和企业任务和策略联系起来
讨论 XForms 的效益时,首先看看公司的任务、策略和技术部门的目标,并把您的提议和这些文件联系起来。寻找灵活性 和质量 这样的关键词,看看企业是否已经为这些领域确定了衡量标准。这些标准描述了数据质量的成本了吗?如果一个复杂的表单包含错误的数据,对整个项目的数据质量有什么影响?
三种 ROI 分析模型
本文所附的电子表格有三种 ROI 模型。电子表格中的每个页签都是一个独立的模型,可以作为进行 ROI 分析的一个模板。
ROI 方法 1:使用采购申请书进行供应商驱动的表单比较
第一个 XForms 分析模型需要利用市场经验。让您的供应商去做,要求他们提供具有法律效力的固定成本。进行这种分析的成本仅限于将信息搜集到详细的采购申请书(RFP)中和计算回响应中的总成本。
假设您有几种纸质表单、主机表单、老式的 Windows®
表单或者更老的 HTML 表单,希望转为使用高质量的、以用户为中心的交互式模型。这些表单应该具有某种标准的 CRUD 功能(创建、读取、更新和删除)和一些简单的业务逻辑(比如某些字段的值依赖于其他字段)。为这些表单及其业务规则创建一份清单,把需求发送给几家供应商。
一份报价可能要求使用 XForms,其他的则使用其他非标准技术。报价应该包括开发表单的成本和后续维护的预计成本。这种情况下不需要完整的软件开发生命周期成本分析,但是如果可能的话应关注此过程中的能力成熟度模型(CMM)。要保证进行比较的是具有相似性质的对象。
建议供应商演示一下如何用它们的技术创建小型、中型和大型的表单,这也许是明智的做法。当要求供应商进行演示的时候,要确保非开发人员能够使用 CSS 之类的标准修改表单的外观、增加新的字段和修改简单的业务规则。此外,还要确定如何把某个可选字段变为必需字段或者向选择列表增加的新值。这可能需要一定的培训,但使用图形化工具或者简单的表单通常比编辑 Java™ 或 Visual Basic 代码要简单。
还可以建议把这种表单和其他标准的配合性作为一项评价条件。比如,如果表单中的一个选择列表需要实时从 Web 服务获取数据,有没有简单的办法?(提示 —— 使用 XForms 只需要几行代码。)
虽然这种计算 XForms ROI 的办法似乎很简单,但是有两个问题。其一,从企业表单中收集所有的数据需求提供给供应商很麻烦。其二,XForms 是一种新技术,以 XForms 为主的供应商不如已经开发多年的厂商解决方案成熟。
当以太网卡第一次叩击市场的时候,每个要花上千美元。这不是因为标准不好,而是因为生产商还没有很高的产品需求和时间来大规模生产低廉的部件。但是在标准制定初期投资的厂商得到了很高的 ROI,而且随着标准的普及获得了更高的 ROI。随着 XForms 工具和厂商的出现,很容易进行这种比较。
ROI 方法 #2:定量计算 XForms 效益
在第二种 ROI 方法中,我们尝试为 XForms 项目的各项成本和节约因素赋予一个近似数,推算出三年内总的 ROI 分析。本文所附电子表格的第二个页签让您输入短期的一次性支出和年度支出,以及几个方面预期每年节约的金额。最初五年的成本包括:
一旦 XForms 基础设施就位,就会看到每年节约的费用:
- 降低的开发成本(每个表单需要更少的开发时间)
- 维护和更新 XForms 过程中更好的利用非程序员带来的节约(使用低成本资源)
- 输入和更新数据的更好的用户体验带来的节约(更快,更准确)
- 数据质量提高带来的节约(降低了修改错误数据的成本)
- 更精确的报告带来的节约(更高的信心)
上述分类可以和数值(小时,次数)以及相应的价格联系起来。对于上述计算结果,还有一些因素,比如开发人员和团队中承担通常由开发人员完成的任务的其他人员之间的差异,也应该加上。我们将看到,由于 XForms 简单易用,初级人员也能承担以前只能由较高资格人员承担的角色和任务,从而降低了成本。可能还需要做一些研究确定全负荷工作成本,包括假期、病休时间、管理成本、租金等等。
上面列出的类别是不完整的。也许还应该包括软效益,比如由于提高了推向市场的速度和特定表单数据往返的速度而带来的节约,但是可能很难用金钱计算。如果构建新的 Web 应用程序,您可能是一个新市场的最先开拓者,从而形成垄断市场地位迫使竞争对手靠价格竞争来削弱您在市场上的主导地位。人们都说,第一口最甜,而第一个进入市场者获利最丰。
使用这种方法,假定把一般的纸质和 Web 表单改为 XForms 是一项独立的 IT 战略,和其他 IT 项目没有关系。实际上这种情况很少存在。最后一个模型将考虑这些影响。
ROI 方法 #3:SOA/BPM 环境中的 XForms
最后一个 RIO 模型中,我们看看 XForms 标准和其他相关 IT 策略的协同效应。面向服务的体系结构(SOA)和业务过程管理(BPM)处于现代 IT 战略的核心位置。这些技术,再加上健壮的 Enterprise Service Bus (ESB),通常是推动企业采用 XML 技术的主要力量。因为 XForms 也是一种基于 XML 的技术,在信息系统战略中引入 XForms 会带来很多相互促进的好处。第三种 ROI 模型尝试为那些 IT 战略文件中包含这些技术的企业定性分析一下这些附加的效益。
XForms 从一开始就被设计成 XML Web 服务的消费者。当 XForms 应用程序需要加载表单数据的实例时,使用 XML Web 服务来完成。XForms 应用程序中的每个选择列表都可能需要直接从 Web 服务读取数据。这些选择列表可以根据用户角色和企业动态填充。XForms 应用程序中的每个 Save 按钮都向持久服务发送 XML 数据。服务可以是 “智能的”,根据 XML 内容类型检查保存的数据类型,然后把数据发送到适当的集合或者工作流队列进行存储或者进一步处理。
假设所有的应用程序都包含在充满 XML Web 服务供求关系的新的环境中。建立了第一代 Web 服务之后,您可能要求团队:如何更快地建立下一代服务以支持更快速的 XForms 开发?工具很快开始演化,团队开始获得为了更加敏捷所需要的培训。新 Web 服务的创建遵循和其他生产过程相同的 “经验曲线”。通俗地说,个人和企业在某项任务上越有经验,通常效率越高。比方说,如果创建 Web 服务的数量翻一番,创建每个 Web 服务的时间和成本可能会减少 25%。因此,XForms 可能成为高生产率的声明性的、以 XML 为中心的开发环境的基础。
了解这种关于 ROI 的意见可能会让您认为 XForms “不过是 ESB 上的另一个工作流服务端点”。我们认为 Web 服务是接收 XML 和返回 XML 的 Web 部件。实际上,这也恰恰是 XForms 在浏览器中工作的方式。只不过恰好有一个人传递 XForms 数据。需要人员干预的任何工作流操作最终都可能是发送给用户的一封电子邮件。用户打开包含 XForms 应用程序链接的电子邮件消息。表单不仅显示一条记录,而且为用户提供一系列工作流选项:拒绝、修改并继续、转到另一个 Web 服务、转向其他人或者工作流队列。如图 1 所示。
图 1. BPM 工作流中的 XForms
XForms 还使用了很多 XML 标准,如 XHTML、XML Schema 数据类型、XPath
表达式、XML 事件和 XML 绑定。当用户开始学习 XForms 的时候,他们也就开始利用已有的服务并形成了对新的服务的需求。
关于 XForms 的最后一个问题,它是一个高度专门化的特定于域的声明性语言。与完整的 Java 或 .Net
语言以及包含成千上万个类和方法的框架相比,XForms 只有二十几个元素。因此学起来快,也容易维护。它就像激光束一样集中到一项具体的任务:创建具有高度交互性的 Web 应用程序。它是通过把计算问题分解成小问题来解决复杂业务问题的一种新方法。和 XML 环境中其他 XML 语言结合,XForms 可以改变解决计算问题的思考方式。
应对常见阻力
向管理团队提出 XForms 提议之前,应该想一想会面对哪些常见的阻力并考虑克服的办法。大部分阻力来自于决策者对 XForms 标准的真正性质的不理解。
“但是 XForms 不能在某个浏览器上运行”
应对这种意见的第一种办法是指出 XForms 仅仅是对用户交互模型的二十多个抽象。这些抽象如何在某个设备上运行随时都可能变化。XForms 应用程序不需要任何操作系统或浏览器的原生支持。XForms 抽象可以被 Web 服务器转化成已知浏览器支持的 JavaScript 和 HTML,包括 iPhone 这样的新设备™
“某个供应商不支持 XForms”
最有挑战性的问题之一就是向很多 IT 管理者解释为何一些厂商不支持企业使用高层抽象。如果厂商提供一种低层接口把您锁定到他们的操作系统或软件,这通常是因为这样最符合其自身利益。决定采用高层抽象的任何组织都需要把自己从特定厂商显示 API 中解放出来。但是要使用这些抽象,企业必须选择业务伙伴和工具,以帮助自己将这些抽象转化成需要支持的设备接口。
“我们完全可以在浏览器中用 JavaScript 做到”
虽然从技术上说的确如此,但是忽略了体系结构、标准和可维护性这些重要因素。实际上,一些 XForms 工具就是完全用 JavaScript 实现的,后者操纵浏览器的文档对象模型。但是,XForms 的关键是标准,用一致的方式使用 XForms 抽象可以降低 Web 应用程序的开发成本。还可以指出 JavaScript 很难编写和调试。既然很多工作已经由支持 JavaScript 的 XForms 工具完成了,何必还要从头开始呢?
“我们缺乏需要的 XML 专家”
虽然这种意见经常会在 XForms 讨论中出现,有几种办法可以减轻这方面的怀疑。
首先,设计 XML Schemas 和构建 XForms 的大多数人最终面对的都是图形化用户界面,而不是纯粹的技术。
其次,寻找已经在其他任务中使用 XML 的人,他们往往具备基本的技能,很快就能成长起来。很多软件开发人员经常阅读和编辑 XML 配置文件,已经适应这种语法。熟悉 HTML 和 XHTML 的 Web 开发人员实际上每天都在使用 XML。
最后,指出 XML 已经变成计算机和计算机应用程序之间交换信息的事实标准。任何希望操纵这些数据的企业都需要建立能够阅读、转换和验证 XML 的团队。除非企业准备把所有的数据都放在一台计算机上,不需要和其他计算机(包括 Web 浏览器)进行任何交互,否则,越早筹建 XML 也好。
“XForms 开发工具还不成熟”
实际上现在有很多 XForms 开发工具可从 IBM 和
Oracle 等公司获得。其中很多工具不是开放源代码的,但是可以为非程序员提供高质量的拖放功能。当 Web 标准第一次出现的时候,也缺乏构建网站和搜索网页的工具。但这并不表明 Web 标准不好,也没有阻碍用户在公司网站或内网主页上采用 Web 技术。XForms 工具最终一定会成熟起来,涉及的工具成本也会下降,进而会促进企业的采用。
结束语
HTML 从未被设计成一种应用程序开发语言。XForms 是一种强大的、深入的技术,将对企业总体的 IT 策略产生巨大的影响。从表面上看,只不过在 XHTML 页面上增加了大约 20 个元素来改进可用性。但是,底层的 XForms 改变了浏览器和所有基于 Web 的应用程序之间的契约。它把 Web 浏览器从一种只能在网页之间导航的 “笨拙的” 设备,变成了具有清晰优雅的体系结构、能够加载智能 Web 应用程序和执行任何业务规则的 “智能” 设备。如果与其他基于 XML 的技术结合起来,如 SOA/ESB 和 BPM,XForms 可以为企业提供很高的投资回报。
参考资料
Paul Strassmann 在 1990 出版的著作 The Business Value of Computers: An Executive's Guide 是分析不同技术策略和企业收益的较早的尝试。他的发现之一是采用标准(如电子邮件标准)通常能够提供比局部解决方案更高的 ROI。Strassmann 还鼓励 IT 管理人员超越简单的 ROI 分析,看到技术投资的战略性。
关于技术扩散的研究在 Everett M. Rogers 的经典著作 Diffusion of Innovations 第 5 版中有详细的讨论。
如果希望了解如何推销新技术,Crossing the Chasm Marketing and Selling High-Tech Products to Mainstream Customers(Geoffrey Moore)阐述了为何很多产品和标准未能跨越革新者和早期采用者的阶段而进入早期的多数派这个阶段。
Carl Shapiro 和 Hal R. Varian 的 Information Rules 第 5 和第 6 章讨论了如何识别和控制软件厂商使用的锁定策略。
下载 | 描述 | 名字 | 大小 | 下载方法 |
|---|
| 示例 Excel ROI 模板模型 | XForms-ROI.zip | 31KB | HTTP |
|---|
参考资料 学习
获得产品和技术
讨论
关于作者  | 
|  | Dan McCreary 是明尼苏达州明尼阿波利斯的一位元数据策略顾问,他有超过 20 年的计算机咨询经验,包括为贝尔实验室、supercomputer industry、NeXT Computer 和他自己的咨询公司工作。Dan 是 CriMNet 系统的主要数据架构师之一,曾经参与美国司法部的 GJXDM 系统,并推动联邦 XML 标准的发展。Dan 扩展了 NIEM,使其包含 K-12 教育数据和房地产数据。他拥有 Carleton College 的学士学位以及 University of Minnesota 的电子工程和计算机科学硕士学位,正在 University of St. Thomas 攻读 MBA。他关注的主要领域是语义和元数据驱动的系统。 |
对本文的评价
|