任何商业ERP不可能满足企业所有需求。个性化二次开发不可避免。二次开发包括选择系统开发运行平台和工具,准备开发技术,系统功能分析,系统功能详细设计,系统数据库设计,系统程序代码编写以及测试等。二次开发直接关系到ERP系统在企业的实施能否成功,是ERP由软件产品转化为企业管理信息系统的桥梁。企业与开发商由于各自的利益需要,企业希望在ERP再开发阶段进一步挖掘企业的信息资源潜力,包括:进一步完善ERP系统功能,在开发过程中培养自己的系统开发维护团队,尽可能多地掌握系统开发技术和系统程序代码编写规范;开发商在获得开发合同后会尽量以低成本进行系统开发,避免企业提出更多的需求。为了能有效地约束企业,开发商会保护系统开发技术,以便获得系统升级开发的合同。
风险类型:
(1)时间风险
企业需求分析不充分,需求反复修改,开发商对系统开发难度和代码量估计不充分等。不确定因素,导致项目延期。
(2)技术风险
ERP系统开发是一项技术活,对系统架构,开发工具掌握非常娴熟。对系统开发技术的把握程度将影响系统的顺利开发。此外,开发商在获取合同时的技术承诺,可能会因为各种原因无法在规定时间内实现,企业技术人员企业在掌握系统开发技术时也会遇到很多困难,影响企业对系统的维护。开发商需要更多的时间进行技术消化,对系统开发技术的掌握也会存在一定的困难。
(3)质量风险
1、为了节约开发成本,减少开发团队人数,势必影响系统开发的进度和质量。系统开发运行平台对ERP系统运行起着支撑作用,是系统正常运行的关键;开发工具选择对ERP系统开发,升级起到事半功倍的作用。二者选择的不合理,对ERP系统的长远发展产生制约作用。
(4)成本风险
项目延时,不论对企业还是开发商,都会付出高额的代价。
(5)移植风险
开发商与企业的系统运行环境不一致,会导致系统在移植过程中出现偏差。开发商的开发环境与企业系统运行环境不同,开发环境中的网络环境相对封闭,且规模小,企业的系统运行环境复杂,开放性高,规模大。开发环境与运行环境不一致,会导致系统功能实现的偏差,达不到预期的目标。
应对措施:
(1)强化合同细节
企业和开发商在签订开发合同时,明确在系统开发过程中发生各种问题时的处理方案开发商在完成系统需求分析后,形成系统需求书面文档,双方签字确认后进行系统代码编写,在合同中明确规定,防止无合同约束的工作过程。
(2)企业需求明确
企业应尽量把企业经营管理中存在的问题在需求调研阶段表述出来,企业ERP实施领导机构负责协调企业相关部门与开发商在ERP实施过程中的合作,确保能够全面,深入地对企业进行深入的调研。防止在系统进入代码编写阶段后再修改需求,延误系统开发。
(3)确认开发技术线路
明确系统开发思路,结合ERP系统开发成功案例,以及技术发展的趋势,选择先进,不易过时的开发技术,选择市场上成熟的开发平台,企业开发人员同时参与系统开发技术的学习。
(4)建立系统开发信息共享和质量保证体系
企业挖掘ERP系统潜在需求的要求越来越高,企业全程参与再开发过程的情况越来越多。在ERP再开发过程中建立系统开发信息共享体系,使企业与软件开发商能够实时进行信息交流,将更有利于缩短再开发过程,提高再开发效率。同时开发过程中的信息通过信息共享体系实现共享,开发单位的各个部门能够实时地掌握软件开发进度,信息的有效集成和共享。系统开发质量监督部门利用开发信息共享体系,对系统开发按照国际标准进行质量监督,及时检查系统开发的进度,保证系统开发符合开发标准。
(5)实行系统同步测试
在开发单位和企业分别建立系统测试环境,保障系统开发质量,避免系统移植风险。按时将已开发完成的功能模块提供给企业,由企业进行同步测试。同步测试数据应保持一致,方便双方及时发现问题,并通过开发信息共享体系实现系统测试信息共享,远程技术支持和培训。
总结
企业和开发商在ERP开发阶段的合作程度,将影响到ERP软件的开发质量和系统的顺利实施。在系统调研阶段,企业应无保留地向开发商提供相关的资料,积极配合开发商的工作;同样,在系统代码开发阶段,开发商也应对企业的技术人员同步进行技术培训,使系统顺利交接。企业和开发商的通力协作,是系统成功开发与实施的关键因素。