1. A customization framework for customizing computer implemented software systems, comprising: an adapter subsystem having methods configured to be invoked to receive a customization input from a customizable subsystem, the customization input indicative of a requested customization; and a target subsystem having a method configured to be invoked by the adapter subsystem to apply the requested customization.