Abstract
This paper presents a software architecture approach that supports facilities for customizing the set of functionalities offered by CASE systems, without affecting the complexity of the system. The proposed software architecture approach supports on-line composition of elementary and composite functionalities to implement new complex functionalities required for specific applications. The proposal pushes the interesting results obtained by other research groups beyond the goals reached so far by allowing new functionalities to be defined run-time, without recompiling the system, but relying on dynamic linking mechanisms. The proposal is illustrated with a case-study, successfully used in some industrial pilot projects.