A model-based framework for continuous development at runtime on cyber-physical systems