原文:
http://opensourceerpguru.com/2009/02/22/extend-your-erp-with-modules/
用模块扩展你的ERP
大型ERP系统的销售人员在向每一个客户推销的时候都会说这样的话:“我们的ERP系统提供了完整的解决方案,可以满足你们所有的业务需求”。我们都知道这不是真的,但是这仍然是为什么企业愿意在ERP上投资的首要理由 - 他们期望用一个应用程序来管理他们所有的业务。
实际上开发单个软件来满足所有的用户需求是不可能。ERP供应商做的是开发一个支持核心流程和数据模块的程序,以求最小化业务流程和数据模块的公分母。然而即使是核心业务流程(如订单到收款,采购到付款)都会因为不同的组织而大有不同(考虑一下生产型企业和服务型企业的区别)。
解决方案是什么?扩展模块。ERP提供商聪明地意识到他们不能提供每一个用户想要的所有功能。纵深解决方案就是一个绝好的例子 - 旅馆,航空公司,通信公司,政府机构等都有非常特定的需求。所以ERP提供商们开发了一个扩展框架,允许第三方的软件开发人员可以创建他们自己的模块。
这些模块与核心程序互相独立,可以有自己的数据结构,业务逻辑和用户界面。框架被设计成使得一个开发得很差劲的模块将无法与核心功能交互,框架还应该提供一种机制使得扩展不会在一次升级之后就不能工作。
付费ERP系统如SAP提供了Business Add-In(BADI)接口,而Oracle提供了OA Framework (OAF)和Oracle Application Development Framework(ADF)。
现有的开源ERP
大多数开源ERP提供商都没有人力去开发纵深解决方案和其他客户特定功能。扩展模块框架为这些相对年轻的ERP提供了一个解决方案。
Openbravo 2.50将会引入模块化框架,这个框架允许第三方的软件开发人员创建他们自己的扩展。2.50版本的发布因此有些延迟,但是有着足够好的理由(我喜欢开源的透明!)。Openbravo还将会为扩展开发人员提供一个早期测试程序,所以要是你有兴趣参加的话,就联系他们吧。在一些扩展模块出来之后,我们就会在这里写一些关于它们的文章。
Compiere通过Compiere扩展来实现扩展。开发人员可以读取和更新数据字典。业务逻辑通过Java或者本地C语言来编写(哎哟!),规则可以被创建甚至被改写。一个很好学习Compiere扩展的资料是Compiere From The Source blog。另外,Compiere的合作商CBI也提供了一些Compiere扩展。
Apache ofbiz从创建开始支持模块化的框架。Ofibz让开发插件工作变得如此简单(通过一些XML文件和脚本工具,最小化代码编写工作),实际上它们鼓励开发人员在它的基础上创建自己完整的商业程序。这跟传统的在现有核心系统上开发扩展方式不太一样。因为它们独特的方式,ofbiz上产出了许多开心的后代:Opentaps,Nogia,SourceTap CRM,Atlassian JIRA等。这个视频简单地介绍了ofbiz的框架。
我们会在有更多的扩展和框架开发时更新,请注册我们的RSS。