Infrastructure based on template engines for automatic generation of source code for self-Adaptive software domain - Benato, Gabriele Salgado [UNESP] (2017)
Self-Adaptive Software (SaS), a special class of software system, constantly deals with some type of changes (i.e., structural and/or behavioral) to meet the user's new needs or autonomously react to modifications in its execution environment. Software adaptation, when manually performed, becomes an onerous and error-prone activity. Automated approaches have been adopted as a feasible alternative to overcome such adversities because they reduce the human involvement to a minimum. Based on this scenario, a Reference Architecture for SaS (RA4SaS) [1], [2] was designed in previous work. This architecture enables the adaptation of SaS at runtime by means of a controlled adaptation approach. In this sense, an automated process and a complete infrastructure to allow the phases of such process were also developed. This paper presents the design and implementation of a new module for automatic generation of source code for our architecture based on template engines [3]. In short, the main benefits of this module can be summarized in three items: (i) higher design flexibility, maintenance and evolution of SaS; (ii) introduction of new capabilities for automatic generation of source code; and (iii) performance improvement. To present the operation of this new module, a case study was conducted. As result, we have observed that our architecture has good perspective to efficiently contribute to the SaS area.