Skip to Main Content
This work presents an infrastructure that simplifies the development of distributed applications that can adapt automatically to nonfunctional properties of their components and of their execution environment. This infrastructure, based on the programming language Lua and on CORBA, allows applications to select dynamically the components that best suit their requirements, to verify whether the system is satisfying these requirements, and to react, when appropriate, to variations in the nonfunctional properties of the services in use. We use CORBA's trading service to support dynamic component selection. An extensible monitoring facility supports monitoring of dynamically defined requirements. We use the Lua language to specify adaptation strategies, and a smart proxy mechanism to apply these strategies.