热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

ERP系统二次开发的原因

ERP实施过程中,由于各企业情况不同,必然会存在一些无法满足企业需求的情况,虽然系统通过参数调整可以满足部分需求,但很多情况

ERP实施过程中,由于各企业情况不同,必然会存在一些无法满足企业需求的情况,虽然系统通过参数调整可以满足部分需求,但很多情况下都需要改动原有程序、甚至需要修改原始数据库结构来满足需求。

ERP系统二次开发的原因

1.用户不接受新系统的操作习惯

ERP产品为了保持较强的通用性,功能跟流程的设置都是标准与规范的。但在实施时,除了业务流程等方面具有个性化需求外,还存在着一些不涉及业务流程的、由企业的特殊性而产生的操作习惯需求,而提出了大量的二次开发。

2.企业不规范的管理制度造成的特殊流程需求

大部分企业都想把现有的手工流程、手工作业全封不动的搬到ERP中去,而不分析规范化的流程与企业原有流程的优劣性,固执的坚持采用目前的管理手段、管理习惯,要进行必须二次开发来满足其需求。

3.ERP软件确实无法满足的需求

ERP系统属于行业通用软件,但每个企业是有其自身的特点,确实也存在着一些个性需求,要进行二次开发,既要吸纳软件中的先进管理思想,也要保持企业的特色。

4.接口需求

信息化建设涉及多套系统,如OA、电商平台等,而各系统的数据之间存在信息共享,有系统接口需求,二次开发也成为必然。

5.新的需求产生

随着项目实施的不断深入,企业人员对信息系统有了更深的了解,应用不断深入,对信息系统产品就会提出更多的要求,使系统更贴合企业运营。

ERP系统二次开发的可能带来的风险

1.过多二次开发会增加系统升级难度

ERP供应商会阶段性的对系统新功能进行完善与扩充,不断推出新版本。系统的升级只针对标准版,不会考虑到个性化和二次开发的部分,所以二次开发工作大部分要重新修改或者开发。

2.二次开发会降低系统稳定性

成熟ERP软件具有较高的稳定性。而二次开发只对单一用户,某局部的更改往往因为满足特殊需求而没有考虑对全局的影响殃及整个系统的稳定性,并且二次开发的测试和试运行时间有限,系统复杂度以及耦合度增大,降低系统的稳定性。

3.二次开发有时会偏离企业实施ERP系统的初衷

二次开发需求往往会使ERP系统合理的逻辑屈服于企业固有的、习惯的工作方法,也会因提高不同部门员工使用系统的效率,而影响流程的稳定性。企业无法借鉴系统优化流程,学习先进管理模式。

4.二次开发增加ERP项目的成本

因为规模效应,产品软件的价格相对于其实施费用是偏低的。而二次开发只针对唯一用户,所以这些程序开发的全部成本由其承担,即使用企业自行二次开发,也要投入人力、物力,必然会增加ERP项目的成本。

ERP二次开发的风险控制

尽管各企业都有不同需求,但必须把握好二次开发的原则:实施ERP二次开发项目的目的是提升企业的管理水平,优化企业的流程。因提升个别工作效率而会影响业务流程的稳定性,坚决不做;因工作效率提升,并未对业务流程以及管理水平有帮忙的开发,尽量少做。

1.对整个企业的业务进行规划,二次开发要有所取舍

对于制造企业,会涉及到CAD、PDM、CAPP、ERP、MES系统,并存在接口集成等,因此要根据企业情况,从整体考虑,而不是从某个功能点或某个业务部门去考虑。企业不应过多强调自身的特点,毕竟ERP中的管理流程具有一定的先进性和合理性。某些特殊之处是由企业流程自身的不合理产生的,应通过ERP的实施,对企业的业务流程进行优化重组,而不是一味修改软件以适应不合理的流程。

2.利用原有的“闲置”字段,避免改动数据库结构

对于会牵涉到新增字段而影响到原有数据库结构的开发,尽量利用系统原有的“闲置”字段,不要轻易新增字段或文件档案。如确实需要的要与原开发商进行确认,以避免二次开发与产品发展方向重叠或冲突,以降低日后版本升级的困扰。

3.不要随意修改核心代码,新功能最好自成模块

要严格遵守不修改核心代码这一原则。如果必须开发,则应尽量使二次开发的功能模块独立于原来的系统。这样当系统版本更新时,二次开发出来的模块无需修改或者只需较少的修改就可以应用于高版本系统。

4.建立二次开发的规范

二次开发要建立一套完整的开发流程与标准。新扩充的字段、新建程序的命名制定统一规范,并且要预留扩充空间。公用组件不建议修改,程序的编写应采用继承的方式。

5.避免开发人员流失

培养一支既懂管理科学又懂信息技术的复合型、专业化人才队伍是企业信息化建设韵重中之重。留住IT人才也是规避企业ERP二次开发风险的策略。

结语

企业ERP系统二次开发具有十分重要的意义,ERP实施的成功率和实施效益具有参考价值,不仅要贴合企业管理,还要助力企业全面发展。
本文转自d1net(转载)



推荐阅读
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Navicat Premium 15 安装指南及数据库连接配置
    本文详细介绍 Navicat Premium 15 的安装步骤及其对多种数据库(如 MySQL 和 Oracle)的支持,帮助用户顺利完成软件的安装与激活。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 数据管理权威指南:《DAMA-DMBOK2 数据管理知识体系》
    本书提供了全面的数据管理职能、术语和最佳实践方法的标准行业解释,构建了数据管理的总体框架,为数据管理的发展奠定了坚实的理论基础。适合各类数据管理专业人士和相关领域的从业人员。 ... [详细]
  • 本文介绍了如何使用 Spring Boot DevTools 实现应用程序在开发过程中自动重启。这一特性显著提高了开发效率,特别是在集成开发环境(IDE)中工作时,能够提供快速的反馈循环。默认情况下,DevTools 会监控类路径上的文件变化,并根据需要触发应用重启。 ... [详细]
  • 三星W799在2011年的表现堪称经典,以其独特的双屏设计和强大的功能引领了双模手机的潮流。本文详细介绍其配置、功能及锁屏设置。 ... [详细]
  • 在API测试中,我们常常需要通过大量不同的数据集(包括正常和异常情况)来验证同一个接口。如果为每种场景单独编写测试用例,不仅繁琐而且效率低下。采用数据驱动的方式可以有效简化这一过程。本文将详细介绍如何利用CSV文件进行数据驱动的API测试。 ... [详细]
  • 本文详细介绍了如何解决Uploadify插件在Internet Explorer(IE)9和10版本中遇到的点击失效及JQuery运行时错误问题。通过修改相关JavaScript代码,确保上传功能在不同浏览器环境中的一致性和稳定性。 ... [详细]
  • 本文将介绍如何使用 Go 语言编写和运行一个简单的“Hello, World!”程序。内容涵盖开发环境配置、代码结构解析及执行步骤。 ... [详细]
  • 本文探讨了Hive中内部表和外部表的区别及其在HDFS上的路径映射,详细解释了两者的创建、加载及删除操作,并提供了查看表详细信息的方法。通过对比这两种表类型,帮助读者理解如何更好地管理和保护数据。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
author-avatar
Only-安之若素
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有