It is important to differentiate between “customization” and “configuration”.
Customization implies changing code which makes support and upgrading difficult and requires some level on in-house or contracted expertise available to mediate between the vendor and the administrators.
Configuration imples that the application’s behaviour can be changed by tools that can be used by a non-technical administrator without affecting the core software. The configuration is usually stored in the database or in configuration files that can be upgraded automatically when new versions are installed.
As the products in the LMS marketplace mature, the need for customization is decreasing as it become possible to make significant changes in functionality and user experience through configuration,
The challenge in designing configuration parameters is to determine the range of behaviour required and to control the complexity of the configuration process.
For SaaS vendors such as Saba that have come from the BTF market where customization was common, there is a real need to provide configuration features that work so that the complexity of their hosting operations does not kill them with support costs and reliability issues.
As LMS (and other applications) move to the cloud, the ability to provide custom behaviour through configuration rather than customization will grow.
Saba has made great progress with the current 6.1 version and the new SEC 7.0 release, by taking a very detailed look at what types of customizations their customers had done in the past and making it possible to achieve the same functionality adjustments through configuration.