前言
企业的信息化是一个漫长而又复杂的过程,在这个过程中,软件开发商和企业不断配合,进行着艰苦的探索和不懈的努力,力图找到最有效的方法满足企业不断变化着的需要,然而,企业本身的管理业务是复杂多变的,即使生产同样产品的企业也会存在着管理上的种种差异,所以,为了更好地满足这些管理差异引起的需求,软件开发商提出进行个性化定制的口号,但是,长久以来,个性化需求的满足却总是以高昂的费用为代价的。软件开发商应该通过什么样的办法去满足企业的个性化需求呢?

图表1 集中开发统一部署示意图
我们先来看看传统的开发和部署的模式,传统的开发部署可以用八个字概括:集中开发 统一部署,如图表1集中开发统一部署示意图所示,开发人员绝大部分留在总部,系统的现场安装、培训主要由实施人员完成,如果现场提出新的个性化需求,企业用户则通过实施人员将这些需求传达给总部的开发人员,然后由总部的开发人员针对企业需求进行修改并且将修改以后的版本带到企业的现场重新部署。
传统开发模式带来的问题
集中开发,统一部署的传统开发模式满足了早期的任务单一的信息系统开发的要求,然而,随着时间的推移,信息系统本身规模不断扩大,集中开发模式所带来的弊端也逐渐显示出来,这些问题主要表现在以下的方面:
开发组织困难:由于采取集中开发,大量人员将在系统发布之前同时维护系统,使得系统的规模和复杂性快速增长,此时,如果组织不利,开发人员在工作过程中将频繁的相互影响,导致开发工作整体生产力低下。
部署难度大:由于采取集中开发统一部署的方法,系统每次修改,都会引起系统的重新发布,所以需要在整个企业范围内进行重新部署,如果这样的修改频繁发生,那么部署的工作,不论对实施人员还是对企业本身都是一个十分艰巨的任务,尤其是在部署的过程中,还会影响整个企业的正常业务的开展。
用户参与度小,难以准确把握需求:企业的实际情况和管理思想各不相同,对信息管理系统的需求也不可能一样,由于开发人员不直接到现场,难以准确理解需求,修改后的产品很难一次就满足企业的个性化需要,这样一来二去,导致了开发和实施成本的提高。
软件开发周期长,响应缓慢:所有的功能都在统一的系统中,开发商需要综合考虑各个企业的情况,才能真正开始编码工作,软件设计难度大,响应周期长,拉大了企业和开发单位之间的距离。