Like the heart and lungs, accounts payable and accounts receivable keep a company pumping. Money goes out; raw materials come in. Products and services go out; money comes in. If more money comes in than goes out, the company prospers. At least that's the theory -- and the goal.
Like the heart and lungs, accounts payable and accounts receivable keep a company pumping. Money goes out; raw materials come in. Products and services go out; money comes in. If more money comes in than goes out, the company prospers. At least that’s the theory — and the goal.
Of course, the devil’s in the details: there’s inventory to manage, backorders to fulfill, outstanding invoices to collect, orders to process, bills to pay, and customers to service. The goal of business may be simple enough — but the business of running a business is anything but.
Fortunately, computers are a natural for the back office, and software to manage a business — called customer relationship management (CRM) and enterprise resource management (ERP) software — has become a big business in itself. SAP, Oracle, PeopleSoft, and Microsoft charge plenty of beans for bean counting software. For example, Microsoft’s Great Plains Software division charges $50,000 for a license, $100,000 for implementation, and $20,000 a year for maintenance.
But just as Linux has provided a free alternative to proprietary operating systems like Windows and Solaris, Compiere, this month’s “Project of the Month,” provides an open source alternative to commercial CRM and ERP solutions. Written as a Java J2EE application and provided under the Mozilla license, Compiere is a free, “off the shelf” solution that businesses can change and extend at will. Even better, there’s no vendor lock-in.
Compiere project leaders Jorg Janke and Kathy Pink, both of Monroe, Connecticut, detailed the history of their project to Linux Magazine Editor-in-Chief Martin Streicher and SourceForge.net Site Director Patrick McGovern, and explained why at least one (competing) Microsoft salesperson calls Compiere “a pain in the ass.”
Jorg and Kathy, can you explain what Compiere is and what makes it unique?
JORG JANKE: Compiere is a complete business solution for small- to medium-sized enterprises. Compiere provides inventory management, order processing, accounting, reporting, customer relationship management, a web store, and more.
Compiere lets you change everything, from the chart of accounts to what currency you’re using. You can even make changes while the system is in production use. Compiere’s offers smart user interfaces — either from a Java client or the web — where you see only what you need to say in any situation. Compiere is based on a model-driven architecture, where an application dictionary is used to generate all windows and reports on the fly. Solutions can be implemented very quickly in Compiere.
How did Compiere — arguably a very complex project — get started?
KATHY PINK: After 20 years in ERP, telling everyone how things should be done, Jorg decided to do a product himself just to prove his points. Well, project effort estimation was never his strength, so he started in 1999 and after three years completely concentrating on the project (and without any income), Compiere was ready for prime time.
Why is Compiere Open Source? With Open Source, people do the presales themselves. There’s no sales pressure or misleading presentations. You have the product and all information required to make a decision — the product speaks for itself. And if you don’t want to spend the time and effort, the Compiere partners are there to help you.
JANKE: Open Source changes the business model from risk-passing to risk-sharing. So you just concentrate on getting the issues resolved. This is a much more productive environment, and compared to the traditional environment, we definitely move faster, better, and with superior results. Open communication is the key, and in the Open Source environment, no one holds back.
How many enterprises are using Compiere?
JANKE: I don’t have a clue. We typically don’t hear about the successes — what we hear are the complaints and problems. However, Compiere is very stable. I was recently told by a small consulting company in southeastern Europe that they have about 15 customers in production in their local languages. Compiere worked out of the box, without a single support request.
PINK: We now have more than twenty partners helping customers implement Compiere. Compiere is still ERP, and implementation times vary between three weeks and six months, which is still far less than for other ERP and CRM packages. For many, it takes just four hours to install Compiere and they can enter and print invoices.
Why did you choose the Mozilla license?
JANKE: With an Open Source solution like Compiere, you’re not dependent on a vendor. You have all the resources you need to satisfy your individual priorities and requirements. You also have other users to help you. However, companies often regard their extensions to the system as a competitive advantage and do not want to be forced to share it. The Mozilla license provides for propriety.
Do you work on the Compiere full-time?
PINK: Compiere is both our work and our hobby — it’s still fun and it’s getting better!
How do you coordinate the project? Make assignments? Assign bugs?
JANKE: Kathy manages our priorities based on the feedback from our partners and customers. Key developers, including Jacob Peterson, Yves Sandfort, Steven Sackett, Eldir Tomassen, and Victor Pérez Juárez, tackle the work.
Due to Compiere’s model driven architecture, testing is much easier compared with hand coded applications. “All” [exaggerates] we have to test is the screen/report generation and processes. We have a very good track record and rarely introduce regressions, thanks to Kathy. Fortunately, and because we’re open source, we now get more and more bug reports with a fix attached — all we have to do is stick it into CVS.
To shorten release cycles, we now work with Quality First Software. Their product, qftestJUI, automates Java GUI based testing. We also use JUnit.
What’s been your greatest challenge?
JANKE: Choosing what to do next. Managing priorities is very difficult for a complex application like Compiere. The field for advanced functionality is so diverse, so big, so fluid, there’s a constant challenge to do the right thing. Kathy manages the priorities based on the votes of our partners in our monthly virtual meetings.
What challenges lie ahead?
PINK: Database independence is a big issue. Compiere is currently based on Oracle to provide the 100% availability required for business. Compiere is easy to port to IBM’s DB/2, but there’s enormous demand for Open Source databases. The next generation of our core engine will be database independent, requiring just ANSI SQL, views, and functions. Untethered from a specific database, the enterprise can decide what level of stability and performance they require from a database. We also want to leverage the work we do.
We’re also using the opportunity to implement database independence to improve our core engine and completely implement the OMG workflow facility. With that, we gain even higher flexibility (workflow is usually just an add-on in ERP), and even performance benefits.
How can others help or contribute?
PINK: In today’s environment, code development is just a very minor part of business applications like Compiere. The lion’s share of the effort required is the functional analysis, so that Compiere fulfills the requirements of many industries and legislations. So, the driving force in Compiere isn’t young “hackers,” but gray-haired, ERP veterans.
JANKE: For me, getting the analysis and design right is work. Coding is the fun part. We’re 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 doesn’t have to be a full implementation of all of the features, as that requires a bit of experience. We have had people start with just implementing inventory management and interfacing it with scanners and specialized high volume data entry front end extensions.
If you could change one thing about the project, what would it be?
JANKE: As mentioned, we have little clue who is using Compiere and how. Feedback is optional in Open Source, and we want to leave it that way. Instead, we plan to implement a completely voluntarily registration, so that we have the chance to get a bit more information about our installed base.
As a provider of Customer Relationship Software, we should practice what we just preach: “Know your customer.”
Jorg Janke and Kathy Pink are the project leaders for Compiere. You can reach Jorg at Jorg.Janke@compiere.org, and Kathy at firstname.lastname@example.org.