InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

你在SOA实现中应用筒仓分析了吗?

作者 Jean-Jacques Dubray 译者 王锐 发布于 2008年7月23日

领域
企业架构
主题
治理 ,
SOA
标签
模式

MomentumSI的CEO Jeff Schneider试图定义出IT筒仓和面向服务体系结构(SOA)之间的关系。

我认为一个筒仓(silo)是一个系统,或者说是信息仓库,它解决了企业的一部分问题,同时却将相同或者相似的问题留给其它的领域自己解决。筒仓造成了系统、业务逻辑和数据的重复。

Jeff当然不是第一个探讨这种关系的人。 Dave Frankel,SAP实验室的标准体系架构领导者,将SOA定义为

SOA的核心思想是IT资产重组为松耦合组件。那些组成SOA核心部分的工具构建的组合应用以唯一的方式编排多个组件,由此拓展并最终打破那些妨碍集成、呆板的IT筒仓。这些筒仓需要多级集成和清理,导致越来越多的维护和操作费用。一般来说,筒仓很有害。

最近,Joe McKendrick发布了一个报告,这个报告详细说明了农业信用加拿大(Farm Credit Canada,FCC)——一家加拿大农业金融服务提供商——采用SOA方法将自己从一个筒仓组织(其中,为每个特定业务功能部署了一个应用)重新组织为一个“以服务为中心”模型的过程,其中的应用程序按照面向服务体系结构(SOA)原则来构建。他在报告中指出,这个转换经历了一个六阶段。

1)CEO驱动:“CEO发起一场文化革新运动,将其作为创建一个‘以客户为中心’组织的思想基础。”

2)过程革新:“组织关注需要完成那些事情才能把组织过程和系统集成起来,进而能够提供一流客户体验。”

3)转变IT自身:“CIO评估IT组织的当前状况,所有当前IT项目在此期间都要暂停。”为了支持由SOA原则支持的“以架构为中心”方式,所有的筒仓方式都被抛弃。

4)“通过实现一个精心挑选的SOA业务流程”,完成概念验证

5)治理:“组织负责重新对其它过程进行详细设计,并承担那些与管理“过程驱动”IT组织相关的治理问题。”

6)迄今为止转变IT功能及其关联技术的收益。CIO识别各种收益,从业务和IT之间沟通的改善,到可重用的IT资产的开发。

Jeff注意到,一般情况下:

几乎所有的巨型组织都有很多筒仓,成因多种多样:
  • IT的资金产生于每个业务领域,每个领域购买/构建它们自己的系统
  • 企业合并或者并购导致了重副(筒仓)系统
  • 整个企业的短视或者规划导致了无意识的筒仓

……[然而]这些公司[的确]没有执行“筒仓分析”。

他的文章提供了执行这个分析的实际步骤:

  • 我们的筒仓是什么?
  • 这些筒仓有一个合理的存在的理由吗?
  • 我们希望哪个筒仓结束掉?
  • 我们可以实际消除掉哪个筒仓?(政治,投资等等)
  • SOA会导致“筒仓服务”吗?

这个列表中最关键的一个问题是最后一个:SOA会导致“筒仓服务”吗?Jenny Ang和她的同事已经认定这会是一个潜在的SOA反模式

Eric Roch也在今年早些时候问过这个问题

你如何确保SOA不会围绕业务单元创建一组新的筒仓?

Eric建议

  • 建立一个战略服务蓝图(未来的业务服务目录)
  • 组建一个多功能的SOA指导委员会,由SOA发起人、每个应用系统的首席架构师以及一个企业架构师组成

Joe McKendrick认为从两个关联层面应对这个问题

  • 首先,从技术角度,是联邦。超过1/4的公司已经转移到一个联邦的体系架构来支持多个ESB或者中介实例。试图通过单个ESB管理一个成长中的SOA是不可持续的。
  • 然后,从业务角度,是治理。有效的治理将会理清混乱不堪的服务。

Jeff总结说:

筒仓分析应该成为每一个业务分析者、架构师、开发者和治理专家的根深蒂固的观念。对我们下一代的教育失败会导致更多的筒仓——仅仅使用Ruby而不是Java来开发它们……

Jeff列举出了很多每个SOA治理组织在某个时候都应该询问的重要问题。你在SOA实现中考虑到筒仓问题了吗?你通过你实现的新服务成功避免新的筒仓了吗?你的BPM和MDM战略如何与筒仓相交的?

