Concernant la partie logicielle des systèmes embarqués ouverts au changement, on constate (i) le besoin d'un modèle de la structuration du logiciel qui permette d'améliorer la productivité du processus de développement, (ii) la capacité de faire évoluer le comportement du système en exécution, afin de s'adapter aux changements de son environnement, et (iii) la prise en compte des limitations des ressources physiques des plates-formes d'exécution. Une approche de conception basée sur des composants logiciels (CBSE) facilite la gestion de la complexité du logiciel via l'abstraction des détails techniques. En s'appuyant sur cette approche, la question qui se pose est : comment ces composants doivent être développés de façon à satisfaire les exigences qui se dérivent des fortes contraintes physiques et du besoin d'évolution du logiciel ? Dans cet ouvrage, l'auteur réconcilie ces exigences souvent contradictoires en introduisant la notion de réification, définie comme la collection de données et de comportements qui encapsulent des aspects du composant logiciel à un moment précis de son cycle de vie.