在SOA阵营中,微软绝对占有 重要的地位,但说起微软的SOA,多数人却说不出个所以然,微软的SOA也只有在与其他公司的对比中才得以显山露水。由于IBM、BEA的技术都是基于 J2EE架构,因此微软的SOA显然与IBM、BEA的技术不同,是基于.Net架构的。此外,IBM、BEA都有自己强势的中间件产品,Oracle、 SAP的长项则在管理软件,所以微软的SOA又被归结为在开发端的SOA。但这几种分法都有其局限性,原因就在于各IT巨头都在利用SOA加强自己已有的 优势。
数据挖掘论坛
IBM长期以来倡导“随需应变”,因此IBM把SOA当做“随需应变的DNA”就一点也不足为奇。比较起来,BEA则把SOA当做自己最重要的一项发展策略,但这源于BEA公司产品的单一,也正是因为这个原因,才有Oracle公司出高价欲收购BEA公司的事件。 数据挖掘实验室
循着这个思路,我们就不难发现微软想利用SOA干什么。事实上,Saas(软件即服务)的兴起,标志着一种通过互联网交付软件的全新的软件交付模式正在为人们所接受,而微软则是做传统套装软件最为成功的企业。显然,微软如果不做出转变,Saas将对其造成极大的损害。 数据挖掘论坛
然而,我们不得不说,微软确实是一家具备高瞻远瞩能力的公司。微软并没有简单地接受 Saas的挑战,而是瞄准了用户对Saas的一个误区。这个误区来源于业界人士对“服务”概念的过分热衷。我们知道,软件确实可以以服务的方式,通过互联 网提供。并且,这样一来,用户可以先试用互联网上提供的软件,从而以“先尝后买”的方式确认这种软件是否真正适合自己。不可否认,Saas模式也确实可以 降低用户针对软件的总体拥有成本。但是,服务还是不能替代软件的作用。 数据挖掘交友
其中的原因,在于用户的个性化需求。我们习惯于去超市购买东西,但我们是否能够保 证我们去一次超市就能购买到我们所需要的商品呢?多数情况下不能。大型企业有自己的个性化需求,小型企业的个性化需求更多。具体来说,软件在可操作性、可 伸缩性、可定制性、可扩展性、整合与集成能力等多个方面仍然具有着以网络为基础的服务所无法企及的优势。也正是这个原因,微软提出的是“S+S”(软件+ 服务)的战略。如此一来,以Saas为代表的服务模式不仅没有颠覆传统的软件商业模式,相反,服务与软件构成了一对互补的关系。
数据挖掘实验室
微软提出的S+S不是简单的一个东西,它包容了Saas、SOA和Web 2.0技术等诸多要素。至此,我们说SOA是微软S+S的实现工具,一点也不为过。 数据挖掘论坛
微软的S+S包括了体验、交付、联盟、聚合等几个层面的内容。在体验 (experience)层面,S+S涵盖了三个关键的客户组件,分别是易于部署的浏览器、富客户端、信息工作平台Microsoft Office软件。在交付(delivery)层面,传统的软件以打包套装的方式交付,Saas则通过互联网的方式交付,而S+S则混合采用了打包套装、 互联网提供等几种交付方式。在联盟(federation)方面,S+S是跨组织的、自底向上的形式,数据、业务逻辑、服务联结成了一个有机整体。在聚合 (composition)方面,S+S达到了新的开发层级,将服务、数据和用户体验聚合在一起,首先以服务为基础单元,在服务的基础上搭建SOA,然后 再在SOA的基础上搭建Office Business Application,作为实际的用户层面的接口。
微软的SOA之所以神秘,还有 一个原因就在于它的实现工具总让人有一种神龙见首不见尾的感觉。微软的BizTalk Server能起到ESB的作用,却一直没有ESB的名份。曾被寄于厚望的Indigo,号称为合作伙伴建立新一代连接系统SOA铺平了道路,但在更名为 WCF(Windows Communication Framework)以后,尽管有不错的表现,但距离SOA的整体实现还有不小的距离。这使得业界用户不禁开始猜测,微软是采用什么技术实现SOA的。