For the customizations there are two important requirements:
-The implementation has to be maintainable (we don’t’ want to do
bugfixing for each individual implementation but only in our shared
product core). So the implementations of the customizations have to
guarantee not to pollute the product core.
-Secondly our product has to remain upgradeable. If our product core
evolves to a new version it has to be possible to do an upgrade
without rewriting the customizations.
To achieve this we already used the following strategy:
-The use of flexible fields and flexible tab page (which doesn’t
require any coding)
-The use of a Business rules engine
-The use of a flexible BPM engine
This makes it’s possible to reduce the amount of necessary
customizations to a minimum but as allows extra customization is
sometimes needed. (For example the integration with another system, an
extra application, ... )For these we still have two ideas/options:
-Modularization (this subject probably needs a thread for its own)
-MDS: first consideration here is that every site customization is
implemented in the same code base, so with every customization our
core would grow bigger and bigger….and therefore MDS seems not to be
So the main question is how to approach customization? Are we making
the wrong considerations? Are there other options?
The ideal world would give us the possibility to have are core
packaged in a separate install (ear file), and to lets us do our
customizations in a separate workspace with the possibility to
override most of the core functionality… Is this possible within ADF?
Note: for clarity we are not speaking about personalization here (and
the MDS possibilities for this issue).