Project of the Month, February 2004

Compiere

CRM (Customer Relations Management) and ERP (Enterprise Resource Planning) are two key software technologies that allow organizations to streamline their business processes. ERP/CRM is a lucrative software market that makes up some of today's largest technologies companies: SAP, Oracle, and Peoplesoft. SourceForge.net's February 2004 project of the month, Compiere ERP & CRM, unlike its expensive commercial cousins, is an Open Source solution that companies can use to power their small to medium size business. The project is one of SourceForge.net's top 10 projects in activity (out of 78,000) and is another great example of Open Source software being used and deployed into the Enterprise.

Project Name: Compiere
Founded / Started:
January 1999

URL: http://www.compiere.org/
Project page: https://sourceforge.net/projects/compiere/

Description of project:
Compiere is like QuickBooks for advanced users -- a complete business solution for small-medium enterprises. It provides inventory management, order processing, accounting, reporting, customer relationship management, a Web store, and more. Its "big brothers" are SAP, PeopleSoft, and Oracle Applications.

Compiere is the only "off the shelf" Open Source ERP & CRM system, where the user is in charge. With Compiere you get:

  • The ability to change everything -- chart of accounts, reporting structure, currency, etc. -- even in production, allowing fast implementation without bending the system;
  • A smart user interface. See only what you need for the specific situation, either via the reach (HTML) client or the rich Java client;
  • Complete "multi" -- multi-lingual, multi-organization, multi-tenant, multi-accounting, multi-currency, multi-legislation, ...;
  • Fail-safe; ability to detect errors and recover from them easily while providing 100% uptime;
  • Model driven architecture based on an application dictionary. All windows and reports are generated on the fly for ultimate flexibility.

Trove info:

  • Requirements: Any Java platform, Java, JavaScript and less and less PL/SQL
    Server: 512MB RAM, 5GB disk space;
    Client: HTML-based, or 128MB RAM, 50MB disk space, plus Java WebStart

How did you get started?
After 20 years in ERP telling everyone how things should be done, Jorg thought that an alternative would be just to do it and prove his points. Unfortunately, project effort estimation was never his strength. After three years of concentrating on it completely (and without any income), Compiere was ready for prime time.

Why is Compiere Open Source?
Jorg did not have the best track record of working in harmony with sales people, and when the last guys disappeared out-of-state after raiding the bank account, he had had enough of the traditional business model. With Open Source, people do the presales themselves; the product has to speak for itself, with all information required to make a decision. Open Source changes the business model from risk-passing to risk-sharing. This is a more productive environment, and compared to the traditional environment, we definitely move faster, better with superior results. We now have more than 20 partners helping customers to implement Compiere. Open communication is the key and in the Open Source environment. No one holds back.

What is the intended audience?
Small-medium business worldwide in service, retail, wholesale, and project manufacturing industries.

How many people do you believe are using your software?
No clue. About a thousand installations in production? You tend to hear only the complaints and problems, and Compiere is very stable.

What gave you an indication that your project was becoming successful?
59,697 downloads in January 2002

What has been your biggest surprise?
So many downloads but so few bugs. In ERP a few thousand bugs fixed per release is not unusual.

What has been your biggest challenge?
What to do next. Managing priorities is a complex process for a complex application like Compiere. As the prospects for advanced functionality are so diverse and also changing, there is a constant challenge to do the right thing. Now, Kathy manages the priorities based on the votes of our partners in our monthly virtual meetings.

What are you most proud of?
Compiere has implementations all over the world -- actually fairly evenly spread. Jorg's past experience as localization manager for Oracle helped to make Compiere easily translatable and able to adapt to local requirements. Compiere is now available in all the main languages in the world.

Why do you think your project has been so well received?
It works out of the box and you can change anything, even in production. It is a complete, fully integrated application. For many, it takes just four hours to install Compiere, and they can then enter and print invoices. That's much quicker than traditional ERP installations.

For many, the Open Source benefits are a major factor: You are not dependent on a vendor, and have all the resources you need to do whatever your individual priorities are. You have all the information available and have other users to help you. Also, we offer traditional support. This removes the uncertainty of Open Source environment and you get the support when you need it.

The selection of the license (Mozilla) is an important part. Companies often regard their extensions as a competitive advantage and do not want to be forced to share them.

