是的,SOA从愿景到实施还有一些复杂的问题需要解决。在SOA的推动过程中,我们发现,很多CIO和实施者们因为这些问题还没有明确的答案而畏惧,并一定程度上动摇了他们采纳SOA的信心,甚至有人因此彻底地怀疑这种范例的可实施性。就像我在前面的博文中曾经提到SOA的成功实施需要培养分享的文化,就不乏有人会站出来挑战我,你觉得在组织内推动文化的变革可操作吗?而我以为,答案是肯定的,为什么不呢?只要理解了问题的本质,从简单的可操作的事情入手,我们可以一点一点地推动这种变革的发生。我有一位朋友,作为项目经理,为了解决大型应用开发过程中不同子系统开发团队的服务共享问题,始终鼓励并不断地教育他的团队一个理念,就是“同事的需求永远是第一位的”。他要求其实很简单,当一位同事向你提出接口的需求时,你应该做好自身工作的调整,首先满足这位同事提出的共享服务开发需求,帮助对方能够顺利地获得所需要服务以加快其工作进程,而不是拿出如自己任务重完不成等各种各样的理由搪塞推托。当然,我相信他在推动这种理念的背后一定是有一些胡萝卜和大棒政策的。事实上,在一段时间的适应之后,这种文化的推动得到了整个团队的强烈认同。因为大家发现,你在帮助他人的同时,他人也在你需要的时候给予你支持,我以为这就是朴素的分享精神。而正是这种朴素的文化建设,使得架构原则和输出得以在整个应用开发过程得以贯彻,更重要的是一个团队对于规则不再是表面的应付,而是内心的遵从。大家可以去试着想一想你的顾虑和问题是否有类似的答案呢?
成功的SOA实施并非易事。作为CIO或者项目执行者,免不了要忍受不确定性的折磨和面对挫折。然而,循序渐进,由易至难,迅速得出结论,然后恰当执行,这是费米问题的启示,也是我们解决日常生活问题的方法。实际上,如何移动富士山正是代表了这样一种处事观:面对不确定性,不要急着下结论,但也不可陷在里面,永远下不了结论。因此,怎样移动富士山?答案很简单,那就是如果富士山不过来,我们就过去。积跬步以致千里,我想这是实施SOA应该有的务实态度。