我们也许经常会遇到各种问题,比如:
约好了客户讨论需求,但客户突然有事情要处理,使我们的计划被打乱;
我们跟客户一起确定了某项功能,完成了实现并协调了其它模块的功能后,客户又否定了当时确定的功能,我们必须推翻重来;
我们的某一个同事因为离职而他开发的功能模块别人很难接手;
当我们使用了某一项新技术,看起来很美丽,却因为某一个没有预料到技术难点不能攻破而导致整个开发的滞后。
等等。问题会越来越多,挑战也越来越大,我们之前做过了很多系统,都必须要去维护,又必须开发新的系统和功能,由于之前的规划或者基础架构的不合理而导致了我们的总体费用中用于新系统开发的费用比例越来越少,意味着我们所能拥有的成本越来越低,能力要求越来越高。
从自然的因素来看这些问题也许是必然存在的,因为我们的IT架构总是滞少后于我们的商业策略,我们数据模型/应用模型/基础架构又滞后于我们的IT架构。然后我们在期待和抱怨的时候,却没有发现一个固定的商业策略,他们只是一些愿望,期待着产量的提高,管理的成本降低,效率的增加等。意味着IT企业需要一个适应策略变化的IT架构,这里说的IT架构包括了人员/技术/管理/基础架构,也就是说我们需要一个高效的团队。
谈到如何去建立和优化这样一个基础架构,我们也许会无从着手,迷茫,时常有种感觉就是看到了某篇文章描述了某个概念时眼前一亮伸手却抓不着,其实我们的周围不停的会出现各种设计模式的介绍、各种架构的思想(SOA等)、各种平台(J2EE,NET)等