一、从控制风险的根源入手
对于二次开发风险的控制策略,我的核心观点是,从风险的根源人手。首先构建良好的ERP管理系统架构。良好的系统架构能够为今后的二次开发奠定坚实的基础。实际上,系统的架构比功能重要的多。ERP产品不是简单的代码堆积,而是基于模块的组件式拼接。一般客户在选型的时候会刻意强调功能.这也无可厚非,好的ERP产品首先应该有好的功能,但是在做出理性的分析后,就会发现一套好的ERP产品首先应该架构科学,这就是系统架构师越来越走俏的原因。一些以财务著称的ERP厂商很头痛的一件事情就是产品的架构早已搭建完成,很多系统架构,如库表的设计已经固化,很难再去修改、调整,现在增加的模块只能是形式上的调整和增补。不能从系统底层上真正解决问题。这给日后产品的二次开发带来无穷隐患。很多客户在选型的时候误以为只要有系统功能,就能真正满足业务,其实不然,一旦业务有了新的需求,很难从系统上根本解决问题。在具体的实施中,很多项目实施不成功主要是因为产品架构不合理,对于这种情况,无论怎么做二次开发也无济于事。那么,针对于二次开发的工作,良好的软件整体架构最重要的特征是什么?在实践中我们发现,软件的可扩展性对二次开发的影响最为显著。具体表现在:二次开发的程序能否与整体系统做无缝挂接;二次开发的功能能不能很好地在软件后续的升级版本中正常运用。应该说成功的ERP系统除了内涵先进的管理理念、高效的职能划分、合理的业务流程外,还应最大限度地保留可扩展性。
二、从二次开发自身的角度控制风险
就二次开发自身而言,包括两个方面的问题。首先,要避免系统不能正常的升级,需要考虑以下三点:第一是数据结构的修改。通常来讲,能够实现完善的二次开发功能的软件,其数据结构的规划一定存在某种规则。标准版本用到的数据库、表和字段的命名方式会和二次开发用到的区分开来,互相之间留有余地,以保证不发生冲突。同时,数据类型的定义要做到完全统一,以保证数据的一致性。如果没有一个明确的规则,必将导致二次开发和标准版本之间互相冲突,这也可能是导致二次开发功能不能升级的主要原因。第二是二次开发功能的实现,应该在不修改父类的原则下进行。增强子类功能,灵活运用继承与重载,以保证后续的版本升级。第三是对某一程序标准功能的修改,最好保存为另外一个与标准程序并列的程序。不要将标准程序完全丢弃,以免升级后的标准程序具备同样或更完善功能时不能得到运用。其次,二次开发要有健会的文档。文档不全或质量不高经常会引发的问题是:前面做好的二次开发,后面接手的人无从了解前面改了哪些,为什么要改,所以无法在原来的基础上继续做二次开发或功能改进。Versugw
三、从行业发展的角度控制风险
从ERP管理软件的发展趋势看,解决二次开发的风险问题还有两方面的策略:
第一,细分市场。多数企业将目标客户单位的选择由大众市场转向细分产品市场,在这一趋势下,更多软件企业也力争打造细分市场领域的产品优势,以获得更大的成功。从近几年的发展情况看,国内知名ERP软件公司都开始致力于打造自己的烟草事业部就是一个寻找市场细分的典型的例证。
第二,国家标准甚至国际标准的出台。尚未形成统一的开发标准,因而ERP软件的通用性、适用性较差,缺乏选型标准没有统一参照,使ERP市场比较混乱。建立通用式ERP后,还要解决管理软件的通用性与用户需求的个性化之间的矛盾,因此制定ERP行业标准就很必要。这其中对行业数据接口做出统一规定,对于制定ERP标准是关键一步,这有助解决行业ERP产品的研发、实施的规则化、标准化问题。
本文整理自快普企业管理软件网:http://www.kuaipu.com.cn
所有评论