The goal of this roadmap paper is to summarize the state-of-the-art and to identify critical challenges for the systematic
software engineering of self-adaptive systems. The paper is partitioned into four parts, one for each of the identified essential
views of self-adaptation: modelling dimensions, requirements, engineering, and assurances. For each view, we present the state-of-the-art
and the challenges that our community must address. This roadmap paper is a result of the Dagstuhl Seminar 08031 on “Software
Engineering for Self-Adaptive Systems,” which took place in January 2008.