星期四, 二月 16, 2006

SOA,商机几何?


SOA,一个普通用户可能还不熟悉的概念。但在有关专家和商家眼中,它却是传统软件体系的"终结者",未来3年内将被70%的企业所接受,其商机无可限量。本文想告诉人们的是:SOA究竟为何物?博弈各方?D?D专家、用户、商家?D?D对SOA的态度是怎样的?普及SOA的时机到来了吗?




            SOA,商机几何?


           


           本报记者 高丽华 周蓉蓉


  


上世纪初,美国一些学者对城市中"马车普及"的前景忧心忡忡,预言到40年代中纽约街头将被6英尺厚的马粪所覆盖。但汽车的发明很快让人们醒悟到,自己先前的担忧不过是杞人忧天。"现在汽车的发展又给人类带来了新的麻烦,不过这也没什么好怕的,因为发明汽车的人类也必定能发明解决汽车麻烦的办法。"



这是一位经济学家在回答"轿车普及"所面临的环境污染、能源短缺等问题时说的一番话。他说自己想告诉人们,人就是为解决难题而生存的,"如果当初我们的祖先一碰到难题就往回缩,那极有可能我们至今还停留在'猿'的阶段上。"



与交通工具的发展一样,人类的信息化过程也从来就是难题不断。而今遭遇的最大难题之一在于:企业运营充满变数,但为企业服务的信息系统却铁板一块,无法随业务的变动而变动。非要改动,则需专业人员自上而下、从左到右重新焊接,成本昂贵不说,久而久之还会把系统变成一个补丁摞补丁的怪兽。



但如同汽车的发明化解了"马粪难题",信息化建设中的"铁板难题"也会有方子可医的,这当中,SOA?D?D面向服务架构(service-oriented architecture)已被不少商家认定为最有效的一剂良药。现在的问题是,博弈各方对SOA的态度是怎样的,SOA的商机究竟有多大,普及SOA的时机到来了没有。



        专家:SOA萌动,应用前景光明




去年以来,有关SOA的信息频现媒体,登陆搜索引擎键入SOA,可调出10万多项符合条件的查询结果,有文章甚至称2005SOA年。Gartner预测:"到2008年,SOA将结束传统的整体软件体系长达40年的统治地位,届时,将有70%的企业会转向SOA。"



SOA系何方神圣?所谓能"终结"传统软件体系的说法可信吗?在62日本报举办的"2005SOA高峰论坛"上,来自中科院的专家对SOA条分缕析地告诉与会者,近期发生的SOA的萌动和热潮,有其充足的技术和市场方面的理由,SOA在"终结"传统软件体系的路上虽不会一帆风顺,但其应用前景光明,当是可以肯定的。



简单地说,传统的软件系统是一种"紧耦合结构",各子系统、各要素之间的构成就像一个垂直的大烟囱,拆分和沟通很困难。SOA的变革在于,它在传统的业务层和技术层之间增加了一个服务层,这个服务层可以通过一套协议或规范把应用程序从底层调出来,加以封装,再根据应用需求灵活组合,象配?x服务一样推送给用户。有了这种不依附于任何平台的服务层在业务层和技术层之间沟通、组合,信息系统就变成了"松耦合结构",想用什么就调用什么,改动调整非常方便。中科院研究员韩燕波就此评价,SOA对打破铁板一块僵局是一剂良药,"它使应用资源虚拟化了,就像电,插上就能用,连街道老大妈都会用"。



"好东西一定是简单的。"中科院软件所资深研究员仲萃豪强调说。CORBA有很多长处,也搞了不少年,但没成大气候,主要是太难了,阳春白雪。好像不同国家的人,各讲各的语言,沟通的时候需要把本地话翻译成世界语。而SOA不需要这种翻译,进到SOA架构里,不管你是哪个国家的人,也不管你讲什么语言,它只需要知道你有什么特长,譬如你是木工、瓦工,我就用你的特长,供需双方通过服务注册中心(UDDI)对口绑定之后,所有的服务都用XML标准语言来完成。这种松耦合有点像中国内地和港澳的一国两制?D?D你只要规定好一个基本大法,你们内部的东西随你怎么变,我不管。



