【转载】别让ERP二次开发“变了味”!

导读:ERP厂商经常会有这样的抱怨:起初的几个月进行项目分析和讨论,用户也认可了,ERP系统做出后,结果这时候客户要进行“二次开发”…然后事情就变得复杂跟原先预期距离拉远,最后导致“变质”...

  对于企业的信息化系统来说,其实软件方面来说真需要二次开发才会合适。那么如何挖掘出这部分软件的潜力让企业拿到实惠在开发中?

企业应选择通用还是实际?

试问有哪个企业愿巨额投入开发?例如处理文档、表格、财务等方面,很多成型软件在这个市场中,因此在选择上,优先注重的会是适合通用系统。

许多的信息化软件只为满足国家层面的要求,针对企业实际来说,通用方面功能满足了,其实还会需要ERP系统提供企业内部的管理信息。按照行业、模块开发的ERP系统,最初会按照一定参数来设定,但根据企业的发展规模、周期等因素差异导致除通用功能外还会有二次要求,因此还需适当调整。

企业本身特点该不该强调?

企业在做二次开发的时候,其实软件中管理流程已经是经过千锤百炼的提炼,所以没有必要太多的强调自身特点。而许多企业刻意去强调的是源于本身的不合理的业务流程或者优化和重组。这不应该去建立在对软件的修改开发上。不能让软件去适应流程。

不要修改核心的代码是软件自身体系的基本原则。企业的需求不能被满足,就要从ERP中导出数据再导入系统。尽量以小的改动去满足需求也是为之后的升级做打算。二次开发应该在技术人员指导下进行,因为可以充分的利用现有的数据库条件以及将数据的价值最大化。

扩大数据使用范围是指将ERP系统中的数据有计划地通过公司自行开发的系统提供给其他不使用ERP系统的人员,扩大共享范围。 从工程角度来说,这是一个复杂的大型工程,开发者应该保持绝对的原则并且对项目要保证可控性。因此,二次开发中,修改不宜多。

技术人员需要多专业?

从事二次开发的人员既要熟悉软件的功能和相应数据库中表的结构,又要充分理解用户的特殊业务流程,这需要一定的时间和工作的,甚至可能会使项目延期;再者,改动软件后还可能出现系统的不稳定,影响版本升级。

如果必须进行二次开发,则应尽量使得二次开发做出的功能模块独立于原来的ERP系统。这样,当ERP系统版本更新时,二次开发出来的模块无需修改或者只需较少的修改就可以应用于高版本的ERP系统。

结语

对ERP项目进行二次开发应被视为“一把手工程”,需要企业领导给予足够重视,并且也需要软件提供商以及相关的企业内部人员给予足够的重视。只有这3方面的力量都重视了,管控严了,项目才能按期并保质保量地交付。


附录:

ERP二次开发阶段的风险及应对策略

企业与开发商签订开发合同后,就进入再开发阶段。再开发阶段主要完成系统软件的开发,包括选择系统开发运行平台和工具,准备开发技术,系统功能分析,系统功能详细设计,系统数据库设计,系统程序代码编写以及测试等。再开发阶段在整个系统的实施过程中处于承上启下的位置,直接关系到ERP系统在企业的实施能否成功,是ERP由软件产品转化为企业管理信息系统的桥梁。

在企业与开发商签订的合同中,明确规定了ERP再开发阶段中各项工作的时间进度,并明确了开发商与企业之间的责任和义务。企业与开发商由于各自的利益需要,对项目的进展会采取不同的态度,企业希望在ERP再开发阶段进一步挖掘企业的信息资源潜力,包括:进一步完善ERP系统功能,在开发过程中培养自己的系统开发维护团队,尽可能多地掌握系统开发技术和系统程序代码编写规范;开发商在获得开发合同后会尽量以低成本进行系统开发,避免企业提出更多的需求。为了能有效地约束企业,开发商会保护系统开发技术,以便获得系统升级开发的合同。

随着项目的发展,企业会提出更多的要求和期望,同时,开发商会遇到各种技术困难和开发阻力,其开发进度也会变得无法控制,双方的矛盾也会日益加剧,带来如下风险:

(1)时间风险

由于在ERP再开发阶段存在着一系列的不确定因素,使得项目的进展不能按照合同规定如期进行,企业需求分析不充分,需求反复修改,开发商对系统开发难度和代码量估计不充分等,会导致开发商无法保证系统开发进度。

(2)技术风险

ERP系统开发是一项规模庞大的工程,开发技术难度大,开发商对系统开发技术的把握程度将影响系统的顺利开发。此外,企业在掌握系统开发技术时也会遇到很多困难,影响企业对系统的维护。开发商在获取合同时的技术承诺,可能会因为各种原因无法在规定时间内实现,开发商需要更多的时间进行技术消化,企业技术人员对系统开发技术的掌握也会存在一定的困难。

(3)质量风险

开发商为了节约开发成本,减少开发团队人数,采用低成本的开发平台和开发工具,势必影响系统开发的进度和质量。系统开发运行平台对ERP系统运行起着支撑作用,是系统正常运行的关键;开发工具对ERP系统开发,升级起到事半功倍的作用。二者选择的不合理,对ERP系统的长远发展产生制约作用。

