Dion Hinchcliffe 在最近的一篇文章中评估了企业架构,特别是 SOA 的走向。他注意到如下一些趋势:
- 现代的以 SOA 为顶层组织原则的软件架构,似乎已经越来越跟不上大多数组织变革的速度了…人们更多的意识到业务似乎被剥离了,尽管企业架构与 SOA 都有意保持一定的前瞻性,但通常的情况下企业都只是作出短期的响应,而后就试图“清除”…
- 对于 SOA 以及基于服务的 IT 的消化仍然太慢…早期对于服务所采取的“梦幻之地”般的方式…最终在许多组织内也产生了变种…成为了更成熟的服务景观,并拥有一定的实际治理。 但现在我们可以看到随之而来的复杂性,欠缺的技术与工具,以及额外的约束,最终将许多对 SOA 的消化扑灭在了边缘…离开了消化与领会,SOA 无法接近 ROI 中的“回报”。
- SOA 的重点仍然是倾向于对于接缝与流程的过度设计,而不是考虑如何移除业务的约束以及增进现成的价值获取…尽管有着 30 年来对 IT 的大力投资,尽管 SOA 的意图是开放性与互操作性,但我们大多数的企业数据仍然是沉没的,并且对于大多数业务用户来说无法访问,筒仓仍然是普遍的,而人员的维度仍旧缺失…
按照 Dion 的观点,以上三点 SOA 的不足,其主要原因可以归结于如下三个主要问题:
- SOA 的实现倾于面向项目或产品。
- 将更多的注意力集中在技术上而不是 SOA 的企业天性。
- SOA 进程更多的是被标准实体而不是真正的实现来驱动。
他作出如下建议:
…今天现代 Web 的开放性与可见性无疑为究竟什么才能有效地促进 SOA 业务成果提供了生动的例子。 我的意思是它解决了关于增进机会响应的关键问题,并且直接支持自服务,在保持高度可伸缩性的同时又能保护用户与数据…面向 Web 的架构 (WOA)…是与 SOA 并行的轨道,它们在这个缤纷的网上世界中有机的发展,以应对许多和我们的组织现今所面对的同样的挑战。
Dion 解释说:
WOA 的关键在于其在线业务至少有一个关键的反馈回路,而在现今众多的 SOA 项目中这一点却非常不明显:它们的业务会从根本上的兴盛或衰落,这取决于它们的服务是否被采用。大多数新型的在线业务在一开始就都提供了 API(Web 版的 SOA),而现在普遍的是, 服务自身——而不是早期可视的 web 页面——在使用中占到了统治地位…这作为一个尺度将会从许多方面影响我们对于 SOA 的关注。
抛开 SOA 与 WOA 之间有着不少的差异,Dion 注意到许多自然地融合于 WOA 的基于服务的方案可以被用以增加 SOA 的业务性能:
- 快速的响应变更。通过扩宽组织内的目标群体,让 SOA 进一步的自服务 (像业务一样运行),以此减少执行的阻塞点。
- 增进消费。采用新的服务交付模型,让 SOA 成为解决问题最方便,最便宜,最快捷的方式。
- 积极的促进价值获取。广泛地开放对数据的访问,让人们使用诸如深度互联的基于 REST 的数据网以及开放的供应链等等。采用基于浏览器的方案来消费企业混搭工具和用户分发的小部件,将 SOA 投射到整个组织。
Dion 在本文结尾作出了如下陈述:
底线是:鉴于许多成功的优秀 SOA 案例都是我们在大规模 Web 上面证明过的模型,我们必须尽最大努力从中学习 (价格是不错的,就算是最前沿的课程在这里也是免费的)。尽管企业 SOA 与基于因特网的 WOA 绝不一样,我们仍可以从成功案例中借鉴最好的想法并将其融合到全球 SOA 当中 (我称之为服务支持的因特网)…
Dion 在定义 SOA 实现的现有问题 (以及它们的起源) 方面看似是正确的。虽然他的解决方案——将 WOA 与 SOA 融合——是否能解决问题仍然有待观察。
评论