与传统软件系统相比,SOA强调和突出的是"使用者",它对于用户而言成了名符其实的"服务"。这是一个里程碑式的转变。以往信息系统在人们眼中更多的是一种技术,譬如服务器、数据库,人得围着技术转,做大量的二次开发和维护工作。而SOA架构下的信息系统则如餐馆服务员围着食客转,且这个服务是完好封装的,可以通过标准接口多次调用的。对使用者而言,服务是一个屏蔽了底层复杂技术的黑盒子,你不必知道里面是什么,也不必知道这个服务放在哪里,只管调用即可。这种服务还比较便宜,因为它"强调使用而不强调拥有"。



SOA的思想最早可以追溯到1996年(由Gartner提出),但那时的SOA还需依赖于专有的中间件,很难实现跨平台的互操作。基于互联网和XML的、不依附于任何平台与厂商的Web 服务标准的出现,才使得真正的SOA架构得以通行。Web 服务是SOA的核心。中科院副研究员魏峻据此介绍说,SOA并不是现成的产品,而是一种构架性方法。这种"面向服务的架构"如同一个三角形,其相互支撑的三条边分别为服务提供者、服务请求者和服务注册器,它们各自承担着(服务)"发布"(Publish)、(服务)"查找"(Find)和(服务)"绑定"(Bind)三项操作。



作为一种概念,SOA已经成熟,但作为一种架构,SOA的实施并非易事。首先,它包括一系列技术和规范,面临诸多挑战,尤其在项目开发初始,付出的代价要比传统软件项目大得多(项目成功后开发难度曲线会大幅度递减);其次,实现SOAWeb服务技术尚不成熟,标准还处在发展之中,工具也还没有跟上。由于这些个原因,现阶段实施SOA还存在一定风险,全球范围的成功案例还不多。或许正是看到了这一点,中科院研究员韩燕波在62日的SOA高峰论坛上介绍了一个实施SOA的案例后接着强调:"不敢说是成功案例,只能说是案例"。




             用户:远看郁郁葱葱,近看荆棘丛生



"SOA是个好东西,但还有点扑朔迷离,就像一座山,远看郁郁葱葱,近看荆棘丛生,真想登上去的时候不知道哪一条路可行。"南京市政府网站负责人高旗告诉记者,为打造"以市民为中心"的电子政务,今年南京政府网站开始进行大规模的技术改造,目标是把以链接浏览为主的网站改造成可提供交互式、增强式和一站式等多种服务的政府门户。在这一过程中,被称为"将引领软件产业下一个10年"的SOA理所当然成了首选,但做起来才发现"这还是一个概念",缺少成熟的工具和中间件,实施和操作起来觉得没有准谱。



对于政府和大中型企业用户来说,高的看法有一定代表性。南京市地税局计算中心主任谢海航也是位看好SOA的用户,两年前就开始研究SOA,他说SOA能把底层的东西组合成一个个服务,就像盖房子,它会提供标准化的卫生间或厨房,拼装起来方便,质量还叫人放心。但他同时也谈到了现阶段技术不成熟的问题:"SOA从用户角度来看目前只能说是'萌动',到大规模实用还有段距离。厂商炒概念,那是为了东西好卖,但作为用户,我们却不能不规避风险,对尚不成熟的前沿技术只能是学习思想,不急于实用"。



其实,从大规模实用化的角度看SOA,麻烦还远不止"技术的不成熟"。谢海航认为,技术标准主要解决应用形式问题,SOA架构中的"服务"却主要针对业务内容。业务内容的标准化涉及管理、流程乃至文化多个方面,难度非常大。譬如税务部门与公安部门交换车辆数据,公安管理的是车辆,一辆车是一个数据,而税务管理的是纳税人,一个人可能有好几辆车,这就涉及数据约定问题。本来,跨部门进行数据交换是SOA的强项,但如果你说你的,我说我的,信息就失真了。目前大家还只是点对点的约定语义,而真正的数据标准化应该是全世界统一语义。举例来说,建筑业的术语全国通用:高标号水泥是个什么指标,钢筋是几种口径,全国一个样,不存在另外的标准。信息化就做不到这一点,全国的水平参差不齐,数据标准化还需时日。SOA能做多大,要看它能在这个方向上能走多远。


 


