Dynamic Software Evolution and The K-Component Model - CAHILL, VINNY (My University, 2001)
There are known classes of software systems that can benefit from dynamic software evolution, including 24x7 systems that require on-line upgrades and adaptive systems that need to adapt to frequent changes in their execution environment. This paper investigates the use of dynamic software architectures and architectural reflection in building adaptive systems. We introduce the K-Component model and its architecture meta-model for building a dynamic software architecture. We address the issues of the integrity and safety of dynamic software evolution by modelling dynamic reconfiguration as graph transformations on a software architecture, and cleanly separate adaptation-specific code from functional code by encapsulating it in reflective programs called adaptation contracts. The paper also introduces the prototype implementation of our K-Component model.
Proceedings of OOPSLA 2001 Workshop on Software Evolution
Workshop on Software Evolution
PUBLISHED
Keywords: Computer Science