Busca avançada
Ano de início
Entree

Ferramenta para modelagem de sistemas de software autoadaptativo baseada em linguagens específicas de domínio

Processo: 17/01703-6
Linha de fomento:Bolsas no Brasil - Iniciação Científica
Vigência (Início): 01 de abril de 2017
Vigência (Término): 31 de março de 2018
Área do conhecimento:Ciências Exatas e da Terra - Ciência da Computação - Sistemas de Computação
Pesquisador responsável:Frank José Affonso
Beneficiário:Guilherme Guiguer Menaldo
Instituição-sede: Instituto de Geociências e Ciências Exatas (IGCE). Universidade Estadual Paulista (UNESP). Campus de Rio Claro. Rio Claro , SP, Brasil
Assunto(s):Engenharia de software   Linguagem de programação   Softwares   Desenvolvimento de software

Resumo

O software autoadaptativo (do inglês, Self-adaptive Software - SaS) tem emergido como um importante tipo de sistema de software. O desenvolvimento desse tipo de software não é tarefa trivial, pois lida com constantes mudanças estruturais e/ou comportamentais em tempo de execução. Em paralelo, Arquiteturas de Referência (AR) visam capturar a essência de arquiteturas de sistemas similares, facilitando o desenvolvimento de arquiteturas concretas para novos sistemas, novas versões de sistema, ou extensões de sistemas similares. Com base no contexto exposto, uma AR para SaS chamada RA4SaS (do inglês, Reference Architecture for SaS) foi projetada por Affonso & Nakagawa (2013). Inicialmente, essa AR teve como propósito maior apoiar a comunidade de SaS pela carência de desenvolvimento de SaS apoiado por padrões e boas práticas de engenharia de software. Além disso, desde sua elaboração, projetos de Iniciação Científica (IC) foram conduzidos sob a supervisão do Prof. Dr. Frank José Affonso, sendo um PIBIC/CNPq e outros FAPESP (N. Processos: 2013/00283-2, 2014/19826-9, 2015/10147-4). Esses projetos são desdobramentos da evolução e otimização de tal arquitetura, além da consolidação do grupo de pesquisa "Engenharia de Software para Sistemas Autoadaptativos'' na UNESP - Câmpus Rio Claro/SP. Em relação ao último projeto de IC (FAPESP N. Processo: 2015/10147-4), um novo módulo para geração de código fonte foi desenvolvido baseado no Template-Engine (TE) FreeMarker. A utilização desse TE proporcionou maior flexibilidade de adaptação e melhor manutenibilidade ao módulo, pois quando a RA4SaS é instanciada para um novo domínio, apenas os novos templates devem ser elaborados para as entidades de software e sua respectiva arquitetura. Adicionalmente, notou-se, no final da execução desse projeto, duas ótimas aplicabilidades para esse novo módulo: (I) apoiar o desenvolvimento de novas entidades de software; e (II) auxiliar na preservação dos modelos durante os ciclos de adaptação. Essa última trata-se de um dos grandes desafios a serem contornados pela comunidade de SaS (Cheng et al., 2009; Salehie & Tahvildari, 2009; De Lemos et al., 2013), que é a preservação da integridade entre modelo e código fonte. Em outras palavras, quando uma entidade de software (SaS) é adaptada em código, o modelo deve acompanhar essa evolução. Nesse sentido, este projeto tem como objetivo projetar e implementar uma ferramenta para modelagem de SaS baseada em linguagens específicas de domínio (do inglês, Domain-Specific Languages - DSL) (Fowler, 2010). Além disso, uma abordagem deverá ser também elaborada para permitir que os modelos criados nessa ferramenta sejam transferidos para o módulo gerador de código fonte. Portanto, pretende-se, ao final deste projeto, ter uma ferramenta que viabilize o desenvolvimento de SaS e que permita aos interessados (ou seja, engenheiro de software e/ou especialistas de domínio) atuarem no desenvolvimento de entidades de software autoadaptativas, conforme necessidades do domínio das mesmas. Dessa forma, espera-se ter uma solução de infraestrutura integrada à RA4SaS que possa flexibilizar e otimizar o desenvolvimento de SaS. (AU)