Open Source ERP Tools

February 13, 2009

Architecture of Open Source ERP Tools.

There are probably as many definitions of software architecture as there are people defining it. Most of them begin by stating that software architecture is the general structure of a system, or that it maps the requirements of a system onto specific design or implementation decisions. From the very beginning of any project, it is extremely important to maintain fluent communications among the various stakeholders in a software system. During the requirements analysis and subsequent reviews, the stakeholders are able to specify their most significant requirements. But, this can be an unstable basis for the project if each group of stakeholders is unsure whether its needs have been understood correctly. Average users, for instance, might not be able to understand use-case specifications in enough detail to offer feedback on them.

The system architecture is often the first project phase at which an overall picture of the requirements emerges. This overview can allow all stakeholders to discuss the system in the same terms. With the help of a good architecture, project owners can be more confident that the requirements they’ve defined are the right ones and in the right format.

Before implementing an open source ERP tool, it is essential to know its architecture. The architecture not only tells the business logic but also defines process work flow. It determines the robustness and flexibility of the tool.


Architectures of some open source ERP tools are discussed below:


1. Open Taps:


opentaos-architecture

Opentaps have a robust and simple architecture. It basically follows a 3-Tier Web Architecture and the application server layer  contains three layers namely

1. Presentation layer.

2. Business Logic Layer and

3. Data layer.

The Data layer consists of an entity engine for handling the data access and persistence via data models which is defined in XML files which can act as an interface with the database. In the Business logic layer, small reusable pieces of code which can be written in various high level scripting language or XML which acts as services. One can define a workflow in an XPDL (XML programming defined language) format. Various services are then integrated to form a service engine. This service engine can be then called directly via web services using SOAP and RMI (EJB or enterprise Java Bean is a type of RMI).

Above the business logic layer consists of presentation layer which uses Model View Controller (MVC) pattern which then allows reusing the design elements, viewing the logic and forming an action.

2. Compiere:

compireplatform_infographic1

Compiere’s architecture is a mixture of fat client 2-tier and 3-tier architecture. It uses a fat Java Client (Java Webstart). In the client tier, web interfacing has been done. After interfacing is done, business logics and the process workflow is defined in the application server (say JBoss). The application server has been further divided into three sub parts ie; Presentation layer, Business Logic layer and a data layer. In the presentation layer, code is generated by taking JSP and swing. The purpose of taking JSP is to make a function globalise and accessible to everyone.

Swing technology is generally used for standalone function. Hence Compiere gives robustness to data security and maintaining the hierarchy. Let’s understand this by taking a small example. Assume a Sales manager is having few team members under him. So the functionality or dashboard of the sales manager would be defined using Swing so that the team members can’t access his data. While the team member’s data is defined in JSP which makes a Sales manager to have the privilege to view the performance of its team.

The accounting engine or the services that the tool provides is written JSP in order to make the integration between the modules and sub-modules easier and effective.

The Metadata which contains the callouts and Document having the workflow is written in JSP as well as Swing in order to give security and make the process efficient. Finally an entity engine (JSQL) is used to eliminate the need for entity specific persistence code in as many areas of a transactional application as possible.

February 3, 2009

Overview and Comparison of Open Source ERP tools

An Open Source ERP system is recommended for those enterprises whose requirements are not covered by standard application Open Source ERPs are effective for the organizations with dynamic structures. These types of ERP systems have very good market potential as they are cost effective and have limitless customization features. Some of the inherent benefits of any Open Source ERP lie in the fact that they are license free and hence investment is required only for support and maintenance. One can identify future requirements and can customize the tool accordingly, without paying any extra license fee/royalties to the vendor.

The basic question arises before implementing an enterprise application is WHY?? Is it for embracing new technology just because it’s there or a company goes for cost effectiveness in the long run or to make its processes efficient and effective.

In order to implement an ERP system, an organization needs to understand its requirements, existing process and the integration between the different processes. Once this phase is completed, then the next step is to find the open source ERP tools available and map according to the functionality fit.

The table below is the comparison of different tools according to the functionality fit, technology fit , flexibility and support and few other parameters.

Evaluation Criteria

Open Source ERP System

Sub- Criteria

SQL Ledger

Opentaps

Compiere

Size

 

 

 

Micro

+

Small

+

+

+

Medium

+

+

+

Large

+

~

 

 

 

 

 

 

 

 

FUNCTIONALITY

Number of Tables

45

763

385

e-Commerce

x

Accounting

MRP

x

POS

x

√ (marked as beta)

Inventory&Warehouse

FLEXIBILITY

Customization

~

+

+

Flexible upgrades

+

~

+

Internationalization

+ (Multi Site)

+ (Multi Site)

+ (Multi Site)

User friendliness

~

~

~

Architecture

3-tier web

3-tier web

2 and 3- tier

Scalability

+

+

+

Security

~

+

+

Interfaces

CGI, SOAP

SOAP, CSV,
XML

CSV

OS independence

DB independence

x

Programming Language

Perl

Java,Scripting

Java

SUPPORT

Support infrastructure

~

+

+

Training

x

Documentation

+

+

+

CONTINUITY

Project structure

Company
+partners

Companies
+community

Company
+partners

Community activity

+

+

+

Transparency

~

+

+

Update frequency

+

+

+

Other lock-in effects

migration tool

MATURITY

Development status

Stable

Stable

Stable

Reference site

+

+

+

OTHER

License

GPL

MIT-PL, GPL

MPL based

Online demo

x

Sourceforge hosted

CVS access

x

Download checksum

x

Project start

2000

2001

1999

HR and accounting features

Financials and accounting

Quote generation

Invoice management

Sales Order Management/Order Management

Multiple currency support

~

HR/payroll

~

x

Manufacturing, product, and inventory features

Advanced planning and scheduling (APS)

x

+

x

Discrete manufacturing management

x

+

x

Inventory management

~

Product and price configurator

Product catalog

~

~

Purchasing management

Transportation / freight management

~

Warehousing, logistics and distribution

~

Integration

E-mail integration

x

Integration with Outlook

x

Integration with MS office

x

?

Mobile support/integration

x

?

Reporting

Ability to export reports into different file types

x

Analytics

x

-

Custom reports

x

~

Pre-configured reports

x

~

Sales and marketing features

Marketing campaign management

x

~

Contact management

x

Customer support tools (eg: call centre management, FAQ’s)

x

x

x

Marketing management

x

~

Sales pipeline, opportunity tracking

x

Other features

Calendar

x

x

Customer portal

x

x

Enterprise asset management (EAM)

x

x

x

Media attachments

x

~

x

Project tracker/manager

x

x

Workflow manager

x

x

 

 

 

 

L egends :

√ – yes

x -no

n/a – not available

? – unknown

+ – above average

~ – average

- – below average

Note: This comparison is by no means the final wordings on the usage and functionality of the mentioned Open Source ERP/CRM tools. Requesting support and input to make a better comparison of the available Open Source ERP tools

Theme: Rubric. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.