Alive Interfaces for Robust software Composition (AIRCO)
We have entered an era in software engineering where ICT solutions are composed of multiple services and components that are independently developed and deployed on remote service platforms and, therefore, also independently evolve.
To support improved modularization and customization of such composed applications, Aspect-Oriented Software Development (AOSD) is a promising composition technology because it supports invasive composition and customization interfaces alongside traditional composition of required and provided interfaces. However current AOSD techniques lack the required robustness to control the composition of the software system due to two notorious hard to solve problems: aspect interference and fragility. These problems are particularly true and stronger in contexts where components are independently developed and deployed by third parties.
The aim of this project is three-fold:
(i) Establish a coherent AOSD-based invasive composition approach in which the fundamental problems of aspect interference and fragility are treated as variants of the same problem: the violation of implicit implementation assumptions.
(ii) Based on this foundation, propose and develop alive interfaces for invasive composition that reify implementation assumptions as dynamic metadata whose semantics co-evolves as the application evolves.
(iii) Finally, exploiting dynamic metadata, propose and develop a policy specification mechanism for enforcing system-wide invariants over the architecture of the applications.