2008年9月7日星期日

驳《SAP技术转型危局与流变时代的管理》之假命题

作者:Alexander ( 真的勇士,敢于面对淋漓的鲜血,敢于面对惨淡的人生。)
申明:本文仅反映作者的个人观点,不代表任何第三方的立场。如需转载此文,请勿必事先征得原创作者同意。欢迎使用链接引用: http://sapecosystem.blogspot.com/2008/09/1.html

最近,独立撰稿人刘国华先生在《SAP技术转型危局与流变时代的管理》一文中对SAP产品和技术大加抨击。为此,笔者撰写本系列文章,从纯产品技术的角度对原文中的若干个假命题一一加以反驳。本人才疏学浅,如有不妥之处,虚心听取广大博友的批评和建议。沟通交流,共同进步是“SAP生态圈”个人博客的目标之一。

援引《SAP技术转型危局与流变时代的管理》一文观点:
1、“笔者必须告知,至少包括用友、金蝶、远光、和佳、浪潮这几家中国主要应用软件公司的ERP软件新产品的核心应用大部分已完全基于B/S架构,并开始向SOA架构延伸发展。”
2. “SAP技术专家介绍(笔者注:采访的真实性和专家身份有待证实),最近三四年间,SAP试图跳过B/S架构直接转向SOA架构,但是其新一代SOA产品 Business byDesign“已经陷入泥潭””

假命题1:SOA就是比B/S的先进,SOA就是国内软件开发商的下一代技术架构。

在回答这个问题前,请允许本人先解答一个疑问“Why SOA?”简言之,SOA是为了解决复杂的IT环境无法适应灵活多变的商业环境这一矛盾而产生的一种软件架构技术。

1.如何理解复杂的IT环境?
在大型跨国企业中,林林总总的IT应用系统数以百计,一般被称为IT Portfolio。以笔者亲历的某跨国投行项目为例,其IT Landscape中的核心业务系统就多达十几个大类,如市场信息系统(Bloomberg、Router)、行情报价系统、交易委托系统、证券清算系统、资金结算系统、本地财务系统、全球财务系统(SAP)、全球合并报告、内部风险管控系统等。由于资本市场的特殊性,每个大类的IT系统在不同的地区可能由不同供应商的应用系统组成。

2.如何理解多变的商业环境?
还引上例,该跨国投行支持的金融产品/服务涉及IPO、股票交易、基金交易、固定收益产品交易(企债、国债、可转债、回购)、商品交易、外汇交易、财富管理、资产管理等;交易业务涵盖股票市场、货币市场、外汇市场、商品市场。此外,做为一家在全球40多个国家/地区运作的跨国投行,还需要面对交易制度的差异,不同的结算周期,会计准则差异以及本地证券监管部门、税务机构的法律及合规要求。

如何让大量异构的、针对本地交易所和交易产品开发的IT系统能与全球财务系统、全球合并报告系统无缝的集成起来,让管理者能全面、实时地掌握各子公司运作、进行及时的投资决策和风险管控,这对现有的IT计算架构来说,无疑是一个巨大的挑战。SOA的发展和应用为解决这一难题指出了一条方向。

Garnter 在2008年1月3日发布的题为“Service-Oriented Architecture Overview and Guide to SOA Research”报告中指出了SOA应用一般遵循的五个基本原理:
1.系统必须是模块化的。只有模块化才能将一个复杂的问题通过分解成若干简单的、规模较小的组件共同协作完成。
2. 这些模块必须是分布的,可运行于完全不同的服务器上,通过网络进行实时的信息交换。
3. 模块的接口必须是清楚的定义并用文档记录。软件开发者编写或生成的接口有清楚的详细定定义,可以让其他开发人员找到并使用这些服务。
4.提供服务的模块可以被另一个提供相同功能的模块所替换,因为接口的设计完全独立于模块。这种松耦合的属性可以实现系统的可维护性和增强。
5. 提供服务的模块必须是可共享的。模块设计和部署后,可以让他们被其他独立的服务使用者所采用,仅管可能只是引用该模块中的部分商业逻辑。

由此可见,在SOA框架下,复杂的企业应用按照业务流程、功能和逻辑被高度细分成若干子模块,每个子模块只解决其事先详细定义的功能,这些模块可采用分布式部署、通过WSDL可以被其它程序所调用。SOA的基本思路其实就和电子元件封装的原理如出一辙。通过SOA框架下的模块复用和增强的异构系统集成能力(Service-Consumers模式),企业可以避免重复开发和投资,延长企业应用系统的使用周期,实现投资回报(ROI)最大化。

