了解用户需求表面上看是很容易的,但实际上却需要很大的努力。有些资深顾问认为,了解用户需求的时间往往超过整个开发项目总时间的14,甚至有时在小项目中可以超过总用时的13。其困难主要是有以下几点。
(1)用户无法用专业词汇、专业逻辑来表述其需求,而程序开发人员又缺少用户企业环境的背景,造成双方沟通的困难。
(2)用户企业组织不利,造成每个部门,甚至每个人都有对二次开发有不同的要求。
(3)用户总是在自觉不自觉中希望重复企业原有的,不合理的生产逻辑。
基于上述可能产生的问题,就需要在了解用户需求时本着真正对用户负责的原则,耐心、细致、科学、系统地了解用户需求。
①针对困难(1)就需要在进行二次开发设计之前,对用户进行教育、培训,至少使主要的核心用户不仅了解ERP软件的使用方法,同时也了解ERP的内在逻辑,真正懂得ERP。这样,供求双方才能使用共同语言,在共同逻辑基础上讨论ERP二次开发的需求。
②针对困难(2)要注意以下两点。一是帮助用户建立合理的项目队伍。只有项目队伍有合理的组织结构,才可能汇总、优化各个不同部门,不同个人的不同的需求。二是要求所有主要核心用户都参加整个ERP培训,而不只是自己工作相关模块的培训,这样才能让他们树立全局的观点,自觉把自己的、本部门的需求与ERP项目整体的需求相结合,得到完整的、一致的需求。
③针对困难(3)就需要负责二次开发的技术人员本着对用户对项目负责的原则,深入地理解ERP系统的整体逻辑,与项目的实施人员紧密配合,真正了解用户的需求。这个工作有时甚至可能是一种极具挑战性的工作,不仅需要科学的态度,还要需要艺术的方法。
B.判断二次开发要求的合理性 对于软件的二次开发有时是不可避免的。但是,过多的修改又会影响ERP项目的顺利实施。那么,二次开发是否要做的标准是什么呢?也就是说如何判断用户化要求是否合理,从而有效的防止过多的修改呢?有3个方面的工作可以防止过多的修改,即教育、标准软件和管理。
C.区分及处理二次开发上线前、后阶段 在实际进行二次开发工作时,首要之事就是区分哪些二次开发是属于上线前一定要完成的,哪些二次开发是属于上线完成后才慢慢来进行的。前者指的是那些不改的话根本无法上线的二次开发,后者指的是那些属于重要性不高,不会影响上线的二次开发。如果不能对二次开发进行有效的区分,会模糊上线实施的管理重点,进而影响上线的进度甚至质量。
D.尽量避免更动数据库结构 新增或修改原有的报表或查询程序,不会影响系、统的原有数据库结构,因此不会造成日后系统升级的困扰。但是,如果二次开发牵涉到新增字段或档案,就可能影响到原有数据库结构,此时,最好的方式就是尽量利用系统原有的闲置字段,不要轻易新增字段或文件档案。如果有改动较大的二次开发,其规格应当请软件原开发厂商确认,以避免二次开发与产品发展方向重叠或冲突,以降低日后版本升级的困扰。
E.建立二次开发的规范 二次开发是一项庞杂的系统工程,决不是简单系统代码的增增减减,二次开发的文档应该由专人保管,而代码注释也必须清晰易懂,还必须有专人负责检查代码质量。新扩充的字段命名、新建程序的命名都应该由专人分配,首先不能和现有系统冲突,同时还应预留一定的空间。对于公用元件一般不建议修改,因为公用元件被很多程序调用。在程序的编写上应采用继承的方式,在保证不破坏原有功能的基础上做个性化的功能完善。如要修改处理业务逻辑.则分两种情况:一是修改原有程序中的处理逻辑,将局部的继承去掉,重写新逻辑。二是在原有功能基础上新增,保留继承关系,在新的子文件中只完成新功能的实现即可,当版本升级时,二次开发的程序惟一要做的就是继承新版本的源代码作重新编译。
2.2关于ERP系统用户化和二次开发的结论 ERP系统用户化和二次开发具有十分重要的意义,本文旨在从中总结出一些普遍性的经验和教训。对提高ERP实施的成功率和实施效益具有参考价值,从而使得ERP能够真正的发挥作用,提高企业决策体系和市场运作体系的反应水平,提高企业捕捉发展机遇、规避市场风险的能力,提高企业的核心竞争力、加快企业的市场反应机制,并最终推动企业的发展。
信息发布:广州名易软件有限公司 http://www.myidp.net