江苏省信息中心副主任田景熙提醒关注实施SOA的体制障碍:有多少人愿意把自己的数据拿出来共享?又有多少人愿意把自己的管理权力放出去?这又引出了一个信息系统安全问题。韩燕波认为,SOA框架下的信息共享有个边界问题?D?D哪些东西可以共享?哪些不能共享?要想清楚,定义好。规范性的服务还好办,譬如天气预报,就那么几样东西,基本上几十年不变,电子政务、制造业就不是这个样子,可能会遇到一些突发事件,可能加盟企业要用的那个服务不是你开放的那个,需要对系统做一些改动。这就是个麻烦。而且数据库是命根子,需要有选择地开放,如何选择?太死板了不行,太灵活又等于我把数据全都给你了,增加了不安全因素。这对定义服务的人要求很高,需要行业的专家,需要预见性。



不过,质疑归质疑,这并不影响SOA成为应用的大目标。毕竟,传统软件体系的弊端大家都感同身受,远看郁郁葱葱的SOA便有了现实的诱惑力。北京首钢计量自动化系统工程公司总工程师郑雨春说,SOA对制造企业应是位"很亮丽的少女",闪亮推出已经是时候了。举例来说,现在钢铁企业有个新动向:跟上下游结成战略联盟,比如钢铁厂和汽车厂结盟,我的钢铁就为你的汽车生产配套,同时要求上游供应商,比如炼焦厂炼的焦炭必须符合我的要求。咱们国家以前为什么不生产轧钢板,主要是冶炼工艺满足不了要求,生产的钢板没法轧汽车板,只能轧拖拉机板。现在这种结盟就是为了改变这种局面,这需要更大范围的信息共享。SOA在我们这里也就会有应用空间。



中石化信息系统管理部信息处处长姜林的想法是:目前中石化面临的首先是体制的改革,逐渐从多级法人变成一级法人,整个集团变成一个成本中心,信息化架构也会随之向中心发展,在这种大势下,如何运用SOA理念创建信息系统,就成了必须认真面对的问题。至于具体方案,还在选择中,此前许多厂商都来推销过基于SOA的产品和思想,但"我们不想被某一个厂商的方案和产品锁定"。广东美的集团IT应用管理部总监王俊告诉记者,从客户的角度讲,自然是希望所需的服务都能够得到满足,问题是现代大型企业的客户已经不是孤立的客户,每一项业务都涉及到产业链的协同,一个客户的问题可能会牵出一串客户来。现代制造都是面向订单的制造,从订单的决策到订单的执行,存在很多变数,经常会突发一些任务和业务流程出来,在这种情况下,信息系统怎么适应?我们希望SOA架构能给出成功的解决方案。



GartnerIT主流技术的发展划分为五个阶段:技术显现期、不断膨胀的期望期、希望破灭之后的醒悟期、豁然开朗的应用发展期、大量的工业化生产期。以此标准来看目前国内的SOA,大体处于第二向第三个阶段的过渡期,欲迎来"豁然开朗的应用发展期",还需时日。  




             厂商:商机无限,倾力造市



  


用户刚刚"萌动",厂商却动了真格。用户观望,是怕一不小心当了试验品,先看看左邻右舍再说;厂商??袖,则是信奉先下手为强,惟恐别人抢了先机。



IBM以服务商的角色介入SOA,声称所有的软件产品都基于SOA,服务也全面支持SOA。据说蓝色巨人投入的研发费用已超过10亿美元。BEA定位于SOA平台提供商,并为自己追求的应用境界起了个好名字?D?D"液态化"模式,意即可以打破传统软件的大烟囱式应用孤岛,让服务在多层水平面上流动起来。微软声称自己的.NET架构最适合Web服务,HP联合Systinet公司推出SOA治理与管理的解决方案,CA则把自己包装成最全面的SOA安全解决方案提供商。国内用友、科诺等公司也切入了SOA工具和解决方案的开发。SOA 的市场格局已日渐清晰。



记者注意到,虽然厂商定位各有侧重,相互间还有微妙而激烈的竞争关系,但他们宣传SOA的口径几近一致,那就是强调SOA已经从概念走向实用,商机无限,发展SOA的大好时机到了。



