SOA 之于企业,无论有多少种产品和 解决方案 ,具体到每一个企业来说,最根本的 需求 是对企业内部的业务和流程的重构。SOA为企业所能带来的价值,就是基于其内部统一的数据交互接" name="description" />

实践经验分享:SOA的关键是服务构造

发表于:2009-02-04来源:作者:点击数: 标签:soaSOA实践关键构造
java script:tagshow(event, ' SOA ');" href="javascript:;" target=_self> SOA 之于企业,无论有多少种产品和 解决方案 ,具体到每一个企业来说,最根本的 需求 是对企业内部的业务和流程的重构。SOA为企业所能带来的价值,就是基于其内部统一的数据交互接
javascript:tagshow(event, 'SOA');" href="javascript:;" target=_self>SOA之于企业,无论有多少种产品和解决方案,具体到每一个企业来说,最根本的需求是对企业内部的业务和流程的重构。SOA为企业所能带来的价值,就是基于其内部统一的数据交互接口、将业务分解为独立的模块成为服务、提供统一的服务接口,这样的思想所带来的是能够让企业的IT系统根据业务需求的变化而迅速改进。服务构造的过程,也就是对企业业务流程的分解、独立和流程改进的过程。而这个过程,其实未必和技术有多大的关系,而更多的是与技术无关的业务方面的过程,各种技术和方案其实都可以实现类似的需求。普元在最近的SOA大会中提出“SOA的关键是服务构造”也就是从实践中总结出这样的经验。

  普元副总裁刘尔洪对SOA做了一个形象的比喻,SOA想解决的问题是软件太大了不灵活,就要把它拆小。小的东西就像积木一样,拼成什么都行,这个拆开的小积木就是服务。问题是服务难做吗?有人说做服务很简单,随便把现有的软件模块打个包,封装一下就是服务。对于这样的观点,刘尔洪认为,关键在于服务用来干什么?可复用的服务才有价值,现在的问题是服务的质量不高,每天做的软件没有考虑到每一块小的软件都建立业务模型、适应不同的环节。

  另外一个问题就是,服务需要很灵活,只有足够灵活才能够适应变化。灵活对应到实现上就是服务的粒度,这一点对于SOA的实现是一个难以确定的问题。如前文所述的那种通过将软件模块打包封装出来的服务,粒度是非常大的,这样做的问题是复用性很差。刘尔洪说,普元的思想是一直分解到最小的粒度,由一堆最小的构件组合成服务。这样一来服务拼大也行,拼小也行,用这样的方式做出来的服务是很灵活的。对于基于SOA建立大型企业应用,把企业的应用都变成最小粒度的服务组合起来的应用,问题是小粒度的通用性的服务很难做出来,需求经常会发生变化,具体的应用场景也会经常发生变化,如何能够解决这个问题?刘尔洪的答案很简单:就用更小的颗粒解决出来,这是普元一直在提倡的构件,构件拼成服务,服务拼成流程,流程构造出应用,很多应用拼成一个企业。

原文转自:http://www.ltesting.net