BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Open Group发布新技术标准——SOA本体

| 作者 Boris Lublinsky 关注 1 他的粉丝 ,译者 马国耀 关注 1 他的粉丝 发布于 2010年12月20日. 估计阅读时间: 5 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

为了通过SOA架起业务与IT之间沟通的桥梁,Open Group发布了一项新技术标准——SOA本体——旨在更好地定义SOA的相关概念、术语与语义。该标准

……从业务和技术层面定义了SOA的相关概念、术语和语义,目标是:
  • 为特定领域的进一步工作建立基础
  • 在业务和技术人员之间架设沟通的桥梁
  • 加强业务和技术社区对SOA概念的理解
  • 提供一种清晰且准确地描述问题和机会的方式,以促进相互之间的理解。

本体的两个核心概念是系统元素,其中:

元素是特定的抽象级别上不可拆分的不透明实体。元素有着清晰定义的边界。

系统是由其他事物构成的有组织的集合。系统中的具体事物就是元素的实例,实例为系统所用。

两个概念都是通用的,它们可用于描述任意的实现方式,也可描述通用概念,系统包含元素,系统又能以层级的形式组合(由系统组成的系统)。域和域之间的差别在于其中所包含的系统和元素的具体含义的不同。

本体的另一核心概念是服务。它是SOA的基础,并且一直用于SOA系统的描述与实现的实践当中。

服务是对具有特定产出的可重复活动的逻辑描述。它是自包含的,对使用者而言它是一个“黑盒子”。

在定义服务时本体省略了通用的术语“业务”,标准中有这样一段描述:

……业务的概念因不同的视角而异——例如,在某人看来是IT概念,在另一人眼中却是业务(IT的业务)。本体中定义的服务与传统意概念上的业务域或IT域是不相干的。

尽管在本体中服务是作为元素的子类而定义的,但是它也提到,上层类别(如系统)的实例提供的能力也可视为服务。

在本体中,与服务相关的其他上层结构有服务契约(serviceContract)、服务接口(serviceInterface)和信息类型(informationType)。

服务契约定义了交互参与者(服务提供者与服务消费者)必须(直接或间接)达成一致的术语、条件和交互规则。在交互过程中,服务契约与所有参与者进行绑定,包括服务本身和为特定的交互活动提供服务的元素。

它描述了正确使用服务所需的具体协议。它可能来自准确描述的服务功能需求,也可能产生于希望规范服务使用的愿望。

服务接口定义了其他元素与服务交互和交换信息的方式。

良好定义的服务接口使得与服务的交互非常简单,能使其他元素有条理地使用服务。服务接口告知其他元素如何向服务发送信息或从服务获取信息。 与服务之间的特殊信息交换是通过信息类型(informationType)而定义的。

SOA的一个主要优势是服务的可组合性。SOA的该属性由两个本体概念定义——组合和服务组合(serviceComposition)。

组合的定义是——为实现特定目标而将一组事物装配起来。SOA本体将组合定义为系统的子类,所以,它强调:组合是一个系统,而系统不一定是组合。它还进一步区分了几种组合模式,譬如适配组合模式(Orchestration Composition Pattern)、编排组合模式(Choreography Composition Pattern)和协作组合模式(Collaboration Composition Pattern)。

下面是组合的特例:

……服务组合(serviceComposition),即将一组服务装配起来从而形成一个新的、粗粒度更大的服务。

最后,本体将事件也加入到SOA概念的基础范畴。

事件、发出事件或响应事件的元素,它们任何事件系统的重要内容。事实上,SOA系统经常需要发出(并接收)事件。

标准的发布引起了SOA实施者的极大兴趣。Dana Gardner认为:

SOA本体技术标准整合了不同的架构、工程、业务和市场域,为业务和技术人员提供了探讨问题和机会的通用术语及概念映射。它提供的一致框架可随着SOA项目的发展而重复使用,它还为特定领域的深入实践提供了基础。

Heather Kreger说

[本体]使得关键SOA概念易于阅读和理解,更重要的是,它提供了一组企业内/间一致认可的定义和关键概念的认识。任何架构师,若要与(企业内,或与企业外的厂商,供应商的)IT、业务、市场人员有效沟通,“使用同一语言交流”是其中关键。

当前枝繁叶茂的SOA术语有害于SOA。该项Open Group的新标准试图将它们汇拢并有效地组织起来,从而建立一套通用的SOA语言。通用语言有助于人们问出正确的问题、清晰无误地解读问题的答案。


查看英文原文:The Open Group Releases a New Technical Standard - SOA Ontology

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

by 牛 魔王

这翻译的都啥乱七八糟的

Re: 唉 by Wang Chunshan

翻译的很清楚啊,虽然都是片段,但对核心的概念和意义说的挺清楚。

Re: 唉 by 马 国耀

您好,那些地方翻译的不妥,请您指教!先谢谢了。

Re: 唉 by Xu Tom

1. Domain一词在文中有时译成“特定领域”,有时直接是“域”,建议统一。我个人理解这个词其实是指“Business Domain”,
2. Current proliferation of SOA terminology hurts SOA,这句不知能否译成“目前日益发散的术语用词反而会有害于SOA的发展”?
3. “Making sure you are ‘speaking the same language’ is essential for any architect to be able to communicate effectively with IT, business, and marketing professionals within the enterprise as well as with vendors and suppliers outside the enterprise,任何架构师,若要与(企业内,或与企业外的厂商,供应商的)IT、业务、市场人员有效沟通,“使用同一语言交流”是其中关键。”后面译成“至关重要”可能更好。

其实翻译是挺麻烦的事,既不能弄错技术问题,又要以易理解的中文表达出来。希望大家理解译者的努力工作及不易。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

4 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT