2013-10-23 19:08:45 +00:00
|
|
|
## Links
|
|
|
|
|
|
|
|
- [[!wikipedia Frontaccounting]] - Wikipedia
|
|
|
|
- <http://frontaccounting.com> - Project homepage
|
2013-11-15 00:12:20 +00:00
|
|
|
- Source Code Clone: hg clone http://hg.code.sf.net/p/frontaccounting/mercurial frontaccounting-mercurial
|
|
|
|
(Found only by chasing
|
|
|
|
[Wiki](http://frontaccounting.com/fawiki/) link from homepage, which
|
|
|
|
led to [Sourceforge page](http://sourceforge.net/p/frontaccounting/mercurial/ci/default/tree/)
|
2013-10-23 19:08:45 +00:00
|
|
|
|
|
|
|
## Technical
|
|
|
|
|
|
|
|
- PHP
|
2013-10-23 19:10:15 +00:00
|
|
|
- MySQL
|
2013-10-23 19:16:56 +00:00
|
|
|
- GPLv3 or later
|
2013-10-23 19:08:45 +00:00
|
|
|
|
|
|
|
## Preliminary evaluation
|
|
|
|
|
|
|
|
### Positive
|
|
|
|
|
|
|
|
- [Most recent release 2013-09-05](http://frontaccounting.com/wb3/pages/posts/release-2.3.18193.php)
|
|
|
|
- Themable
|
2013-10-23 19:10:15 +00:00
|
|
|
- Seemingly easy to deploy (Looking at their source release, structure looks similar to wordpress, for good or worse)
|
2013-10-23 19:08:45 +00:00
|
|
|
|
|
|
|
### Negative
|
|
|
|
|
2013-10-23 19:16:56 +00:00
|
|
|
- It seems to be built from scratch and not leverage any frameworks.
|
|
|
|
- Seems like a messy codebase: Table-based design. No templating, HTML is `echo`-ed to stdout.
|
2013-10-23 19:18:07 +00:00
|
|
|
- Uses the [deprecated](http://php.net/manual/en/function.mysql-connect.php) PHP `mysql_*` functions.
|
2013-11-15 00:16:50 +00:00
|
|
|
|
|
|
|
## Detailed Evaluation
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases
|
2013-11-15 00:16:50 +00:00
|
|
|
- [[Trial Balance Report|UseCases/GeneratingReports#trial-balance]]: Yes
|
|
|
|
- [[Bank Reconciliation Report|UseCases/GeneratingReports#bank-reconcilation]]: Yes, seems ok
|
|
|
|
- [[Chart of Accounts|UseCases/GeneratingReports#chart-of-accounts]]: Yes
|
|
|
|
- [[Cash Disbursements Journal|UseCases/GeneratingReports#cash-disbursements]]: Yes, looks like GL Account Transactions works for this
|
|
|
|
- [[Income Report|UseCases/GeneratingReports#income-report]]: Not obviously
|
|
|
|
there, but should be easy given the number of reports available.
|
|
|
|
- [[Expense Report|UseCases/GeneratingReports#expense-report]]: Not obviously
|
|
|
|
there, but should be easy given the number of reports available.
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of [[Reporting|UseCases/GeneratingReports]] UseCases for Fund Accounting
|
2013-11-15 00:16:50 +00:00
|
|
|
|
|
|
|
It seems FrontAccounting's "Dimension" feature likely can do all of these,
|
|
|
|
since it seems you can limit any of the above reports by "Dimension".
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of [[Fund Accounting|UseCases/FundAccounting]] UseCases
|
2013-11-15 00:16:50 +00:00
|
|
|
|
|
|
|
- [[Fund-only View|UseCases/FundAccounting#fund-view]]: No, seems to be no way to
|
|
|
|
restrict a user to a specific Dimension.
|
|
|
|
- [[Funds as part of whole org View|UseCases/FundAccounting#fundless-view]]:
|
|
|
|
Yes, dimensions appear to be purely informative.
|
|
|
|
- [[Ignore Funds for operations|UseCases/FundAccounting#fundless-view]]:
|
|
|
|
Yes, dimensions appear to be purely informative.
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of [[Double-entry Accounting|UseCases/DoubleEntryAccounting]] UseCases
|
2013-11-15 00:16:50 +00:00
|
|
|
|
|
|
|
- Does the system implement pure double-entry accounting? Yes, it appears to
|
|
|
|
do so.
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of [[TrackingDocumentation|UseCases/TrackingDocumentation]] UseCases
|
2013-11-15 00:16:50 +00:00
|
|
|
|
|
|
|
- Does the system
|
|
|
|
[[link up to external documentation|UseCases/TrackingDocumentation#document-link-up]]?
|
|
|
|
Not that I can find. It doesn't seem to allow addition links to external documents.
|
|
|
|
|
|
|
|
- Does it have a [[the ability to explore transactions via documentation linkage|UseCases/TrackingDocumentation#document-link-explore]]?
|
|
|
|
Not that I can find.
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of [[Handling multiple currencies|UseCases/MultiCurrency]] UseCases
|
2013-11-15 00:16:50 +00:00
|
|
|
|
|
|
|
- Does it support the concept of
|
|
|
|
[[a single functional currency|UseCases/MultiCurrency]], while still
|
|
|
|
permitting multi-currency entries? It probably could be beat in submission
|
|
|
|
to work. It does have the knowledge of a default currency and converts to
|
|
|
|
it based on stored rates and reports come in the default currency.
|
|
|
|
However, it doesn't appear that you can confine those to a single
|
|
|
|
transaction.
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of WorkFlow UseCases
|
2013-11-15 00:16:50 +00:00
|
|
|
- Is a
|
|
|
|
[[specific workflow dictated by the system|UseCases/WorkFlow#workflow-dictated]]
|
|
|
|
? It does appear that there are certain automated operations that occur
|
|
|
|
upon creation of invoices, and purchase orders are required.
|
|
|
|
|
|
|
|
- Is a [[the workflow configurable|UseCases/WorkFlow#workflow-configurable]]
|
|
|
|
? No.
|
|
|
|
- [[Unaccrued Invoice|UseCases/WorkFlow#unaccrued-invioice]] ? Seems you
|
|
|
|
can't generate an invoice without accruing it.
|
|
|
|
- [[Purchase Order required|UseCases/WorkFlow#purchase-order-required]] ?
|
|
|
|
Seems that way.
|
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of the [[Reading and Reporting API|UseCases/ReadingAPI]]
|
2013-11-15 00:16:50 +00:00
|
|
|
|
|
|
|
Interaction with the data seems to happen with embedded SQL statements
|
2013-11-15 17:04:53 +00:00
|
|
|
intermixed with PHP code. Thus, writing SQL statements is really the only
|
|
|
|
way to interact with the data, and as such, given that there isn't anything
|
|
|
|
specifically innovative about the data model, this is no better nor worse
|
|
|
|
than most other projects of this nature.
|
2013-11-15 00:16:50 +00:00
|
|
|
|
2013-11-15 17:06:06 +00:00
|
|
|
### Evaluation of the [[Storage API|UseCases/StorageAPI]]
|
2013-11-15 17:04:53 +00:00
|
|
|
|
|
|
|
Again, SQL appears to be the only way to interact with the storage of
|
|
|
|
double-entry data. Double-entry data does not appear to be segmented away
|
|
|
|
from the other information.
|
|
|
|
|
2013-11-15 19:10:00 +00:00
|
|
|
### Evaluation of the [[Community Health|UseCases/CommunityHealth]]
|
|
|
|
- Is the
|
|
|
|
[[license both determined as Free Software by FSF and OSI-approved|USeCases/CommunityHealth#license-approved]]?
|
|
|
|
Yes, it's GPL'ed.
|
|
|
|
- Is the [[license GPL-compatible||UseCases/CommunityHealth#gpl-compatible]]? Yes.
|
|
|
|
- Does the project
|
|
|
|
[[require assignment of copyright or a CLA to get code upstreamed|UseCases/CommunityHealth#no-cla-for-profit]]?
|
|
|
|
Doesn't seem to require that.
|
|
|
|
- How many
|
|
|
|
[[active developers/companies contribute to the project||USeCases/CommunityHealth#dev-count]]?
|
|
|
|
Likely two, as two developers made 98% of the commits:
|
|
|
|
hg log|egrep '^user'|sort | uniq
|
|
|
|
* If there aren't many, how hard would it be to take over the project if
|
|
|
|
needed? Does not seem that easy given how it's designed.
|
|
|
|
- Is there good
|
|
|
|
[[developer documentation|UseCases/CommunityHealth#dev-docs]]?
|
|
|
|
There's a
|
|
|
|
[bit on the wiki](http://frontaccounting.com/fawiki/index.php?n=Devel.Devel)
|
|
|
|
but not much.
|
|
|
|
- How easy it to [[engage as a developer with the community|UseCases/CommunityHealth#dev-welcoming]]?
|
|
|
|
[Developers mailing list](http://sourceforge.net/mailarchive/forum.php?forum_name=frontaccounting-fa_list)
|
|
|
|
is barely active.
|
|
|
|
|
|
|
|
## Final Evaluation
|
|
|
|
<a id="final-eval"></a>
|
|
|
|
|
|
|
|
Frontaccounting seems to be a project kept alive by just two people who
|
|
|
|
presumably have deployments that are driving their work, but generally, there
|
|
|
|
is not much unique about this codebase, and the design doesn't seem to have
|
|
|
|
many reusuable components. Converting it for use with non-profits would be
|
|
|
|
an uphill battle. While the system clearly works, and is in fact very easy
|
|
|
|
to install, it has many assumptions about workflow that are likely specific
|
|
|
|
to its current deployments and inappropriate for non-profits.
|
|
|
|
|
|
|
|
Finally, The use of straight PHP without a framework, and use of deprecated
|
|
|
|
techniques and APIs means that it will be difficult to attract new
|
|
|
|
developers.
|