查看英文原文Did you Perform a Silo Analysis as part of your SOA Implementation?
筒仓 发表人 wang yi 发表于
Re: 筒仓 发表人 小刀 凉粉 发表于
Re: 筒仓 发表人 胡 键 发表于
Re: 筒仓 发表人 wang rui 发表于
Re: 筒仓 发表人 Mountriver TY Yu 发表于
Re: 筒仓 发表人 胡 键 发表于
看了一半 发表人 楚 西岳 发表于
孤岛? 发表人 Huang Huang 发表于
Re: 孤岛? 发表人 胡 键 发表于
  1. 返回顶部

    筒仓

    发表人 wang yi

    Sole->筒仓? 服了

  2. 返回顶部

    Re: 筒仓

    发表人 小刀 凉粉

    我觉得不好翻译的词最好就保留原样,不然翻译出来更让人不好理解

  3. 返回顶部

    看了一半

    发表人 楚 西岳

    回头看了遍原文才明白.

  4. 返回顶部

    孤岛?

    发表人 Huang Huang

    貌似这个意思。。

  5. 返回顶部

    Re: 筒仓

    发表人 胡 键

    老兄是指silo吧。

    silo翻译成筒仓或竖井,都区别不是太大吧,呵呵。而且这个词也不是出来一天两天了,我第一次看到它是在booch的《object solution》中。只不过是比喻嘛。

  6. 返回顶部

    Re: 孤岛?

    发表人 胡 键

    我倒觉得使用竖井或筒仓,符合原来的比喻。

  7. 返回顶部

    Re: 筒仓

    发表人 胡 键

    silo这个词翻译成“竖井”或“筒仓”确实是合适。在6月的新闻www.infoq.com/cn/news/2008/06/soa-coe中已经出现。引自该文...

  8. 返回顶部

    Re: 筒仓

    发表人 wang rui

    嗯,这个词其实也犹豫了很久,翻出来不容易理解,不翻出来原词放到那里又不知道是什么意思。

  9. 返回顶部

    Re: 筒仓

    发表人 Mountriver TY Yu

    翻译得不错啊:-)我没读原文,瞄了瞄就知道作者在讲什么故事,这和对其思路背景的熟悉程度有点关系吧。

    “筒仓”是本意,我认为并无不妥。将筒仓用于组织范式的比喻是经典用法,大概是90年代到2000年间的,是Re-engineering(常见提法BPR)思潮的典型用法。是谁最先用没考证过,但很早就有。

    翻译的词,觉得没有公认有把握译法又很关键,用括弧注明原文,工作就算到位了。

深度内容

大规模视频网站的计费与流量管理

本次分享将会就大规模视频网站的计费与流量管理这个话题,从操作层面细细进行讲解和分析,为系统工程师们揭示平日里我们没有关心的另一些内容。同时也希望本次分享能揭示行业中的一些“潜规则”,让互联网行业的流量与带宽管理更为开放与简洁。
本次演讲视频录制于QCon杭州2011

专访Jeffrey Richter:Windows 8是微软的重中之重

Jeffrey Richter以其多本Windows核心技术的经典著作而闻名,同时,他深入掌握微软的.NET等一系列核心技术,2012年1月,Jeffrey Richter在北京接受了InfoQ中文站的专访,谈到Windows 8和WinRT编程,并就异步编程、Windows编程中的可扩展性、性能和安全性方面给出自己的建议。

应用云平台的可用性——从新浪SAE看云平台设计

云计算平台的可用性,相比传统互联网服务而言,更加复杂和困难,也更具有挑战性。本文借助新浪SAE云平台为读者讲述了云平台可用性的定义、如何打造高可用的平台,以及对云计算的用户提出了建议。

JVM定制改进 @ 淘宝

淘宝高度重视Java平台的健康发展,组建了一个团队专注于Java平台的底层部分的性能、功能与稳定性改进;工作主要基于OpenJDK中的HotSpot VM开展,其中一些通用的功能随后也会逐渐反馈给OpenJDK社区。希望能与使用Java平台开发应用的大家交流经验。
本次演讲视频录制于QCon杭州2011

"伤得起"的云计算应用——对云端应用之架构的思考

2011年4月21日至22日是值得云计算从业者纪念的日子。Amazon的IaaS服务出现故障,导致许多商业网站的服务中断,影响非常严重。作为云计算用户,我们需要思考的是,如何保证即便在云服务不可用的情况,我们的应用架构仍然能够屹立不倒?本文正是站在云计算用户的角度试图探讨这一问题。

让交付的速度跟上思考的速度

12人的技术团队,4组刀片服务器,每月20亿的访问量,每日1次准时部署,99.9%的可用性。这可能吗?当然。想知道如何做的吗?百姓网将与您分享他们在DevOps实践过程中的经验和技巧。
本次演讲视频录制于QCon杭州2011

架构之路——穿行在产品和业务之间

篱笆作为一家起源于社区的电子商务公司,反映到技术层面就是同时要面对产品和业务,以及经营战略的变化调整。如何在产品和业务的夹缝之间完成技术架构的抽象与平衡,寻找更有效的价值定位,这当中有些经验教训和个人感悟愿与众人分享。
本次演讲视频录制于QCon杭州2011

特性注入:成功三部曲

本文将对特性注入以及相关方法做一个扫盲性的介绍。我们会解释这个框架的关键要素,并附上实例来证实它们。为了让文章保持相对较短,我们不会深入到某个工具或方法中,而是会给出一些参考资料,以便大家做进一步的研究。