Software frequently needs to adapt its behavior at run time to respond to changes in its execution environment. Different software components may use different approaches to adaptation. Composing a single adaptive system from existing adaptive components requires an “adaptation infrastructure” to integrate and arbitrate adaptive behaviors. This paper proposes a model for such an infrastructure and describes the design and operation of M2 , a prototype implementation. M2 uses a technique called transparent shaping to modify existing components so that they can report events of interest to the M2 core and implement appropriate responses. The architecture and communication infrastructure of M2 are described, followed by a case study in which M2 is used to construct an adaptive multimedia conferencing application from otherwise incompatible components.
Zhenxiao Yang, Zhinan Zhou, Betty H. C. Cheng, Phi