企业与开发商签订开发合同后,就进入再开发阶段。再开发阶段主要完成系统软件的开发,包括选择系统开发运行平台和工具,准备开发技术,系统功能分析,系统功能详细设计,系统数据库设计,系统程序代码编写以及测试等。再开发阶段在整个系统的实施过程中处于承上启下的位置,直接关系到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软件的开发质量和系统的顺利实施。在系统调研阶段,企业应无保留地向开发商提供相关的资料,积极配合开发商的工作;同样,在系统代码开发阶段,开发商也应对企业的技术人员同步进行技术培训,使系统顺利交接。企业和开发商的通力协作,是系统成功开发与实施的关键因素。