跳转到主要内容

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

当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

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

  • 关闭 [x]

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

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

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

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

  • 关闭 [x]

使用基于RosettaNet的Web服务: 第一部分:BPEL4WS和RosettaNet

如何把多年的电子商务体验和专门技术立即添加到Web服务中

Suhayl Masud (SuhaylA@DifferentThinking.com), Different Thinking咨询公司的发起人和首席设计师, Different Thinking咨询公司
Suhayl Masud是 Different Thinking 公司的总裁, 该公司是一个帮助组织了解和开展电子商务的咨询公司,提供培训、体系结构和应用程序服务。Suhayl也是 Agile Webservices组织的共同发起人,该组织提供政策方面的计算解决方案。Suhayl的工作经验包括作为RosettaNet的主要技术设计师提供咨询,他在那里帮助定义了下一代电子商务流程的标准。Suhayl将很高兴收到您的信,邮箱地址为 SuhaylA@DifferentThinking.com

简介: 虽然Web服务是对现有技术的一种渐进式发展,但是在可以用软件来表示业务方面,它们却是一场革命。然而,如果我们不开始构造处理真实商业事务的 P2P 电子商务对话,我们就不能认识到Web服务的全部潜力或者看到它们的革命本质。这一系列文章将通过利用RosettaNet中处于行业领先地位的电子商务流程规范,并且运用可表达和灵活的BPEL4WS将它们转换成Web服务,来演示创建真实电子商务对话的过程。

发布日期: 2003 年 7 月 01 日
级别: 初级
访问情况 : 1005 次浏览
评论: 


这一系列文章旨在通过创建可以用于处理真实业务的电子商务对话来展示Web服务的真正潜力。电子商务对话将以现实世界的业务问题为基础,而采用RosettaNet提供的确实可靠的解决方案来解决问题。在这个系列中,我将向您说明Web服务中最重要的部分是电子商务对话;将解释什么是Web服务以及如何为业务对等体构造Web服务。在本系列的第一篇文章中,我将介绍以下内容:

  • Web服务的真正潜力
  • 了解如何进行电子商务对话
  • 利用RosettaNet的好处
  • RosettaNet简介
  • 将RosettaNet转换成Web服务

在第2和3部分中,我将讨论Web服务的choreography,并且构造展示组合RosettaNet和BPEL4WS的好处的样本端到端电子商务情景。

Web服务的真正潜力

您可以放心,Web服务并不是一个含糊的概念。即使是现在,Web服务也可以解决业务问题。它们提供了一些有吸引力的功能,像使用诸如WSDL和SOAP这样的开放式标准以及重用现有的Web基础结构,包括硬件、软件和专门技术。Web服务的真正潜力在于可以利用它们来在业务对等体进行电子商务对话。当应用集成和简单的Web服务能够达到目的时,可以在业务对等体之间广泛使用协作式Web服务,并且可以进行电子商务对话,而事实上,这将对电子商务产生积极的影响。注意到使用电子商务对话Web服务不会冒险进入未知的领域,是非常重要的;它们受益于从像RosettaNet和EDI这样可靠又可信的电子商务中得到的经验。

就最简单的方面而言,Web服务允许我们定义带有完全可访问的和技术中立的公共接口的服务。这种接口是用基于XML的WSDL(Web Services Description Language,Web服务描述语言)进行描述的,并且可以通过使用基于SOAP(Simple Object Access Protocol,简单对象访问协议)的XML消息进行访问(也可以有其他的选择)。我现在将说明为什么这些简单的功能可以产生如此美妙的结果。


图1:Web服务带来了深刻的变革

我相信Web服务是一场商业和信息技术之间关系的革命。这场革命强化了关于电子商务的几个观点:

  • 电子商务更多的与商务有关而与“电子”(技术)的关系不大。
  • 电子商务的公共接口首先存放服务。
  • 电子商务对话是技术不可知论者。
  • 技术应该为电子商务服务,而不是对其进行压制。

Web服务将大大改变组织对电子商务的看法。虽然这些改变中有一些是很细微的,但是结果肯定相当惊人。Web服务给电子商务带来的第一个改变极为注重服务,它是非常适当的,因为一个组织存在的主要价值之一就是给客户和合作伙伴提供服务。第二个改变是在组织中不同的团体之间进行更好的交流和知识共享;Web服务以“服务”(一个共享的概念)的形式帮助每个人进行思考。这种增强的通信可以帮助设计健壮的服务,还可以帮助在概念阶段获得设计权利。

 Web服务在电子商务方面所引起的最重大的改变是,它使得业务对话在某种程度上是技术不可知论者。借助于Web服务,组织允许通过基于开放式标准和通用语言的公共接口来访问它的服务。这种Web服务的公共和私有端之间的分离,免去了考虑电子商务对话中像OS、程序设计语言和平台这样的技术问题,使业务合作伙伴彼此能够通过完全不同的技术手段轻松地进行通信。进行电子商务对话的第一步是消除技术壁垒;下一步就是标准化的对话、消息和词汇。如前所述,如果我们不使用Web服务技术去创建电子商务对话,我们就认识不到Web服务真正的潜力。


