从信息角度透视SOA设计

日期: 2008-12-29 来源:TechTarget中国 英文

  SOA设计技巧的主流是以企业IT资产的功能分解为中心的,常常是事后才想起对SOA信息方面进行处理。在实际中,SOA解决方案需要囊括一组广泛的设计考虑,反映出信息架构的最佳实践,以全面支持可伸缩的、一致的并且可重用的信息访问。在他们的新文章中,Brian Byrne、David McCarty、Guenter Sauter、Peter Worcester以及John Kling介绍了代表SOA设计中的信息透视图的一系列模式和能力。他们的方法保证了最佳的方式利用信息以支持SOA解决方案的技术目标和业务目标:

  服务可以跨整个企业重用。

  向消费者公开的业务数据是准确、完整和及时的

  跨业务领域和技术层共享的数据具有共同的结构,对于所有参与方具有共同的含义。

  将企业的各个业务领域链接在一起的核心数据实体跨所有业务线保持一致和可信。

  企业能够从它的数据和数据系统获得最大的业务价值。

  这篇文章定义了三个主要的SOA相关模式:

  通过业务术语表定义数据语义

  任何成功的SOA都需要建立一个通用的容易访问的业务术语表,业务术语表定义与过程、服务和数据相关的术语。SOA实施人员在整理组织中公认的业务语言和缩写词时,常常发现术语存在不一致的地方。如果客户、渠道、收入等关键术语的定义不一致,就不可能实现与这些术语相关的服务。如果相关人员对服务的参数(即服务获得的数据集)的含义有不同的解释,服务的实现就不可能成功。关键在于,业务分析师和技术人员必须对SOA领域的所有方面(包括过程、服务和数据)使用的术语有共同的理解。业务术语表可以消除在描述核心业务概念时出现歧义的可能性,从而避免误解数据需求。业务术语表建立一个通用的词汇表来控制词汇的定义,从而消除误解。每个词汇的定义包含描述和其他元数据,还要确定它在分类体系中的位置。由专人负责术语的定义:他们帮助定义术语并支持对术语的管理。

  通过规范化建模定义数据结构

  在设计服务时,一致的术语表是好的起点,但是仅有术语表还不够。还必须清楚地了解业务信息的结构。服务的输入和输出参数(即消息)常常不是单一数据类型那么简单。它们代表着复杂的实体及其关系定义。如果SOA架构师在设计公开的服务模型数据格式时使用规范化模型,那么可以大大改进SOA项目的开发时间和质量。过程、服务/消息和数据模型的规范化会加快设计速度,利用数据建模的规范化方针,避免不必要的转换。从而产生能够满足不同服务消费者需要的服务定义,因此可以减少重复的服务。规范化数据模型在数据层建立这种统一的格式,而规范化消息模型在服务层定义这种统一的格式。规范化数据模型和消息模型的模式将在本系列的后续文章中讨论。Industry Models提供一组过程、服务和数据模型,可以使用它们进行服务体系结构的分析和设计,确保跨建模领域的数据定义保持严格一致。它们定义对特定行业领域进行建模的最佳实践,并提供一个可扩展的框架,这样在添加更多服务时不必重新设计SOA。

  分析数据质量

  如果考虑了上面描述的概念,设计师就可以让服务设计在模型和元数据工件之间保持高度的一致性。但是,这并不能够保证服务返回的数据质量是可接受的。数据即使满足它原来的存储库和应用程序的规则和约束,也不一定能够满足企业级的需求。在将数据通过SOA向企业范围公开时,在原来的应用程序中无关紧要的质量问题可能会变成很严重的问题。因此,问题就是:公开的数据的质量是否满足SOA项目的需求,以及如何有效地做出这一判断?建议的解决方案是在服务分析和设计期间进行数据质量评估。在对支持服务的源系统进行分类之后,就可以开始研究它们的数据质量问题。……应该检查数据是否符合相关的完整性规则。应该检查是否存在重复的数据,研究在数据匹配和聚合期间如何解决重复的数据。以这些分析为基础,可以采取适当的措施来确保服务的实现能够满足潜在服务消费者对数据精确性和含义的要求。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • 揭秘New Relic APM技术细节

    New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响

  • 仅凭SOA和云无法解决业务数据管理风险问题

    SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。

  • 联合创新,携手共赢 华为与Commvault签署全球合作联盟协议

    【中国,上海,2015年9月19日】在2015年华为云计算大会上,全球领先的信息与通信解决方案供应商华为与美国知名的数据管理软件及相关服务主要供应商Commvault签署全球合作联盟协议。基于合作协议,双方将会加大投入数据中心备份解决方案在云化环境下的“可服务化”技术研究 。Commvault公司全球业务发展副总裁Andreas May、华为IT数据中心解决方案总裁马力出席签约仪式。