以需求为驱动,是ERP的一个原则。但是,这并不是说,根据企业的需求来定制ERP;而是说,ERP的实施要以企业的需求为提出,最大限度的满足企业的需求。
实施顾问还是不赞同企业进行太多的二次开发,过多的二次开发,不仅会增加软件的不稳定性,还会延长企业的项目周期,增加项目成本等等。
从企业来看,要进行二次开发,无非是下面三种情形。
一、用户不愿意改变现有的操作习惯而要求修改。
企业在实施ERP时,有个非常大的误区,就是想把现在的手工流程、手工作业一成不变的搬到ERP中去。这是非常不正确的,其实,这是换汤不换药,企业的作业流程一点都没有简化。
最常见的就如同单据的格式。一般ERP都会提供通用的单据格式,而企业又有自己的一套单据格式。在ERP实施时,企业第一个问题就是问能否按这个格式打印。其实,这是本末倒置。只要该有的内容有了,没有必要一成不变的按原由的格式。也许,还是系统提供的格式更加合理。
应对措施:
针对这种情况,笔者认为企业还是要改变自己的态度。只要想想,员工用个三天,最多一个星期就可以适应这新的单据格式。有必要再花一笔冤枉钱去改这个格式吗?即使,对方免费为你修改,但是,这时间也要好几天吧。等他们修改好了,用户也早就适应这个新的格式了。所以,针对如单据格式之类的二次开发,笔者认为只要内容齐全,用户没有必要吹毛求疵,进行二次开发。
二、用户不合理的管理规范、管理制度造成的一些特殊的需求。
企业的有些二次开发的需求,是企业原先不合理的管理制度所造成的。通过业务流程重组等方法,可以把这些需求转为常规需求,不用进行二次开发。
如笔者遇到一家企业,其提出一个需求,就是仓库发料的时候,同一个编码的物料要区分供应商。10001为剪刀的编码,其有两个供应商A与B。在仓库发料时,要记录是发A的料还是B的料;在库存查询时,也要能够查询A供应商提供的剪刀有多少库存,B供应商提供的剪刀有多少库存。
后经过笔者的调研,跟相关人员的探讨,并去仓库实际查看后发现,其实供应商A与供应商B提供的剪刀不是同一种类型的剪刀,其质地有区别。其实,应该有两种编码来表示;若不用两种编码表示的话,也要通过物料属性来区分,而不是通过供应商来区分两种剪刀的不同。
后来通过笔者的对以上两种不同方法的演示,企业接受了笔者提供的第二种方法,即通过属性来区分两种质地不同的剪刀。
应对措施:
针对这种明显不合理的需求,顾问不能一味的迁就客户,而应该本着实事求是的态度,深入企业,到一线上去,找出需求背后存在的问题。然后,帮助企业分析其中不合理的地方,然后找出相应的解决方案。
要知道,顾问不仅仅是帮助企业会用ERP,同时,还担负着改善企业管理水平的重任。
三、ERP确实无法满足的需求。
当然,每个企业确实都存在着一些比较个性的需求,ERP无法满足,毕竟ERP是一个套装软件,而不是根据企业量身定制的。
应对措施:
针对这种需求,笔者认为要区别对待。
1、可以通过其他方法实现,不影响工作效率与数据安全。
如ERP系统规定,所有物料都要预先确定供应商,若采购时,没有供应商的话,就无法生成采购单。但是,有些企业,现实中,确实存在一些采购时还不能确定供应商的材料,如临时采购的一些原材料。
针对这种情况需要进行二次开发吗?需要在代码中取消“没有供应商则不能生成采购单”这个限制吗?其实不必。企业可以设置一虚拟的供应商,就叫做“未确认供应商的材料采购商”,把一些暂时无法确认供应商的材料都关联到此供应商,然后,到最后确认供应商时,再进行更改。这个问题就解决了。
类似的例子还很多,遇到这种情况,企业要跟顾问进行沟通,不要未经思考,就说要进行二次开发。而要先找找看,有没有一些更好的处理方式。
2、第一种方法行不通,则只要进行二次开发。
若种种方法测试后,仍然不行的话,那只好要求软件提供商进行二次开发了。
在进行二次开发前,企业还还要了解二次开发的风险。其风险概括的来说,包括以下四个方面。
一、容易造成系统的不稳定。
ERP系统是个错综复杂的系统,各个模块是个有机的整体。若要修改其中的一个功能,其影响的不单单是现在这个功能,还可能影响到其于的功能。
如企业需要销售定单的变更时,自动变更工单。销售定单的变更,仅仅关系到工单吗?若是销售定单数量的变更,关系到采购计划,生产计划;要考虑工单有没有开工生产,有没有采购,若已经有生产或者采购,则就会有变更的损失;等等。销售定单的变更涉及到后续的多道作业。所以,某一个小功能的修改,对于企业来讲,可能很简单;但是在系统分析师的眼中,可不怎么认为。
二、开发周期影响项目的周期。
二次开发的时间,根据需求的复杂程度、软件提供商的实力问题,有长有短。短则几天,长则半月、一月。企业要考虑这个时间成本,看看企业是否耽搁的起。是先用系统呢,还是等到二次开发完成以后再用。
一般来说,企业若时间允许的话,最好等二次开发完毕后,再进行实施。这有两方面的好处。一是顾问由于项目时间的限制,他会主动的帮企业去催二次开发的进度,因为在规定时间内完不成项目,会扣他们的奖金。二是二次开发的需求是ERP有机的组成部分,只有二次开发的需求完成了,员工看到自己的问题解决了,可以减少在实施过程中来自员工的阻力,增强他们对系统的信心。
三、升级服务。
一般ERP都会提供免费的升级服务,但是,若有二次开发的话,有些软件公司就会要求另外的收费。及时不收费,当你二次开发数量过多的话,他也会把升级的次序放在后面,先帮哪些二次开发比较少的客户升级完成后,才会考虑二次开发多的客户。如此,这些二次开发过多的企业,就不能最先使用新版本优越的功能。
四、后续维护的风险。
后续维护时,若对方原先负责你的顾问离职时,你的二次开发需求新的顾问不一定清楚。此时,企业若遇到问题,找对方公司解决问题时,有时候,他们也会理不清头绪,因为不是标准功能,他们不是每个人都对此了解的非常清楚,解决问题的效率也不会这么快。
二次开发存在以上这么多风险,企业应该采取相应的措施,把风险程度将为最底。
措施一:相应的二次开发需求文档要妥善保存。
二次开发时,会产生比较多的相关文档与测试记录,这些内容企业要妥善保存。这对以后的维护非常有帮助。
措施二:在合同中,注明二次开发是免费还是收费,及收费的如何计算。
有些软件企业二次开发的费用是非常高的,笔者遇到过一家企业,其二次开发的费用达到500元/小时/人。这么高昂的费用,稍微一个小需求,开发加调试,花个几个小时是常见的事情。
所以,企业最好在签定合同时,就在合同中说明,赠送多少的二次开发时间,或者那些需求软件公司帮助免费开发。
同时,在签定合同时,也要指明在以后ERP系统版本升级时,要免费升级,不能因二次开发而收额外的费用。
措施三:即使进行二次开发时,也最好不要涉及到主干流程的变更。
ERP系统就像人的血脉那样错综复杂,在二次开发的时候,不要触动它的大动脉,否则会大大影响其整个性能,并且开发、调试的费用也是非常吓人的。二次开发只能对一些毛细血管进行改造
责编:
微信扫一扫实时了解行业动态
微信扫一扫分享本文给好友