Where do you see your project going?
Database independence is a big issue. We are currently based on Oracle to provide the 100% availability required for the backbone of your business. Also, when we started, application servers were less than reliable and functionality in the database still provided the highest performance. Compiere is easy to port to IBM's DB/2, but the demand is more for Open Source databases. We negotiated a special license with Oracle and removed the usual cost factor for an Oracle implementation with our support contract, which includes all licenses for just US$1,500.

The next generation of our core engine will be database-independent and just require ANSI SQL, views, and functions. The Compiere application server (based on JBoss) has been proven stable enough to be used in small business environments with no IT staff. We are using database independence to improve our core engine to completely implement the OMG workflow facility. With that, we gain higher flexibility (workflow is usually just an add-on in ERP) and performance benefits. It's then a user decision what level of stability and performance they require from a database.

How can others contribute?
In today's environment, the actual code development is just a minor part for business applications like Compiere. The major task is functional analysis so that the application fulfills the requirements of many industries and legislations. The driving force in Compiere are not young hackers but gray-haired ERP veterans. We are looking for people with at least five years of ERP analysis and development experience.

The easiest way to get involved is to implement Compiere for production use. That automatically determines the priorities. It does not have to be a full implementation of all the functionality, as that requires a bit of experience. We've had people start by just implementing inventory management and interfacing it with scanners and specialized high-volume data entry front end extensions.

Do you work on the Open Source project full-time, or do you have another job?
Compiere is our work and hobby -- it's still fun and it's getting better.

How do you coordinate the project?
Kathy manages our priorities based on the feedback from our partners and customers. We now get more and more bug reports with the fix included, so that we just have to stick it into CVS. Due to Compiere's model-driven architecture, testing is much easier compared with hand-coded applications. We "just" have to test the screen and report generation and processes. We have a very good track record and rarely have regression issues (thanks Kathy!).

To shorten the release cycle, we now work with Quality First Software. Their product qftestJUI helped us automate Java GUI testing. This is in addition to the unit testing with JUnit, with which it is hard to automatically test complex business processes.

What is your development environment like?
We use Red Hat Enterprise and Windows servers for development and testing on Dell boxes. For our Java 1.4.2 based development, we recently switched from JBuilder to Eclipse, which improved development productivity significantly. We are now looking for a Rose replacement. For database development, we use Embarcadero tools. Testing with qftestJUI and JUnit.

If you could change one thing about the project, what would it be?
We have little clue who is using Compiere and how. Feedback is optional in Open Source, but we plan to implement a completely voluntarily registration so that we have the chance to get a bit more info about our user base. As a provider of Customer Relationship Software, we should not just preach "Know your customer."

Milestones

  • Project started January 1999
  • Moved to SourceForge June 2001 with the first beta release
  • We are planning a training boot camp in February in Miami.
  • In the first half of 2004, we plan to complete the implementation of the OMG (Object Management Group) AR/AP Facility. This is in addition to the OMG workflow facility on our way to database independence.
  • For the second half of 2004, we hope to release the last missing link in our application: Fixed Assets Depreciation (asset management is available now) and the first manufacturing implementations.

More projects of the month


Project Name: Compiere

Background of leaders:

Name: Jorg JankeJorg Janke
Age: 47
Employer: ComPiere, Inc.
Past Experience: 25+ years in ERP industry; business background with technical expertise
Education: MBA
Location: Monroe, CT (USA)

Kathy Pink
Employer: ComPiere, Inc.
Past experience: 15 years experience in devel, training, support of financial/business apps
Education: BA
Location: Monroe, CT (USA)

Key Developers:
Jacob Pedersen (jpedersen)
Yves Sandfort (comdivisionys)
Steven Sackett
Eldir Tomassen (eldir)
Victor Perez Juarez (vpj-cd)

Quote about SF.net?
SourceForge.net is THE collaborative development environment. If I ever were to do a closed development project again I'd talk the SF.net guys. Fast, efficient, competent -- what more do you want?

Why did you place the project on SF.net?
The question assumes that you think that you have competition matching your capabilities. ;-)

How has SF.net helped you?
The collaborative development environment allows developers and users to exchange ideas and help each other; open, direct communication without secrets. SF.net is also a great promotional platform. The only thing we could ask for is further improving the search/query capabilities in SourceForge.net. With that, SourceForge.net will be unbeatable as a collaborative development environment.

The number one benefit of using SourceForge.net is:
Accessible collaborative development with "no worry" distribution.