Advanced search
Start date
Betweenand

Reference architecture for self-adaptive software: design and implementation of a source code generator module

Grant number: 15/10147-4
Support type:Scholarships in Brazil - Scientific Initiation
Effective date (Start): September 01, 2015
Effective date (End): August 31, 2016
Field of knowledge:Physical Sciences and Mathematics - Computer Science
Principal Investigator:Frank José Affonso
Grantee:Gabriele Salgado Benato
Home Institution: Instituto de Geociências e Ciências Exatas (IGCE). Universidade Estadual Paulista (UNESP). Campus de Rio Claro. Rio Claro , SP, Brazil

Abstract

Self-adaptive Software (SaS) has emerged as an important type of software system. However, the development of such software is not a trivial task because it constantly deals with adaptations (structural and behavioral) at runtime so that the new needs of its users and execution environment are met. In parallel, Reference Architectures (RAs) capture the essence of architectures of similar systems, facilitating the design of concrete architectures for new systems, new system versions, or extensions of similar systems. Based on this context, Affonso & Rodrigues (2012), Affonso & Nakagawa (2013) e Affonso (2014) in previous projects, have designed a RA for SaS (RA4SaS). From August 2013 to July 2014, two scientific initiation projects were conducted under the supervision of Prof. Dr. Frank José Affonso, one PIBIC/CNPq and other FAPESP (Process: 2013/00283-2). Both projects were related to such architecture (RA4SaS) and other wider projects. The PIBIC/CNPq project aimed to design and implement a subsystem of self-healing systems as module for such architecture (Affonso et al., 2015). The FAPESP project aimed to implement a reflection module based on computational reflection and aspects (Souza et al., 2015). At the end of both projects, some adversities were observed, among of them can be highlighted: (i) the difficulty of modification/creation of the source code generator module; and (ii) the performance of such module (source code generator). Although such adversities do not represent related questions to the scope of both projects, they can be considered of great relevance for the SaS context. To overcome such adversities, this project aims to design and implement a source code generator module for the RA-SaS. To do so, template-engines will be used as a way to facilitate the development of architectural models, since this module must enable the adaptation to be performed at three levels: (i) software systems; (ii) software architecture; and (iii) both. Moreover, the adaptation must regard, at each of these levels, three interests: structural, behavioral, or both. Thus, it is intended, at the end of this project, to have a source code generator module of easy development/adaptation so that the adaptation interests and levels can be met. Moreover, it is expected that the performance issue, as relevant to the SaS context, also presents better results.