从我第一次听说SOA到现在有几年的时间了,其间和各种各样的人士有了各式各样的讨论,越来越发觉这不是个可以用定义来说得明白的概念,以前软件行业里还没有个词容易引起如此多的非议与争论,我有时觉得SOA很像禅宗里讲的,“说是一物即不中”。其中最难的,就是把这样一个抽象的概念说给没有技术背景的人去听,建立概念唯一的办法就是利用比喻。在我听说过的几十个关于SOA的比喻之中,有几个比喻得到更多人的认同。那些想把这个概念说给业务人员和管理者的技术人员,不要再冒险了,用这几个比喻试一下。
乐高玩具—作为一种设计哲学的SOA
这是最早的一个成功的比喻,传统的应用好比是普通的玩具,不可拆卸和拼接。基于SOA的应用都是由更小的服务组件组成的,如同乐高玩具的模块。用乐高玩具可以搭建各种不同的形状,好比可以实现不同的应用,乐高玩具的模块式基于标准的,而且可以重用。这个比喻的好处是很快给非技术人员建立一个头脑中的形象,在一个研讨会里面,组织者发了一些乐高玩具的模块,让客户们自己做出一些东西来。由此很快让听众明白,他们就是在做和软件开发类似的事情。 http://www.cnw.cn/cnw07/Software/News/htm2007/20070920_25680.shtml