"我们看到了一个非常大的趋势,SOA将引领软件产业下一个10年。"BEA中国区技术总监喻思成接受采访时说。BEA除了不断升级完善产品外,还积极构建客户及合作伙伴生态链,把解决方案放到网上免费供用户下载。从中国用户的反馈来看,市场潜力很可观。而且国内CIO采用新技术要比国外CIO勇敢很多,对SOA的认知程度比国外高,这是经济高速发展带来的结果。与发达国家相比,国内IT的历史包袱也相对轻一些,这是发展SOA的有利条件。



著名作家兼风险投资商杰弗里·摩尔接受计算机世界采访时预言:大约5年以后,信息系统中的顶层将发生重大的变化。为应对这一变化,所有的活动都将汇集在中间层(SOA的服务层)。这是一个巨大的商机。



作为趋利动物,企业在产品研发与市场推广上从来都是不见兔子不撒鹰的,以此来看,SOA应用大潮也许真的要来了。




                 现在就行动?


          


选择是痛苦的。当下的SOA就给用户出了道两难选择题?D?D现在就上马SOA,可能会被过时的、专有的技术缚住手脚;如果做壁上观,又可能错过了实施的良机,在"铁板一块"的旧体系上越走越远,积重难返。



"正确的做法是现在就行动起来。"南京地税谢海航说。见记者面露疑惑,他补充道:现在就行动并不是要你立刻去采购相关产品,而是用SOA理念指导信息系统建设。SOA最重要的是那个A?D?D架构,如果你在信息系统建设初始就能采用组件、Web服务、XML这些标准化技术和专业化分工的方式搭起一个好的架构,你再往完整意义上的SOA迁移就很有优势了,改造工作不会太大,无非是增加一些渠道而已。



"市场没有像SOA这样的东西,它不是个名词,而是个动词,即'使面向服务'。工具只能帮助你实现部分目标。架构则是一门学科,你从工具中是得不到它的"。 ZapThink公司分析师Ron Schmelzer的看法与谢海航一致。"不能把SOA当作一个项目来进行,而应当作一个规划来逐步实施。CIO们应当运用SOA理念对现有的信息系统进行一番分析和梳理,找出问题所在,逐步实施改造。"BEA公司喻思成建议。



即使你已经实施SOA,还有个"实施得当"的问题。关键的一环是"服务化",要把传统的应用变成Web服务,形成那种服务提供、服务请求和服务注册的三角形服务机制。如果不能解决好这种服务化的组合,SOA就会变成一种无源之水,盲目的引入SOA,"服务"也会变成新的IT孤岛。中科院副研究员魏峻说。



北京正邦公司副总经理詹少梅提醒关注SOA实施的代价。前期准备的代价比传统项目要大得多,为此,需求和总体设计乃至架构的实现应是一个工程化的过程,着眼点不应是"这一个项目"。"这就好比盖高楼打地基,如果前期这块东西做完了,后面的东西又没跟它沾上边,那是最大的失败"。当然,前期投入高一些,地基打得牢一些,后面的开发难度会大幅度递减的。对于CIO们关心的旧有系统的改造利用问题,詹少梅回答说,把遗留系统分装出来的关键是看你以前的系统规划与架构是不是合理,如果标准化做得好,就容易融入新系统,没有规划好,那就只好放弃了。



"SOA不能包治百病,我们不妨问一问:哪些地方不需要SOA?"中科院副研究员魏峻泼了一丝冷水。在他看来,SOA是为了应对快速变化的业务,集成广泛资源而为之的架构,若是一个业务变化不大、与外界交互不多的部门,就没有必要用它。因为SOA毕竟是技术与业务之间的一个夹层,接受服务之前多了几道手续,从某种程度上说降低了效率。



总之,尽管SOA的技术尚不成熟,但其方向是不容置疑的。明智的做法是现在就从"架构"上指导信息系统建设。如果现在不干这件事,将来你就没有办法往上走,因为你还是紧耦合。如果迈出了这一步,你就搭建起了一个可持续性发展的信息化平台。北京协和医院信息中心软件工程师魏永华说。

没有评论: