Freeway

From ADempiere
Revision as of 11:36, 3 July 2007 by Fredtsang (Talk)

Jump to: navigation, search
This Wiki is read-only for reference purposes to avoid broken links.

State: we are finding Actors and Problems

Introduction

ADempiere as well as other database based software has always problems when you upgrade to a new version.

In addition the centrality of the database, that cannot be centralized as the source code, reduces the level of collaborations. Migrations and upgrades are only collateral aspects not the main issues.

Several actors are interested in developing different modules or completely different localizations.

With the source code the same problems are resolved with CVS/SVN. In particular the import command resolves some collaboration issues.

Several solutions to database version have been implemented like Schema Crawler or 2Pack.

The first kind of solution is not feasible for ADempiere as the AD very often differ on many ID, e.g. the AD_Table_ID for My_New_Table is not the same on two databases.

The ladder solution does not resolve conflicts during import between two actors both modifing the AD, e.g. customer's customization could be overwritten by an upgrade.

As an extension of the above problems let assume 100 companies have localized ADempiere over 100 countries. At the moment we can have a huge ADempiere with all 100 localizations inside or each companies is probably going to develop an homemade software for upgrading.

Below you can find the actors hopefully involved with ADempiere. Then we are going to details the problems these actors are supposed to encounter.

After the problems scenario is clear we are going to find a solution.

Analisys

Actors

  • The Adempiere Community: it develops into the main SVN trunk. The framework is improved constantly so developers get more fun with ADempiere and companies find it more and more productive.
  • Geekman: is a developer having fun with ADempiere developing WebService functionalities.
  • Schaeffer: is using ADempiere to run its business and has customized it a lot.
  • Germany Ltd: who has developed the german localization.
  • Mexico SA: who has developed the manufacturing module for ADempiere.
  • Italy spa: who has developed the italian localization.
  • Posterita: who has developed the Posterita POS, ZK Ajax UI, and contributing other modules.

Problem Scenario

  1. The ADempiere community is going quite well however they should syncronize to share IDs below 1000000. It would be worthwhile to avoid it. Some features are not stable enough for production and do not activate them while maintaining them in the main trunk would be usefull.
  2. Mexico SA is developing manufaturing on a secondary branch. Test its solution it's not straitforward. It could aggregate more and more developer with a friendly module architecture.
  3. Schaeffer is appling modification to AD with SQL scripts instead of directly from the System client, and it's reappling them after every upgrade.
  4. Geekman has developed a great improvement. However it took time for the ADempiere Community to test it and the AD modifications he submitted as contribution should be completely converted to have ID < 1000000 before to be committed to the trunk.
  5. Italy spa and German Ltd are developing on separated SVN and deal with upgrade problems, partially resolved by different homemade software.