值得一提的是,SOA并不是什么新概念。Gartner Group 早在1996年就提出了SOA,但当时企业所处的环境并不具备实施SOA,很多国外企业也尚处于ERP建设的初期,所以一直是“厂商热、企业冷”的局面。随着全球化、互联网、电子商务和ERP的普及,传统的商业规则被彻底颠覆了,越来越多的IT系统被部署到企业内部,面对日益复杂的IT环境,2000年以后,Web Service的提出使得SOA有了快速地发展。今天,如同在.COM大潮中每个企业都急于申明自己是一家.COM公司一样,不少厂商急于把自己的产品贴上SOA标签。2008年初,用友软件在国内高调推出“全球第一款基于SOA架构的企业应用套件”。更有意思的是,某南方报社的一篇报道和刘国华先生的独家评论更把这个假命题推向了高潮。

根据笔者的个人经验判断,国内中型企业客户的Pain Point并不在于有多少复杂的IT系统需要集成,他们当前更多地聚焦于如何实现营业额和利润的快速增长,希望通过跨越式发展缩短与行业龙头和国际同行的差距。因此,他们更需要一套扩展性强、稳定性好、可定制的企业应用套件,能实现销售到现金、采购到付款、计划到制造、记账到报告等业务流程集成。对于真正SOA应用的优势,如厂商提供的可被调用的Service,灵活的组件升级,由于中型企业相对薄弱的IT基础设施和系统集成实力,很难完成对SOA的深层应用,因此并不是他们的核心需求。

SAP Business ByDesign是基于SOA架构开发的,但它的重点是引入SaaS商业模式,试图通过Hosting的服务模式为中小企业降低系统维护成本。SAP并没打算把Business ByDesign安装到客户处,笔者推测可能也是出于SOA应用的开发和维护对IT人员的技术要求较高等因素的考虑吧。

总结
SOA给身处复杂IT环境的企业开出了一剂良药,但这剂良药并不意味着适合所有企业。软件开发商应因地制宜的为目标客户选择最适合的IT技术。还是哪句老话,客户是上帝,千万别忽视了客户的关键诉求。成功的ERP应用从来不是由先进的技术决定的;成功的ERP应用必须是流程(Process)人(People)技术(Technology)的最优协作,不是受某一方因素所决定的。SOA就是B/S的延伸是一种肤浅的认识,而为了标榜技术先进性而给产品贴上“SOA Inside”的标签其实质也就是一种忽悠和炒作。

后记:
《SAP技术转型危局与流变时代的管理》一文中还有一些似是而非的概念,略举一二,还请刘先生和资深人士赐教。
1.文中提到“正如更早年代的C/S架构取代F/S架构,即文件/服务器”。愚以为F/S算不一种计算架构,那只不过是当年国内厂商使用dbase、Access等桌面数据库来实现网络版应用时的一种用法。在企业级应用中真正称得上计算架构是:Mainfrime (主机,如R/2,Core Banking),C/S (R/3)以及B/S......。

2. 引文“正是这三股相互交织的力量促成了一个复杂多变的社会环境,一个流变(Becoming)的商业环境。”愚才疏学浅,之前从未听说过,后经网上查询发现确有此词。流变学是力学的一个新分支,它主要研究材料在应力、应变、温度湿度、辐射等条件下与时间因素有关的变形和流动的规律。只是流变学在网上和金山词霸中的英文翻译叫“Rheology”,望先生加强文章的严谨性,误导了小朋友总归也是不好的嘛。BTW,先生在网易博客上的那两篇英文博文我也拜读过了,只是愚英文水平不佳,实再难以读懂全文,等愚补习一短时间后再与先生切磋。

另外,先生文中还有诸如“敏捷性管理”、“适应性品质”等一系列眼化缭乱的专业词汇,愚也不甚明白,请容愚多花些时间仔细琢磨琢磨后再与先生交流。

愚曾在先生的博客上撰文诚肯地欲与先生交流文中值得商榷的若干问题,不料收到先生批复“不明白你的观点,请学习我的文章,找到硬伤再说”,我当场快晕倒了:),望此次能收到先生的正面回复。

4 条评论:

匿名 说...

心有戚戚焉. 你一定是位资深的专家.
我们应该容许理性讨论的空间,而不是用煽动的方式(demagogy)去打击别人.

Alexander 说...

也道理,也许我也是受某些事件的影响,有些情绪化。后续文章一定注意,谢谢您的提醒。

- Alexander

匿名 说...

别无会,我是指别人

Alexander 说...

Anyway,即便是对他人的提醒,也是可作为一面镜子,我还是删除了文中某些略带个人感情色彩的贬义词。希望更多的是一些技术性的中性陈述。再次感谢!

- Alexander