技术开发 频道

用友U9产品SOA设计架构遭技术质疑

  SOA的设计理念到底体现在哪些地方?

  ERP产品的设计架构理念引入SOA的思想值得提倡。从技术的角度来看,SOA对软件开发的影响是深远的,一方面SOA在继承传统的面向对象和组件化(构件化)编程思想的同时,更加强调了软件作为商业资产的可复用、可集成能力,其中软件(组件)的开放性和标准化是SOA的基石,它消除了软件(组件)之间交流和衔接的障碍,是软件实现“积木式”灵活装配的基础,同时,SOA强调了服务的治理,其实是为软件(组件)制定了一个价值衡量标准(或服务分割标准),用以界定软件(组件)的服务价值,这是软件(组件)可复用、按需组装的价值基础;

  另一方面,SOA强调了支撑“积木式”编程的统一基础设施环境,包括设计时的服务组装、运行时的服务调度(比如:工作流引擎)、统一的服务通信总线(ESB),这些基础设施提供了随需应变的服务组装能力和可伸缩、低耦合、可靠高效、分布式的服务运行环境,这是对组件化(构件化)编程模式的最新发展和完善。SOA是第一个真正完整、系统的阐述和实现组件化(构件化)编程思想的软件架构,是当前软件系统架构的集大成者。

  对用友U9产品SOA设计理念在技术上的具体体现问题,用友软件股份有限公司EBU平台开发部经理张劲涛接受记者邮件采访时谈到,“U9的SOA是将企业的核心业务构造为一系列可复用的标准服务,这些服务具有良好的接口定义和松耦合特性。U9的SOA解决方案就是将这些服务按企业的不同需求和业务规则进行组装,组装过程是可变化可调整的,这样软件可以随企业的发展变化而任意组合和扩展,跟企业一起成长和进化,使得企业的IT资产得以“动态”保值增值。”

  “从技术角度来看,这个解答相对说得比较含混,这更像一个商业性的媒体回答。” ITPUB社区一位资深技术主管在接受记者采访时对此回答表示不满。

  “从技术编码实现上讲,用友U9产品内部可能改变了过去定义dll接口的紧耦合或集成调用方式,不同模块之间全部采用Webservice调用,并定义了良好的服务边界。如果内部实现具备这些特征,那证明该产品设计的确实现了SOA的理念。”

  “如果你宣称你的产品是符合SOA架构设计,你无需去解释SOA架构的好处,业界解释这么多年了,好处大家都知道,你只要告诉我们,U9的研发过程经历的SOA架构的服务定义、软件设计、流程(应用)实施这三个过程中,我们的技术和架构团队是如何做的?我们的开发队伍是如何实现的。比如,服务的定义,我们如何确定服务的粒度,不同行业的服务定义有何差别等等?再比如,用友的UAP支持SOA架构,是如何实现ESB支持BPM的?;坦率说,目前完全基于SOA架构实现的大型软件产品并不多,如果将这些软件架构及设计经验公布出來,我个人是非常愿意学习和研究的。用友如果这样做,也能给对手造成技术壁垒。”

  据记者调查了解,大部分ERP技术实施顾问及一些开发者,对用友U9这样利用SOA来做产品宣传并不满意。另外,用友ERP产品从U8到U9这种颠覆性的设计演进产品的方式也是用户不能接受的,这2个产品从技术兼容性和升级上讲,几乎没有任何关系,因为从U8到U9完全可以看成是2个不同的产品,整个设计和架构全变了。

  “如果一个企业的重要RRP系统,每5-6年就要推倒重来一次,不管是对用户还是对软件提供商而言,都是无法承受之重!”

  中国企业信息化20年的历程也是中国本土软件企业成长的历程,我们看到国产的ERP软件厂商今天已经逐步具备了和世界级的软件厂商竞争的实力和机会。理论上讲,不存在完美或没有BUG的软件,因此我们没理由来苛求任何一款软件产品。但是,如果像用友这样的代表性厂商,今天如果能在自己前进的路上考虑得更深远一些,步伐放缓使得每一步迈得更坚实一些,那么明天它一定会走得更好更远!

0
相关文章