图2:Web服务的公共端和私有端

如何进行电子商务对话

现实世界中Web服务成功的基础在于业务合作伙伴能够进行电子商务对话。因为本文谈论的是电子商务,所以这样的对话是数字式的,而处在两端的软件系统必须了解对话的意义。软件系统事实上只“理解”已经将其编写成能理解的事情,因而,如果您必须为同一业务活动编写几种解释,那么进行电子商务对话的成本将可能变得惊人。举例来说,如果您有22个与之有货物买卖关系的业务合作伙伴,并且这些合作伙伴中的每一个都为处理购买次序定义了不同的对话,那么您将必须实现22个对话来完成相同的事情。这是为什么描述、访问和处理业务活动和电子商务对话变得至关重要的原因所在。

那么,什么是电子商务对话呢?电子商务对话就是发生在业务合作伙伴的软件系统之间的会话(conversation),其目的是进行业务活动。对话可能很简单的,也可能相当复杂,取决于需要进行的业务活动。


电子商务对话的组件
图3. 电子商务对话的组件

图3中,您可以看到简单的电子商务对话,其中Acme用JoeLaptops存放购买订单。此外,您还可以看到电子商务对话中所需的几个组件:

  • 开放式可访问公共接口
  • 合作伙伴角色
  • 用达成协议的choreography交换的标准消息
  • 标准词汇
  • 可靠并且安全的环境

公共接口


对于Acme和JoeLaptops,要开始业务对话,两个组织都需要有以标准的方式加以定义并且可以通过Internet协议进行访问的公共接口。这种开放式可访问接口使Acme(它是基于Java的商店)可以方便而经济地与JoeLaptops(它是主机和基于COBOL的商店)进行通信。

角色和choreography


为了理解角色和choreography,我希望您考虑一下电影脚本。正如电影脚本一样,电子商务对话有不同的角色可以由业务合作伙伴进行扮演。在我们的示例中,Acme扮演买主的角色,而JoeLaptops扮演卖主的角色。好比传递电影脚本中台词的演员,组织可以根据电子商务对话中指定的次序彼此之间“传递”消息。在电子商务对话中,这种顺序和次序的概念称作choreography或chestration。它以最简单的形式创建了交换消息的顺序。choreography也可以用于创建orchestrate服务、模式或其他电子商务对话的复杂对话。在下一篇论述BPEL4WS的文章中,我将对此进行更详细的解释。

标准词汇


应该谨记的重要一点是,业务对话是在软件系统之间进行的,并且因为很不擅长猜测,所以不要留下二义性的事情。Acme和JoeLaptops交换的消息有标准的结构和标准的词汇。这意味着消息必须遵循已定义的模式,并且消息中所用的任何词对于两个组织都必须有相同的意义。标准化定义和词汇的用法是非常重要的,而且我们可以看到,即使是在日常生活中这也是有必要的,因为在不同的专业中,我们日常所用的词汇可能具有不同的意义。例如,当我们在前面提到电影脚本时,如果我们只使用了词“脚本”,而不指出具体的技术背景,词“脚本”可能会产生意义上的混淆:是Perl脚本还是电影脚本?例如,在药物实验室“鼠”是一种小的有毛动物,而在计算机实验室中,它却是一种定位设备。重要的是在计算机实验室下购买鼠标的订单时,卖主不会发送啮齿动物。值得我们庆幸的是,有标准团体构建字典来定义电子商务消息中用词的定义。


业务对话最重要的组件之一是安全性和信任。当组织在现实世界处理业务时,他们签署合同来订立具有法律约束力的协议。在电子商务中,通过把每个交换的消息看作合同来建立这种信任。在协议期内存储消息,而每个合作伙伴都受到在消息中所作“承诺”的约束。这一概念称作不可抵赖性。合作伙伴还可以确定哪些雇员有权进行电子商务对话,而在电子商务对话期间通过检查消息上的数字证书和数字签名来验证权限和身份。交换的消息可以防止篡改,所以没有第三方能够更改内容或者对任何一方造成损害。交换的消息还可以通过防止窃取的安全网络进行传送,这样就没有第三方能够窃听在业务合作伙伴之间传送的舾行畔ⅰ?


为什么使用RosettaNet

我的一系列文章的主题是,如果我们使用Web服务进行电子商务对话(它们利用了RosettaNet中的概念和组件,并且在BPEL4WS和WSDL中进行了描述),Web服务就可以充分发挥其真正的潜力。既然BPEL描述业务流程的能力非常强,那我们究竟为什么应该使用RosettaNet呢?

如前所述,要创建现实世界的Web服务,我需要具有进行电子商务对话的能力。要创建有效的电子商务对话以及开放式可访问公共接口,我需要使用标准化的消息、词汇和choreography。从本质上讲,我需要采取标准的电子商务流程,并且使之能够用在Web服务环境中。

RosettaNet(www.rosettanet.org)是电子商务流程规范的行业领袖,因此自然而然可以选择它作为我们进行电子商务对话的的“标准”电子商务流程。

我相信我们应该使用基于RosettaNet的Web服务,理由如下:

  • 更易于计算ROI
  • 从业务最优方法中获益
  • 更易于赢得合作伙伴接受
  • 节省创建业务对话的时间和工作量

更易于计算ROI


不管可能出现的Web是多么有发展前景又是多么吸引人,许多组织都还是对把资金投入到Web服务项目中感到犹豫不决。 “有钱赚吗?”,电影Jerry McGuire中的这句著名台词,像是挂在每个对激烈的市场竞争感到疲倦的经理人的嘴边似的。这是一项合理的要求,但是我相信,通过构建Web服务我们可以证明,与其花很大的精力对现有业务问题做削减成本和节省时间的工作,还不如集中力量建立Web服务能够使用的模型。

把Web服务建立在RosettaNet规范的基础上,使您可以使用RosettaNet中的某些ROI计算方法。当然,RosettaNet带来的真正利益是使用标准化的电子商务流程,但是许多这样的计算还是能够发挥很大的作用。RosettaNet Web站点包含案例研究,可以证明将业务活动以电子商务的形式进行实现的好处。例如,INTEL最近宣称,它已经使用 RosettaNet电子商务流程进行了多于10%的买卖业务。那是价值超过50亿美元的交易。而我正在本文中构建的Web服务是基于RosettaNet PIP3A4的,它是一个允许合作伙伴下购买订单的电子商务流程。

从业务最优方法中获益


RosettaNet集中了一批业务问题专家来创建电子商务流程,这可以为特定业务流程确定行业最优方法。接下来,RosettaNet就可以采用电子商务流程的形式对最优方法的现实世界业务流程进行建模。然后,在电子商务流程作为规范发布之前,由行业专家对其进行详细的审查。最后,将规范投入业务使用之中,并且消除任何遗留错误。 RosettaNet PIP(电子商务流程)包含数量巨大的专业知识和专门技术,包括进行特定事务的最佳方式。根据RosettaNet规范对Web服务进行建模,使我们能够从这类有价值的专门技术和知识中获益。

更易于赢得合作伙伴的接受


电子商务对话实际上是两个对等体之间的对话。和当前的Web服务设计不同,进行电子商务对话的Web服务不能单独为一个合作伙伴进行设计。它需要得到两个合作伙伴的赞同。虽然对于合作伙伴而言,协商一种新的业务流程是有可能的,但是如果他们将业务流程建立在RosettaNet规范的基础上会容易得多,原因在于这些规范正被用于进行真实业务,并且它们不会偏向任何合作伙伴。

节省创建电子商务对话的时间和工作量


BPEL4WS给您提供了创建业务流程的工具。而由您负责如何设计业务流程。我们可以用BPEL4WS来创建各种新的业务流程,我们也能够用它来对基于RosettaNet的电子商务流程进行建模。我坚信不会改弦易张,因为在过去的25年中,电子商务领域已经进行了大量的研究工作,包括取得了像EDI和RosettaNet这样的主要成果,我们可以从此类工作中获益,并且能够在我们的项目中加以重用。我们可以通过简单地采用RosettaNet电子商务流程并用BPEL4WS进行编写,来大大减少创建常见的电子商务流程所需要的时间、工作量和专门技术。


结论

在本文中,我已经讨论了Web服务作为广泛使用的低成本电子商务对话进行真实业务的真正潜力。我解释了电子商务是什么以及它们如何工作,并且还解释了为什么在RosettaNet上用Web服务建立电子商务对话是一个好主意。在下一篇文章中,我将介绍运用RosettaNet PIP3A4和BPEL4WS创建扩展的电子商务情景。


参考资料

关于作者

Suhayl Masud是 Different Thinking 公司的总裁, 该公司是一个帮助组织了解和开展电子商务的咨询公司,提供培训、体系结构和应用程序服务。Suhayl也是 Agile Webservices组织的共同发起人,该组织提供政策方面的计算解决方案。Suhayl的工作经验包括作为RosettaNet的主要技术设计师提供咨询,他在那里帮助定义了下一代电子商务流程的标准。Suhayl将很高兴收到您的信,邮箱地址为 SuhaylA@DifferentThinking.com

关于报告滥用的帮助

报告滥用

谢谢! 此内容已经标识给管理员注意。


关于报告滥用的帮助

报告滥用

报告滥用提交失败。 请稍后重试。


developerWorks:登录


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


忘记密码?
更改您的密码

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

 


当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

请选择您的昵称:

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

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

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


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

 


为本文评分

评论

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=SOA and Web services
ArticleID=20882
ArticleTitle=使用基于RosettaNet的Web服务: 第一部分:BPEL4WS和RosettaNet
publish-date=07012003
author1-email=SuhaylA@DifferentThinking.com
author1-email-cc=

标签

Help
使用 搜索 文本框在 My developerWorks 中查找包含该标签的所有内容。

使用 滑动条 调节标签的数量。

热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。

我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。

使用搜索文本框在 My developerWorks 中查找包含该标签的所有内容。热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。