Dynamic life updates
Intervenant(s) : Yolande Berbers (KU. Leuven)
Due to their modular design, component based applications are relatively well suited to support runtime evolution. However, replacing a component at runtime without halting the application remains a difficult task. The main cause of this complexity can be found in transferring the state between two versions of a component. We have developed a methodology to perform runtime adaptations on component-based applications. This methodology contains both a static and a dynamic part. In the static part we conduct an analysis of the (object-oriented) source code of different versions of a component. We use different heuristics to identify equivalent data structures between different versions. The dynamic part of our methodology uses DRACO, a lightweight middleware platform for component applications that we have developed for systems with limited resources. It allows to replace on the fly components of an application, while the application is still running.