An enterprise thrives or fails according to how well it does what it does. That much is, or should be, obvious. Inevitably, as they grow processes are put in place which seek to improve efficiency. In recent years with essentially all employees having access to computers, software has been built to recreate those processes electronically.

Enterprise Resource and Planning (ERP) software comes as a suite of utilities to do just that and divides business processes broadly into the following conceptual areas in order to make the structure of very complex software manageable:

  • manufacturing
  • supply chain
  • financial
  • project management
  • human resource management
  • customer/supplier management

In other words there's something for everyone who is involved with the management of companies. ERP software can be extremely complex, as it must be to meet the needs of some of the largest and most sophisticated companies in the world.

This article is about OpenERP - a fully featured, free and open source ERP software suite. But before describing the features of OpenERP there are some background points to make about the use of ERPs by enteprises and the scope of the post needs to be clarified.

Many organisations, in the late nineties commissioned bespoke software to match their business processes. They worked from these processes and 'computerised' them. Often as not the result amounted to a collection of Visual Basic forms which were (and often still are) very popular. However the following systemic problems emerged:

  • Process Freeze: being 'fleet of foot' is intrinsic to successful trading so having business processes effectively frozen in time by bespoke software (which cannot easily be modified) is a very bad thing indeed;
  • Over Elaboration: operatives in the field have much less interest in ERP than do the managers in the office! So any excuse not to complete a form or navigate a menu will do just fine. Things like 'more than you need' or over complex menus and mandatory fields which no longer exist on the new product just stop folk from using the software;
  • Use Anywhere: even SMEs operate in multiple countries on different computing platforms and increasingly require access away from the office.

Technical Overview

OpenERP is free and open source software written in the popular Python programming language. It uses GTK to create an attractive user front end and enterprise-class database PostgreSQL at back end. It has three main packages: OpenERP server, OpenERP desktop client and OpenERP Web Client.

This means...

  • that an ERP server (and fail over/backup server) must be setup and supported.
  • OpenERP can be installed on Linux or Windows operating systems.
  • there are no software costs or licences are incurred
  • the web server/client model allows access anywhere from any Internet-enabled device with a browser installed

A vanilla OpenERP installation is relatively easy to setup. It took our engineers less than an hour to have the system up and running with sample data for a 'services' company installed. OpenERP provides a good range of alternative sample data packs for differnet companies. The desktop client works on Mac, Linux and Windows. The web-based client worked on every browser we tested.

The first thing to appreciate is that OpenERP is modular. It has 300 modules to chose from out-of-the-box and, of course, you are free to write your own. It follows that you can assemble what is effectively a bespoke package to meet your company's processes.

This is in contrast to the traditional way of doing things where the software is built as a 'one time compilation' against your specification. This approach depends on how well you specify your business processes, the modular approach allows for enormous flexibility.

  • modules provide a powerful way to model your company's processes but those contemplating migration need to take a look at what they do now;
  • it would be a mistake to see OpenERP's wealth of modules as an easy way to produce a modern, web-based 'shoe-in' for your existing bespoke system;
  • migrating to OpenERP successfully will require a full analysis of your existing business processes.

These bridges must be crossed early in the project management process if expectations are not to be unrealistic.

Using OpenERP

For a newcomer to any software package being able to make sense of what is going on early is vital. This is particularly true for one that will be exposed to technophobic accountants or sales people. OpenERP claims to be the most intuitive of all the ERPs available. One is always suspicious of such a claim and we find things get a lot more 'intuitive' once you have learned what to do! However, the project provides excellent documentation on its web site and a comprehensive book to go with it.

Far from being tedious and baffling we found our introduction to OpenERP relatively painless. Motivation came from coming across features that were immediately appreciated for their intrinsic utility rather than gimmickry. In ERP features are not 'cool', they must be useful and usable. To give a few examples:

  • a Dashboard whose appearance and functionality is tailored to the needs of each user;
  • rule-based templates for setting pricing policies across the board including customer specific discounts, percentage markups and so on;
  • automatic propagation of accounts data into all areas of the ERP;
  • double-entry stock management;
  • fully integrated email/sms and company wiki.

Login using a web browser and you are greeted by the Dashboard screen complete with pretty graphs, ToDos, shared calendars, inspiring public messages from the boss, what ever you wish. In fact it's a standard pane-element format which you can shuffle around and customise. Think iGoogle. At the top of the screen there are just two tabs as standard (Main Menu and Shortcuts) but using shortcuts you can add tabs for the ERP features that you will want. Editing panes and navigating sub-menus is easy. This simplicity and flexibility to customise increases greatly the work force's 'buy-in' to actually use the system.

The blend of web-style navigation and right click menus/help combines well with a sense of coherence that good data-propagation gives. For example, if an accountant back in Zurich downgrades a Partner's (another key concept of the package which is more 'customer') credit rating through his accounts modules then the Sales operative in the field in Bulgaria has his Sales Management module suitably updated on his netbook or smartphone. Meanwhile at Head Office in London they can see the lot.

Analytical tools are vital to any substantial company to keep track of what is going on and to plan for the future. These abound in OpenERP including account analysis packages which allow more than simple reporting required by law; a double entry stock management module which keeps track if stock from where it came via the warehouse to where it went; and a fully-featured project management modules with a decent Gannt utility.

In other words OpenERP gives you the kind of features you would expect as standard with a costly SAP system running on Oracle, only here we have a free and open source product running on PostgreSQL.

Summary

OpenERP is perhaps the paradigmatic exemplar for the power of Open Source development methodology and the module approach to customisation. This well funded, tightly co-ordinated project has produced an astonishingly intuitive and powerful business tool. As with all such projects its future will depend on real-world utility and quality control. So far these two boxes are thoroughly ticked. SAP watch out!