SOA已死?SOA实施模式与状态素描关于SOA已死的话题,这两个月不断接到各个方面的问讯,语出自知名分析师Anne Thomas Manes两个月前的一篇博文,大意是在当前环境下,SOA早期的很多项目因为没有达到相应的效益而面临挑战,关于此文作者的背景与上下文,读者可以参考好友劳虎在他博客上的一篇文章。这里不在赘述,倒是想借此话题谈谈SOA实施几年来一些模式的变迁与当前的状态。几年前SOA刚刚进入媒体与公众视线的时候,我发现了一个有趣的现象,不同的人对它的认知完全不同,媒体与市场营销人士将它作为一种革命性的趋势,而多数的工程师与架构师都认为SOA只是一个"Marketing Term", 没啥新鲜的,他们认为SOA不过是在面向对象的方法上加了一层包装,用了更为跨异构的标准技术尤其是Web Service而已。客户方的业务人员听到这词汇,多半认为是个抽象的技术术语,没法理解SOA怎么就面向业务了。对业务人员太抽象,对技术人员太市场,SOA这个概念从一开始在认知上就波折不断。在最早客户谈论SOA 的年代,私下里我经常自嘲我所推广的东西是门屠龙之术,一般的企业在短期内是派不上用处的,没想到后来SOA如同超市里的绿色食品标签,在国内所有的软件领域散播开来。SOA一词这几年的变迁,在媒体,工程师,业务人员的头脑中也如同变色龙,不仅在不同角度上看颜色不同,随着时间的推移这个词的含义也有了侧重点的变化,更重要的是,实施模式与侧重点也在这段时间发生了一些根本性的变化。这里借助国外的一些调查结果,结合自己与一些国内具体项目的观察,给出自己的分析,算是仁者见仁,智者见智的一种。去年开始,媒体对于SOA之水开始失去热度,大有“行到水穷处,坐看云起时”的味道。于是Anne女士的SOA已死才有被断章取义,广泛探讨的现象,Anne女士提到的很多逻辑,自有她的见地,我更愿意从SOA的实施模式来探讨。 SOA的实施模式与状态从InformationWeek给出的国外SOA实施分析报告来看,超过54%的企业项目达到或超过预期,已经是一份不错的成绩单,其情形并不比几年前的ERP实施情况更差。从国内的客户情况来看,SOA的侧重点从强调开发模式的革命性转变,过渡到企业切入点的探讨,再到架构的规划与治理,乃至SOA有关的项目与管理,它落地的主线已经相当踏实。我长期跟踪的一些客户SOA项目都在逐步做到2期,3期,有些已经扩展到企业级,其中大型企业集成项目,流程整合,数据整合,门户整合,业务总线等项目的客户都尝到了甜头,业务价值值得肯定。不过想比于整个的国内IT客户群,应该承认,真正实施SOA客户的还是极少数,归根到底,SOA项目的实施,离不开高水平的架构与规划人员,这部分人的数量扩张是SOA扩张的瓶颈。购买挂了SOA 标签的软件产品和SOA的真正实施之间,还有一段不小的距离。用作标签的SOA,其时髦性现在被云计算,SaaS,Mush-up等后来的热词替代,但背后说的那个服务化的总趋势其实一直都在发展,因此才有SOA 已死的后半句----Anne女士在结尾中写到“Although the word “SOA” is dead,the requirement for service-oriented architecture is stronger than ever。“ 何种方式可以更快兑现业务价值?从另一个角度,这场有关SOA生死的讨论,让我想起2004年那场“Does IT Matter?" 争论,研究与学术机构总是有反骨的,这是他们显示自己价值的地方,当时的质疑者针对的是套装软件的投资方式,假如两家互相竞争的汽车制造公司都部署了相同版本的ERP软件,软件本身并没有给其中之一带来特有的竞争力,而仅仅成为一种Me Too的技术设施。这场针对IT 价值的争论和目前的SOA生死的争论有内在的联系,Anne指出的一些SOA项目短期没有兑现业务价值的承诺,与IT价值的上一场争论如出一辙。她在肯定面向服务架构作为一种架构模式价值的同时,对初始SOA项目过于计划性的实施模式提出了质疑。的确这几年的经验下来,自上而下的大型SOA实施的确遇到了短期价值不明显,甚至成本更高的结构性难题。她在文中提到,作为一个词汇的SOA已死,但她的后继者,云计算,SaaS,Mushup, 反而带来更为强壮的需求。让我们尝试分析她提到的后继者有何规律,最近看了一篇文章,陈述采用轻量的REST代替SOAP模式的服务架构实施的效果会更快。我们权且做这样一种立论,服务导向的架构是一种不可逆转的总趋势,但采用原有自上而下的长期项目的实施模式因为周期过长,遇到组织变化等原因导致短期内的业务效益受到质疑,尤其是在当前的经济环境显得更为挑战;采用自下而上,借鉴互联网模式的,业务价值明确的方法逐步成为实质上更为普遍的方法。换句话说,以企业级业务服务重用,彻底改变开发模式的初始SOA推进模式在实际中逐步被更加针对某些具体业务问题的模式所替代,因为后者更易滚动实施业务价值的轮子。比如SOA治理这个主题,理论上是SOA服务重用的关键,没有清晰的治理策略,大规模的业务重用无从谈起。问题是,对于一个还没有实施一个SOA项目的客户,在听到SOA治理难度后,多半会知难而退,我就见过听了SOA治理主题后决定放弃项目的客户。现在大家都有了经验,只对已经实施了SOA项目,取得了业务效益,但被服务管理所困的成熟客户去谈SOA治理,从而避免了吓跑初期客户的尴尬。 剑气合一是理想办法,对于多数中国客户,剑宗当下更容易起步由此看来,SOA生死的讨论,其实是SOA实施路径选择的讨论。这里引用笑傲江湖的气宗剑宗来将问题形象化,初始SOA的教义类似气宗,就是刚才讲的自上而下的模式,特点是循规蹈矩,按部就班,全盘规划,同步推进,但见效较长,近期的BPM,数据整合,服务总线实施等算是剑宗,是自下而上的模式,项目实施的时候先不考虑过于全局性的问题,比如业务分拆,而致力于先解决一个业务问题。Anne的言论可以通俗化的理解为,现在的经济环境都是短兵相接,练气太慢了,不如一剑封喉来得可行。遥想令狐冲当年,在风清扬的现场教习下,打败田伯光,剑宗的厉害大概也是当下CIO们向往的吧。我前面谈到的一些国内SOA客户,几乎都采用了从单一项目入手的剑宗手法,在项目管理,主数据管理,管理仪表盘得到良好收益,其中一个项目也采用了中间相遇的实施方法,就是把自上而下和自下而上结合的办法,可以称为剑气合一。其实剑宗的手法,是受了互联网模式的启发,试问有哪一个互联网巨头采用的养气的办法起家。亚马逊去年成功运用”平台即服务“(Platform As A Service)模式,将自己的技术平台作为一种商业产品卖给做网上业务的其他公司,算是剑宗里的独孤九剑。 在近期的金融危机的环境下,流程快速变更,数据和实时性分析,应用的快速重建,都需要依托服务化来完成,这几把利剑的商业价值,可能比泛泛的SOA生死争论对于企业更为急迫,对于企业CIO来说,已经没有空间为SOA而SOA,而是要针对当前业务特点谨慎确定实施路径,才是最现实的。
以下为劳虎博客文章地址。
http://space.itpub.net/16186206/viewspace-571442