笔者所在单位曾使用某著名品牌的商业ERP,但以失败告终。后由笔者负责实施了国内一家公司的开源ERP产品,且取得了成功。因此,我对开源ERP非常感激也非常看好,所谓理越辩越明,请各位听听我的理由。
笔者仅根据原文作者的观点提出不同见解,这些见解都来源于实践,希望对企业信息化部门的朋友们有所帮助,个人也认为开源ERP会越走越好,不但不会死掉,而且我坚信开源ERP会成为企业信息化行业的一股主要力量。
最近在网上看到两篇文章,题目分别是:“大话ERP之开源ERP之我观”和“ERP并非是个软件!开源ERP必死无疑!”,读完两篇文章后,发现除了标题、发布时间不一样,内容完全一样,都是说开源ERP如何不好,特别是后一篇,甚至把题目改成了完全恶毒的诅咒。
对于这两篇文章的内容,大多数观点笔者均不认同。因为笔者所在单位曾使用某著名品牌的商业ERP,但以失败告终。后由笔者负责实施了国内一家公司的开源ERP产品,且取得了成功。因此,我对开源ERP非常感激也非常看好,所谓理越辩越明,请各位听听我的理由。
一、ERP项目成败关键的因素是产品的优劣
原文作者强调:ERP项目是“三分软件七分实施”,认为软件产品本身在ERP项目中的作用最多占30%,而实施顾问团队的作用占70%。企业ERP项目的成功与失败完全掌握在实施顾问的控制中。
笔者想反问原文作者:根据原文意思,是否表示水平高的实施团队能用质量差、功能差的产品把客户“忽悠”过去,让客户满意?而水平差的实施团队则只能能把质量好、功能好的产品搞的客户不满意?原文作者是不是在承认过去ERP失败的原因是因为有大量能“忽悠”的实施顾问把质量一般、功能很差的产品推给了用户,最终造成成功率低,今儿造成客户对ERP失去信心呢?
笔者认为,ERP项目主要拚的是产品质量、优秀的功能,而不是什么实施顾问。其实现在行业内实施顾问的角色很尴尬,他们很多时候更像一个销售人员,经常有夸大其词的行为。我们单位在早些时候实施商业ERP项目时,就是因为过分相信了“资深顾问”的劝说,接受了他所推荐的流程设定而放弃了原来的个性化业务需求而造成最终项目失败的结局。说实话,在当时觉得顾问的话特别有道理,但后来在本企业做应用推广时却遇到了极大的困难,该顾问所推荐的方案根本不能在实际中使用。后来我们才知道这位顾问所实施的ERP产品根本就无法提供客户所需要的个性化功能,只是用用一些销售技巧蒙住了我们。
ERP也是软件,软件产品的属性是决定项目成败的关键。例如,我们现在需要B/S架构、完全支持互联网还能实现个性化功能的ERP,传统C/S架构ERP产品无论由多高水平的顾问去实施,也根本无法让我们满意。
我们上过当,即使他们还能去蒙住别的客户,但我相信早晚还是会被揭穿,我倒是认为ERP项目是七分软件三分实施。
二、在开源ERP的基础上能轻松实现二次开发
原文作者说:“对于软件开发人员来说,若从零开始进行开发,可能还会简单一点;但是,若要在原有软件的基础之上,进行软件二次开发的话,难度可能会比较大。因为他们首先要先去了解原有软件的思想、结构、设计思路等等……”
据笔者所知,由于行业的差异、个体的差异,企业对于ERP的个性化应用有着非常强烈的需求,这是客观存在。既然客观存在,二次开发就无法避免,我们应理性的对待二次开发问题。如何把二次开发工作搞得容易才是真正为客户着想。源代码开放是二次开发的基础,也是最起码的保障。我们单位实施的开源ERP,厂家提供的产品不仅开放源代码,而且还在这个基础上为我们提供了三个层次的二次开发方式:1、通过个性化的设置实现非代码的二次开发;2、通过前端的工具实现自动生成代码的二次开发;3、直接改动源代码来实现的二次开发。
因此,我认为原文作者对二次开发的理解和认识过于片面,误认为开源ERP的二次开发作就只能修改源代码。
三、开源ERP也是有分工的产业
原文作者提到,“这都是因为企业没有比较专业的人来分析、调查企业需求所造成的。而商业软件不同。他们会把企业的需求调研当作项目实施过程中的一项重中之重的工作来对待。因为他们清楚,把企业的需求搞清楚了,那么企业的ERP项目也就成功一大半了”。
我认为,这是典型的以偏概全,原文作者又一次的把开源ERP看成了极端的DIY项目。仍然以我所在企业为例,我们对开源ERP最看重的是可以对自己的项目做到心里有数,能很好地对项目开发。其实开源ERP的具体实施也是由厂商的合作伙伴来负责的,而且二次开发工作我们还是会找实施方,啥事都自己干这不符合社会分工的原则。
据我观察,开源ERP的实施方法与商业的ERP方法并没有本质的不同,但却比传统的实施更节约成本。因为用开源ERP不需付软件产品的许可费用,只需要付服务的费用。
四、独到的技术能保障开源ERP平滑升级
原文作者提到,“在原先版本上所做的需求,如何迁移到新版本之上呢?这是用户在版本升级过程中遇到的第二个难题。在商业软件中,这一般不是问题,只要你交了每年的服务费用,则他们在软件升级的过程中,他们会帮你完成二次开发需求的迁移工作……”
我认为原文作者用“商业软件公司收了服务费后帮助客户作迁移工作”来否定开源ERP的升级有失偏颇。
首先,开源软件的方案提供商同样能够提供这样的收费服务。其次,目前很多软件都已经具备了保障平滑升级的技术解决方案,只要在二次开发时遵循一定的标准,并且使用正确的开发工具就可以实现。
笔者所在企业使用的开源ERP产品就支持这些功能,比如:数据表升级管理功能,二次开发者能通过浏览器实现数据表的设计,并且通过Xml实现与其他程序同步升级,保护已发布的数据表结构,实现增量升级;模块设计管理,能实现在线设计多层次业务功能模块,同步生成公用程序、数据表等,同步实现部分后台功能;二次开发发布管理,能保证在二次开发时,既能实现对现有版本的保护,又能实现对开发版本进行有效控制;数据平滑升级管理,能够实现ERP不同版本间数据平滑迁移。