I would like to announce that the Project/Open (http://www.project-open.com/) team has started the preparations to port the P/O "core" functionality to OpenACS (probably 5.0). We are looking for support from the community.
A Short Update on Project/Open
The Project/Open "Core" functionality is based on the ACS 3.4 "Intranet" module, dealing with projects, project collaboration, customers and users. It has been extended to handle financial data and employs role-based permissions.
Project/Open is an umbrella organization with the objective to develope and promote sector-specific applications:
- Project/Open "Core": Generic functionality around Projects, Customers and Users
- Project/Translation: An ERP system for Translation Agencies (most advanced project today)
- Project/Knowledge: A project management solution with Artificial Intelligence search functionality (Bayesian Networks based content classifiers)
- Project/Agency: A solution for advertizing agencies (a preconfigured "Core")
The current project team currently consists of:
- 1 Final thesis student from "La Salle" Tecnical University working on Project/Translation
- 4 Final thesis students working on Project/Knowledge
- A marketing team with two persons
- A two person management team for Project/Knowledge
- A two person general management team
Project/Translation is currently in productive use as a ERP system in 2 translation agencies and in one consulting company. Active negotiations are going on with some 6 potential customers.
Porting Project/Open to OpenACS 5.0
To understand the challeges of porting the P/O core to OpenACS you have to understand that P/O follows a quite different philosophy compared to community systems, because it has to deal with critical business data such as customer lists, payroll and financial data. Also, the GUI needs to be quite different...
So I am not 100% sure if we are going to adapt all of the OpenACS 5.0 features. In particular I have to admit that I'm (personally) not a fan of object orientation in Web applications, even though I have to admit that it may be useful in areas such as content management. I prefer to go more with components, which actually seem to fit quite well with a "relational object model".
So there are still a lot of decisions that need intensive discussion. So we have decided to go ahead with a phased development, starting with "legacy" code, so we can reasonably postpone part of these decisions until mid-January.
So we are going to start porting in several phases, working with a particular customer (Competitiveness) who already has a customized version of the 3.4 Intranet running:
1. We are going to unify the customized Competitiveness 3.4 Intranet with the Project/Open 3.4 Intranet. The goal of this task is to creates a unified "Intranet" module with an elegant GUI and the joint functionality (Samba-Filestorage, presales & CRM, timesheet, costs, invoices and payments, ...)
2. Update of the unified Competitiveness-Project/Open Intranet to OpenACS 5.0. with "minimum changes". Actually, the idea is to use "adaptors" (=> adaptor pattern) such as SQL-views or TCL procedures to minimize changes in the Intranet code.
3. "Cleanup" the unified Intranet to use OpenACS 5.0 features such as templates, i18n etc.
4. Integrate the resulting code with other Competitiveness specific functionality outside the Intranet module
I expect to finish the work on steps 1 and 2 in February using our "internal" team, because it involves touching customers code and data, protected by an NDA. However, we plan to publish the code at the end of phase 2, so that phase 3 could include participation from the community.
Phase 3 would also be the phase to decide for interfaces/integration with other packages, in particular dotWrk.
So we would like to invite everybody to participate in the project. Please send me an email (firstname.lastname@example.org) if you are interested and/or if you want to stay informed.