Software Engineering Processes for Self-Adaptive Systems


Jesper Andersson, Luciano Baresi, Nelly Bencomo, Rogério de Lemos, Alessandra Gorla, Paola Inverardi, and Thomas Vogel. “Software Engineering Processes for Self-Adaptive Systems”. In: Software Engineering for Self-Adaptive Systems II. Ed. by Rogério de Lemos, Holger Giese, Hausi Müller, and Mary Shaw. Vol. 7475. Lecture Notes in Computer Science (LNCS). Springer, 2013, pp. 51–75. DOI: 10.1007/978-3-642-35813-5_3


In this paper, we discuss how for self-adaptive systems some activities that traditionally occur at development-time are moved to run-time. Responsibilities for these activities shift from software engineers to the system itself, causing the traditional boundary between development-time and run-time to blur. As a consequence, we argue how the traditional software engineering process needs to be reconceptualized to distinguish both development-time and run-time activities, and to support designers in taking decisions on how to properly engineer such systems. Furthermore, we identify a number of challenges related to this required reconceptualization, and we propose initial ideas based on process modeling. We use the Software and Systems Process Engineering Meta-Model (SPEM) to specify which activities are meant to be performed off-line and on-line, and also the dependencies between them. The proposed models should capture information about the costs and benefits of shifting activities to run-time, since such models should support software engineers in their decisions when they are engineering self-adaptive systems.


    author = {Andersson, Jesper and Baresi, Luciano and Bencomo, Nelly and de Lemos, Rog\'{e}rio and Gorla, Alessandra and Inverardi, Paola and Vogel, Thomas},
    title = {Software Engineering Processes for Self-Adaptive Systems},
    year = {2013},
    booktitle = {Software Engineering for Self-Adaptive Systems II},
    volume = {7475},
    pages = {51--75},
    editor = {de Lemos, Rog\'{e}rio and Giese, Holger and M\"{u}ller, Hausi and Shaw, Mary},
    series = {Lecture Notes in Computer Science (LNCS)},
    publisher = {Springer},
    doi = {10.1007/978-3-642-35813-5_3},