Files @ 7c3d12364858
Branch filter:

Location: NPO-Accounting/npo-accounting-ikiwiki/ExistingProjects/ApacheOFBiz.mdwn

Joar Wandborg
Rejected BeansBooks because of the licesnse, also mv Bean{,s}Books
The information on this page is preliminary, open for comments.

## Links

* [[!wikipedia Apache_OFBiz]] - Wikipedia
* <http://ofbiz.apache.org/> - Project homepage

> Apache OFBiz (The Apache Open For Business Project) is an open source enterprise automation software project licensed under the Apache License Version 2.0. By open source enterprise automation we mean: Open Source ERP (Enterprise Resource Planning), Open Source CRM (Customer RelationShip Management), Open Source E-Business / E-Commerce, Open Source SCM (Supply Chain Management), Open Source MRP (Manufacturing Resources Planning), Open Source CMMS/EAM (Maintenance Management System/Enterprise Asset Management), Open Source POS (Point Of Sale), and so on.
> -- Project homepage

## Technical

* Java
* XML
* Groovy
* Freemarker
* Javascript
* CSS
* Ant

You can rely on [[https://www.ohloh.net/p/Apache-OFBiz/analyses/latest/languages_summary]] for details


-- [[!wikipedia Apache_OFBiz#Open_Source_Libraries]]

## Preliminary evaluation

### Positive

* Apache OFBIz is an ASF (Apache Software Fundation) TLP (Top Level Project) since July 2006. Since OFBiz is community backed (not backed by a company) this guarantees its sustainability (OFBiz exists since 2001). To get the idea, for instance compare [OFBiz activity](https://www.ohloh.net/p/Apache-OFBiz/commits/summary) with [the activity of a previously IBM backed project at the ASF (namely Geronimo)](https://www.ohloh.net/p/geronimo/commits/summary)
* [Active development](https://issues.apache.org/jira/browse/OFBIZ)
* Highly [Customizable](https://cwiki.apache.org/confluence/display/OFBIZ/Is+OFBiz+for+Me#IsOFBizforMe-AskingBuildvs.Buy)

### Negative

* One tool for everything, possibly hard to streamline. <https://cwiki.apache.org/confluence/display/OFBREQDES/OFBiz+EZBiz> points to the contrary.
* Documentation is split up in one page per section, hard to overview (it uses confluence, the same documentation system as [[Kuali]]). The documentation also has TODOs in multiple locations and is lacking content.
* The community is hard to get in contact with, three mailing lists are provided, a request for assistance has been sent to the `user` mailing list.

### Comments

*Josh Berkus:* there's no question that OFBiz could be customized into an NPO accounting program; it is tremendously customizable.  It is also, however, difficult and complex to install, maintain, or understand, and lacks the kind of documentation and existing user community required to support advanced usages from non-project-participants; we would need the direct assistance of the primary developers to accomplish anything.  More importantly, it would never be installable in standalone mode on a desktop machine; it would always need to be a server install.  Despite this, if we have 5 front-runners for this project, I think OFBiz should be one of them.

*Jacques Le Roux (OFBiz committer and PMC member):* You can run OFBiz as a standalone application on a desktop machine as well. Of course if you use a server, people, through their browsers, can access this server instance which allows to share information and minimize resources consumption.

<a id="evaluation"></a>
## Evaluation

### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases
- [[Trial Balance Report|UseCases/GeneratingReports#trial-balance]]: FIXME
- [[Bank Reconciliation Report|UseCases/GeneratingReports#bank-reconcilation]]: FIXME
- [[Chart of Accounts|UseCases/GeneratingReports#chart-of-accounts]]: FIXME
- [[Cash Disbursements Journal|UseCases/GeneratingReports#cash-disbursements]]: FIXME
- [[Income Report|UseCases/GeneratingReports#income-report]]: FIXME
- [[Expense Report|UseCases/GeneratingReports#expense-report]]: FIXME

### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases for Fund Accounting

Can each of these reports be generated, confined to a specific temporarily
restricted asset type?
   
- [[Trial Balance Report|UseCases/GeneratingReports#trial-balance]]: FIXME
- [[Bank Reconciliation Report|UseCases/GeneratingReports#bank-reconcilation]]: FIXME
- [[Chart of Accounts|UseCases/GeneratingReports#chart-of-accounts]]: FIXME
- [[Cash Disbursements Journal|UseCases/GeneratingReports#cash-disbursements]]: FIXME
- [[Income Report|UseCases/GeneratingReports#income-report]]: FIXME
- [[Expense Report|UseCases/GeneratingReports#expense-report]]: FIXME

### Evaluation of [[Fund Accounting|UseCases/FundAccounting]] UseCases

- [[Fund-only View|UseCases/FundAccounting#fund-view]]
- [[Funds as part of whole org View|UseCases/FundAccounting#fundless-view]]
- [[Ignore Funds for operations|UseCases/FundAccounting#fundless-view]]

### [[UseCases/Collaborating]] evaluation
- [[Simultaneous Editing of Ledger|UseCases/Collaborating#simultaneous-ledger-edits]]: FIXME
- FIXME: Other uses cases need rewrite.

### Evaluation of [[Double-entry Accounting|UseCases/DoubleEntryAccounting]] UseCases

- Does the system implement pure double-entry accounting?

### Evaluation of [[TrackingDocumentation|UseCases/TrackingDocumentation]] UseCases

- Does the system [[link up to external documentation|UseCases/TrackingDocumentation#document-link-up]]?

- Does it have a [[the ability to explore transactions via documentation linkage|UseCases/TrackingDocumentation#document-link-explore]]?

### Evaluation of [[Handling multiple currencies|UseCases/MultiCurrency]] UseCases

- Does it support the concept of
  [[a single functional currency|UseCases/MultiCurrency]], while still
  permitting multi-currency entries?

### Evaluation of [[draft transaction|UseCases/DraftTransactions]] UseCases

- Does the system allow
  [[generally for draft transactions|UseCases/DraftTransactions#draft-general]]
  that can be later approved before officially being posted to the books? 

### Evaluation of WorkFlow UseCases
- Is a [[specific workflow dictated by the system|UseCases/WorkFlow#workflow-dictated]] ?
- Is a [[the workflow configurable|UseCases/WorkFlow#workflow-configurable]] ?
- [[Unaccrued Invoice|UseCases/WorkFlow#unaccrued-invioice]] ?

### Evaluation of the [[Reading and Reporting API|UseCases/ReadingAPI]]

FIXME: This is assessment of what the API for manipulating the accounting
data does, so I think it's tough to do it as a list of questions.

### Evaluation of the [[Storage API|UseCases/StorageAPI]]

FIXME: This is assessment of what the API for storing the accounting data
does, so I think it's tough to do it as a list of questions.

### Evaluation of the [[Community Health|UseCases/CommunityHealth]]
- Is the [[license both determined as Free Software by FSF and OSI-approved|USeCases/CommunityHealth#license-approved]]?
- Is the [[license GPL-compatible||UseCases/CommunityHealth#gpl-compatible]]?
- Does the project
  [[require assignment of copyright or a CLA to get code upstreamed|UseCases/CommunityHealth#no-cla-for-profit]]?
- How many
  [[active developers/companies contribute to the project||USeCases/CommunityHealth#dev-count]]?
     * If there aren't many, how hard would it be to take over the project if needed?
- Is there good [[developer documentation|UseCases/CommunityHealth#dev-docs]]?
- How easy it to [[engage as a developer with the community|UseCases/CommunityHealth#dev-welcoming]]?