Supporting software evolution in component-based FOSS systems
Dr. Patrizio Pelliccione
Department of Computer Science, University of L'Aquila
DEI - Seminars Room
3rd May, 2011
FOSS (Free and Open Source Software) systems present interesting challenges in system evolution. On one hand, most FOSS systems are based on very fine-grained units of software deployment – called packages – which promote system evolution; on the other hand, FOSS systems are among the largest software systems known and require sophisticated static and dynamic conditions to be verified, in order to successfully deploy upgrades on users’ machines. The slightest error in one of these conditions can turn a routine upgrade into a system administrator’s nightmare.
In this talk we introduce a model-based approach to support the upgrade of FOSS systems. The approach promotes the simulation of upgrades to predict failures before affecting the real system. Both fine-grained static aspects (e.g. configuration incoherences) and dynamic aspects (e.g. the execution of configuration scripts) are taken into account, improving over the state of the art of upgrade planners. The effectiveness of the approach is validated by instantiating the approach to widely-used FOSS distributions.
Advanced software architectures and methodologies