Dynamic Aspect Weaver Family for Family-based Adaptable Systems.
Wasif Gilani, Olaf Spinczyk · 2005
Abstract. Complex software systems, like operating systems and middleware, have to cope with a broad range of requirements as well as strict resource constraints. Family-based software development is a promising approach to develop application-specific systems from reusable components. However, once statically configured, these systems still need to adapt at runtime according to the dynamics of the environment. The majority of the concerns in the complex systems, that need to be adaptable, are crosscutting. With the application of Aspect-oriented Programming (AOP), these concerns can be cleanly encapsulated, and then dynamic AOP can be applied for the adaptations to be contained, and applied at runtime. An efficient dynamic aspect weaver is needed for the dynamic weaving and unweaving of these crosscutting concerns into the system. None of the currently available dynamic weaver can be optimized according to specific application requirements. In this paper we present the family-based dynamic weaver framework that supports the static as well as dynamic weaving and unweaving of the aspects to the components. By applying the program family concept, the system itself as well as the dynamic weaver, built on top of it, is tailored down to provide only the features or services required by any particular application. 1