(4)成本风险

随着系统开发时间的推移,不论对企业还是开发商,都会付出高额的代价。企业将增加ERP实施成本,开发商将消耗更多的开发资源,以及合同违约风险。

(5)移植风险

开发商与企业的系统运行环境不一致,会导致系统在移植过程中出现偏差。开发商的开发环境与企业系统运行环境不同,开发环境中的网络环境相对封闭,且规模小,企业的系统运行环境复杂,开放性高,规模大。开发环境与运行环境不一致,会导致系统功能实现的偏差,达不到预期的目标。

因此,在ERP再开发阶段,企业与开发商必须进行高效的合作,明确双方的责任与义务,共同维护合同的权威性,本着友好合作的态度处理开发过程中出现的各种问题。同时双方应加强相互监督,互守信用,避免造成不必要的损失。为了避免上述风险的发生,可采取以下控制策略:

(1)细化合同

为了避免因企业修改系统需求而导致开发商反复修改系统代码引起的矛盾,企业和开发商在签订开发合同时,应明确在系统开发过程中发生各种问题时的处理方案,避免产生不必要的纠纷,影响系统开发;开发商在完成系统需求分析后,形成系统需求书面文档,在同企业充分论证并取得企业认可后,再进行系统代码编写,这些都应在合同中明确规定,防止无合同约束的工作过程。

(2)企业积极配合

开发商在对企业进行需求分析的过程中,企业应采取积极配合的态度,配合开发商挖掘企业的开发潜力。企业应尽量把企业经营管理中存在的问题在需求调研阶段表述出来,防止在系统进入代码编写阶段后再修改需求,延误系统开发。企业ERP实施领导机构负责协调企业相关部门与开发商在ERP实施过程中的合作,保证开发商能够全面,深入地对企业进行深入的调研。

(3)进行技术调研

明确系统开发思路,开发商在系统需求分析的同时,成立技术攻关小组,开展技术调研,结合ERP系统开发成功案例,以及技术发展的趋势,选择先进,不易过时的开发技术,如基于B/S,结构的系统开发技术以及逐步代替了基于C/S结构的系统开发技术,同时为了系统能方便地扩展和集成,可采用组件技术。开发商可选择市场上成熟的开发平台,针对企业实际制定合理的系统开发思路,企业同时参与系统开发技术的学习,由开发商对企业技术人员进行开发技术的培训。

(4)建立系统开发信息共享和质量保证体系

企业挖掘ERP系统潜在需求的要求越来越高,完全由软件开发商完成ERP再开发的情况越来越少,充分利用企业信息资源,使企业全程参与再开发过程的情况越来越多。在ERP再开发过程中建立系统开发信息共享体系,使企业与软件开发商能够实时进行信息交流,将更有利于缩短再开发过程,提高再开发效率。开发过程信息共享可以由软件开发商建立专业的信息管理系统或文件服务器,并由软件开发商为企业和开发部门分配使用权限。开发过程信息共享,使企业以及软件开发商的各个相关部门有效地参与ERP系统设计和开发,实现企业和开发商协同开发,缩短了对ERP系统需求分析和需求发展的时间。软件开发技术的飞速发展以及ERP实现技术复杂程度的增大,使得ERP再开发工程变得庞大,开发成本高,因而由单一部门进行开发的现象越来越少。软件开发商为了保证系统开发质量和开发进度,并有效地降低成本,需要多个部门协同开发,开发商需要建立适应现代软件技术的集成开发环境,实现软件设计,开发和测试流程的紧密结合,同时开发过程中的信息通过信息共享体系实现共享,开发单位的各个部门能够实时地掌握软件开发进度等相关信息,实现软件开发过程信息的有效集成和共享,有利于各个部门之间的协作和监督。开发商系统开发质量监督部门利用开发信息共享体系,对系统开发按照国际标准进行质量监督,及时检查系统开发的进度,保证系统开发符合开发标准。

(5)实行系统同步测试

在开发单位和企业分别建立系统测试环境,保障系统开发质量,避免系统移植风险。开发商选择能实现系统即时发布的开发平台,如IBM,公司的WEBSPHERE,开发平台,可以实现系统开发与实现同步,提高系统开发效率。开发商按时将已开发完成的功能模块提供给企业,由企业进行同步测试。同步测试数据应保持一致,方便双方及时发现问题,并通过开发信息共享体系实现系统测试信息共享,远程技术支持和培训。

企业和开发商在ERP再开发阶段的合作,将影响到ERP软件的开发质量和系统的顺利实施。在系统调研阶段,企业应无保留地向开发商提供相关的资料,积极配合开发商的工作;同样,在系统代码开发阶段,开发商也应对企业的技术人员同步进行技术培训,使系统顺利交接。企业和开发商的通力协作,是系统成功开发与实施的关键因素。

THE END
分享
二维码
打赏
海报
【转载】别让ERP二次开发“变了味”!
导读:ERP厂商经常会有这样的抱怨:起初的几个月进行项目分析和讨论,用户也认可了,ERP系统做出后,结果这时候客户要进行“二次开发”…然后事情就变得复杂跟……
<<上一篇
下一篇>>