Reflective Reconfiguration Support for Context-dependent Software Updates (RECOCO)
Ensuring that software can display different behavior in different use contexts requires adapting software at runtime in dynamically created scopes (e.g. in a thread, in a client session, in a collaboration). Context-Oriented Programming (COP) offers dedicated language constructs for performing such dynamically scoped adaptations.
However, like any dynamic software adaptation technique, COP hits a conceptual barrier when new variations of existing program entities are integrated into a running system: dynamically scoped adaptations may occur at stages where the affected application components themselves are in a transitional, inconsistent state.
The aim of this project is two-fold:
- the description of the foundations of context-oriented programming that allows systematic reasoning about system-wide consistency in the presence of dynamically scoped adaptations
- the creation of a reflective architecture for context-oriented programming languages that accommodates implementing application-specific policies for dealing with consistency conflicts
More information about the project can be found at http://soft.vub.ac.be/recoco/