(转址:七哥http://gocom.primeton.com/blog/index.php?op=ViewArticle&articleId=891&blogId=62)
想起宽带刚刚普及的时候,我在硅谷的家中也就开始安装了,不过麻烦的事情是家中有5个电脑分布在5个不同的房间。房子是建于1963年的老房,所以用网络线的连接就成为问题。最快速且便宜的解决方案是布裸线,否则就要开腔凿洞。因此,家中的墙角和房门口的过道均成为网线的的落脚之处,难看之极,但这是当时最简单的解决方案。直到无线局域网的出现,这个问题才得以解决。
在中国的小区建设中,宽带的连接成为基本配置,所以老的社区曾经也有同样的问题,而大量的新社区这个问题就不存在了。即便有无线局域网的技术,有线宽带的接口还是都提供的。新社区的好处就是可以在一开始就部署新技术,而不需要走老路。
如今,全世界都在嚷嚷SOA,那我们也需要考察美国人怎么部署SOA,中国人怎么部署。研究这个问题,对我们软件公司还是对我们的客户都是有极大帮助的,以免再一次被我们的“主流”厂商误导。因为,美国人如何部署SOA决定美国SOA产品的特征,中国人怎么部署决定中国SOA产品的特性。
SOA
的核心是把业务流程功能模块构件化,并对外提供标准的服务,基于这些服务,企业内部的不同业务部门或是不同企业之间的业务整合就更加容易一些。SOA的出现是由于互联网技术的出现,将原来各自为阵的EAI市场标准化。
在美国由于多年的应用系统建设,企业的业务流程大多数以非标准的形式被掩藏在各种各样的应用系统之中,比如CRM系统,ERP系统,HR系统,信用评估系统等等。所以实现SOA架构的第一步是将那些掩藏在个应用系统之中的业务功能模块切割开来,加以包装之后成为标准的服务构件,然后还要将分散在不同系统中的数据整合包装成为数据服务,最后根据业务的需要同过BPEL将分散的服务连接成为新的服务。所以美国实现SOA的方法为:
1
。对原有业务流程的提取和包装成为服务构件(SCA);
2
。对原有数据的整合包装成为数据服务(SDO);
3
。用BPEL实现新的流程。
这个做法的可行性基于一个重要前提:原有的业务流程可以被切割包装(代价问题),原有的数据可以在一定程度上被标准化包装成为服务,如果所有的系统都需要通过人工切割和包装则代价太大,必须存在一次切割多次复用的情况,否则切割的环节无法产品化。由于美国企业的应用系统大量采用了有限厂商的产品比如SAP,ORACLE,SIEBLE等,一定程度的标准切割是存在的,尤其是多年的EAI实践,为切割的标准化打下了基础。尽管如此,大量的基于人工服务的切割还是必须的,所以,印度人有饭吃。而这些切割的工作与中国软件外包企业多半无关。
因此,我们可以预见美国制造的SOA产品将把具有标准切割及打包功能作为重要的卖点,也是产品的价值所在。市场决定产品的特征,就这么简单的逻辑。
中国的
SOA
如何实现呢?我们的预见是多半是把系统按照SOA提供的标准来建设,主流是把系统建设成为
SOA
标准的系统,而不是切割和包装,那些需要切割和包装的系统绝大多数依赖于服务而不是产品。作出这个判断基础两个前提:
1.1。
原有的系统很少;
2.2。
那些已经存在的系统很少是能够被标准化切割的;
因此,在中国开发
SOA
产品最重要的特征是如何在一个标准的平台上(框架内)构造企业所需要的所有标准服务,并且容易管理和发展(变化)。中国市场
(
客户
)
面临的主要问题有如下几条:
-
-
原有的系统难以切割,业务流程难以提取;
-
复杂的数据难以整合;
-
新建的系统没有统一的技术架构,产生更多的标准化问题。
考察中国的市场我们可以作出如下的预言:
1.1。
SOA
将被主流市场接受成为标准的体系结构;
2.2。
美国主流的SOA产品在中国会水土不服;
3.3。
原有系统将主要依靠服务来切割,或者推倒重来;
4.4。
大量的新建系统将采用标准的小颗粒构件构造流程级别的标准服务构件;
5。5。普元面向构件的中间件将成为
SOA
主流中的中国主流。