【eNet硅谷动力专稿】第三招:把二次开发的实力作为项目招标的一个标准之一。
现在大部分的信息化管理软件,如企业资源计划系统(ERP)、客户关系管理系统(CRM)等等,都是套装软件。而套装软件往往不能够适合企业的全部需求。根据笔者管理过的几个项目来看,企业或多或少需要在原有套装软件基础之上,进行一些必要的二次开发。而有时候二次开发的速度与效果直接影响到项目能否按时上线以及项目可以取得的效果。
一般来说,我们对于二次开发的个案有两个最基本要求,一是要能够及时完成,不要因为二次开发的原因而影响到项目的整体进度;二是要求二次开发的个案比价稳定,能够跟现有功能紧密的结合,不要出现明显的漏洞等等。
不要看这两个要求简单,其实,这对于软件企业来说,是有一定困难的。一方面,企业的技术开发人员往往是有限的,或者说,客户数量往往跟软件开发人员不成比例。当客户数量多的时候,企业不得不排队等候进行二次开发。如笔者以前在企业中负责客户关系管理(CRM)项目的时候,需要进行一些二次开发。但是,由于我们是在年中上项目,这个时期正是他们企业的旺季,所以,一些二次开发的个案在项目上线前才完成。我们只有不到一个星期的时间了解二次开发的功能;最重要的是,在模拟运行的时候,也能够根据最新的二次开发功能来进行模拟,这为项目上线后的操作造成了一定的麻烦。另一方面,大部分时候,软件企业的二次开发人员与软件开发人员是一个角色,也就是说,企业独立的二次开发部门,这有时候也会给我们的二次开发造成不必要的麻烦。如笔者认识一个朋友,他在复杂一个ERP项目的时候,需要进行一些二次开发。可真是不巧,真碰上他们进行版本的升级。由于像ERP这种复杂的信息化管理系统,版本升级与版本测试需要占用技术人员比较多的时间与精力,所以本来预计半个月可以完成的二次开发,光排队就排了一个月时间。这大大的影响了他们企业的ERP项目进度。
所以,笔者认为,在信息化项目招标的过程中,除了需要关注软件、实施顾问、价格等因素之外,还需要考虑对方的二次开发的技术能力,特别是在一些诸如ERP、CRM等大型信息化管理系统的时候,特备要注意这个问题。为此,笔者可以提醒大家,在关注这个内容的时候,可以从如下几个方面考虑。
一是实施顾问与二次开发人员是否是同一个,或者说,是否有独立的实施顾问。若实施顾问能够同时胜任二次开发的技术人员,那是最好的了。但是,根据笔者的了解,很难有人能够同时胜任这个角色。所以,我们只好退而求其次,我们需要考虑,我们只对实施顾问负责。也就是说,我们向实施顾问提需求,然后实施顾问负责设计解决方案,然后让开发人员进行开发。但是,笔者也了解一些企业,特别是一些小型的软件公司,他们不是这么操作的。其实,他们是技术人员充当实施顾问。在进行二次开发的时候,企业项目组成员不但需要提出具体的需求,而且,还需要设计出具体的解决方案。因为对方的实施顾问由于是技术出身,对业务的了解有所欠缺。所以,给他提了需求,他也不知道具体该如何解决。本来企业是想让实施顾问帮助想想该如何解决问题,现在反而是要让企业自己寻找解决方案。我想哪一个企业都会不舒服的。所以,我们在招标的时候,考虑二次开发这个问题时,需要了解一下他们二次开发的流程。这个解决方案到底是有谁来负责起草。
二是二次开发的技术团队。有些企业为了节省成本,二次开发的人员只有很少几个,而且,有些还是兼职的。要么是兼职软件开发,要么就是兼职实施顾问。这种二次开发团队,企业很难保证能够及时的交付二次开发的成果。而且,由于缺乏专业性,二次开发个案的稳定性也很难有保证。我们希望的是,软件公司能够有比较稳定且庞大的二次开发团队,尽量缩短二次开发的等待时间,提高二次开发个案的稳定性等等。
三是考虑二次开发的模式。有时候,二次开发的模式不同,对于二次开发的稳定性与速度也有所不同。如一些平台型的产品,对于部门功能可以实现无代码开发,则这对于提高二次开发的速度,可能比较有帮助,而且,即使不是专业的程序开发人员,实施顾问,即使企业自己,也能够完成一些简单的二次开发。再如一些模块化的程序设计,其虽然需要进行代码的编写,但是,由于采用的是模块化的设计,所以,进行一些二次开发,其稳定性比较好,即使二次开发有考虑不周的地方,对其他功能影响也不大。故二次开发的模式不同,也会影响到二次开发的效果。这也是需要考虑的一个方面。第四招:认清自己到底需要什么?
即使都是同一个行业,公司的规模不同,其管理方式也有很大差异。如上市公司有时候管理方面会身不由己,需要遵守一些强制性规范。如对于存货管理方面,如是上市企业的话,则在期末必须进行存货的期末计量,即根据成本与可变现净值熟低原则进行计量。但是,这个管理方法的话,操作起来比较麻烦,所以一些中小企业的话,往往是不采用的。也就是说,中小企业在存货管理上,期末计量的时候直接用帐面成本入账,而不会考虑可变现净值。由于这个管理方式上的差别,在项目招标的时候,若是上市企业,则就需要考虑在ERP系统中,是否有这种可变现净值的处理方式,以及处理是否灵活等等。
其实,类似的差异还有很多。笔者现在就结合自己的项目经验,谈谈大型企业与中小企业在处理模式上的一些不同,为大家在信息化管理项目招投标工作中,可能起到一些参考的作用。
一是发出存货的计量。发出存货的计量方式有很多种,如移动加权平均成本、月加权平均成本、先进先出等等。这个不同的企业,其管理的方式也有所不同。对于中小型企业来说,一般都只是采用简单的先进先出法。而对于一些上市企业,或者某些管理严格的企业,为了存货计量的准确,则往往采用加权平均法。因为不同的管理软件,其可能支持的模式不同。如一些小型的ERP软件,其可能只支持先进先出法,而不支持移动加权平均成本或者月加权平均成本。若上市企业在招标的时候,没有考虑到这方面内容,则在后续项目实施的时候,就会遇到麻烦了。二是投资业务的处理。对于大型企业来说,投资可能是必不可少的。如一些集团企业,可能会购入其他公司的股权或者进行股权置换,进行长期股权投资。针对这种长期股权投资,会计法规规定了一套比较严格的处理程序。但是,在有些财务软件或者ERP管理软件中,没有实现这方面的内容。不过,作为企业来说,总是希望这种投资业务也能够从系统中进行管理,而且是在现有的系统中可以实现,而不是再需要购买其他系统。为此,在信息化项目招标的过程中,企业要考虑自己有否这方面的需要。若有的话,则在招投标的过程中,需要关注有否这方面的管理功能。若是作为一些国家重点管理的单位,还需要考虑,系统中的管理流程是否符合企业会计准则的规定。如对于长期股权投资初始计量、长期股权投资的核算、长期股权投资的减值等等,是否都有对应的解决方法,等等。
三是收入的计量方面。对于大部分企业来说,只要货到达对方企业之后,就可以确认收入了。但是,对于一些大型集团来说,没有这么简单。如当企业明知客户现金流遇到困难但是出于对这家客户的支持,企业仍然发货给对方,在上市企业中,这往往不会确认为收入,而是通过发出成品来核算。再如,对于分期付款的业务来说,一般企业处理很简单,就只是简单的把应收帐款进行分期而已。但是,对于上市企业来说,则处理以来就比较麻烦,在财务核算上,有一套比较复杂的程序。有些ERP系统,专门为集团公司设计,就考虑到了这些方面的内容。
以上提到的三个方面,只是管理模式差异的一个很小的部分。所以,企业在进行项目招头标工作的时候,需要先认清自己,到底需要什么。然后把这些内容写入到招标说明书中。如此的话,企业才可以选择合适自己的软件与合作伙伴,减少后续的二次开发的数量。