Antecipando a Identificação de Dívidas Técnicas em Projetos de Desenvolvimento Dirigido por Modelo

 

Banca de DEFESA: RAMON ARAÚJO GOMES

Uma banca de DEFESA de MESTRADO foi cadastrada pelo programa.

DISCENTE : RAMON ARAÚJO GOMES

DATA : 18/08/2021

HORA: 14:00

LOCAL: On Line - Sala do PGcomp

TÍTULO:

Antecipando a identificação de dívidas técnicas em projetos de desenvolvimento dirigido por modelo


PALAVRAS-CHAVES:

Desenvolvimento Dirigido a Modelos, Divida Técnica, Bad Smells


PÁGINAS: 117

RESUMO:

O Desenvolvimento Dirigido por Modelos (DDM) e a metáfora de Dívida Técnica (DT) são abordagens de Engenharia de Software que promovem a qualidade nos sistemas desenvolvidos. Enquanto DDM busca este objetivo através do uso de modelos como principais artefatos do processo de desenvolvimento, o gerenciamento de DT o faz através da correta gestão de problemas que, fora de controle, podem dificultar a manutenção e evolução dos sistemas. Grande parte das pesquisas em DT atualmente foca no código da aplicação como principal fonte das dívidas técnicas.  Em um projeto DDM, entretanto, a geração de código fonte geralmente é feita em etapas posteriores à criação dos modelos e, portanto, lidar com a DT apenas no nível de código pode levar ao pagamento de juros desnecessários devido à existência de dívidas técnicas não gerenciadas. Trabalhos recentes concluíram que códigos desenvolvidos com DDM não são livres de DT, demonstrando a importância em gerenciar a dívida técnica também nesses projetos, de preferência em estágios anteriores do processo de desenvolvimento, como a modelagem. Este trabalho busca analisar se é possível usar estratégias de detecção de dívida técnica de código fonte para identificar DT em modelos geradores de código dentro de um contexto de desenvolvimento dirigido por modelos. Para isso, técnicas de detecção de DT em código fonte foram avaliadas com o objetivo de adaptá-las para o nível de abstração dos modelos. Um catálogo de nove itens de dívida técnica para modelos independentes de plataforma foi especificado, com estratégias de detecção que permitem a automação do processo de identificação das dívidas técnicas nos modelos. Posteriormente, as estratégias de detecção propostas foram implementadas em uma ferramenta que permite a especificação e identificação de model smells para modelos EMF. Um estudo preliminar utilizando 3 projetos opensource versionados no Github foi realizado para avaliar e ajustar as estratégias de detecção propostas. Em seguida, um estudo experimental mais profundo foi feito com o objetivo de avaliar a efetividade real das estratégias de detecção propostas em antecipar a identificação das dívidas técnicas, detectando-as nos modelos geradores do código fonte. Um total de 9 diferentes projetos, com 36 modelos e mais de 400 mil linhas de código foram usados nessa avaliação, todos eles opensource, versionados publicamente no Github e desenvolvidos com a tecnologia EMF. Os resultados mostraram que as estratégias propostas são capazes de antecipar boa parte das dívidas técnicas de código fonte nos modelos geradores do código. Os itens do catálogo, porém, apresentaram diferentes graus de efetividade na antecipação e variados níveis de ocorrência nos projetos estudados. Uma discussão sobre cada item avaliado foi realizada com o objetivo de analisar e explicar os resultados obtidos do estudo experimental. Por fim, foram discutidos aspectos que podem orientar trabalhos futuros com melhorias e a extensão do catálogo proposto



MEMBROS DA BANCA:

Presidente - 1708274 - RITA SUZANA PITANGUEIRA MACIEL

Interno - 1710389 - CLAUDIO NOGUEIRA SANT ANNA

Externo à Instituição - UIRÁ KULESZA - UFRN

Data da Defesa: 
18/08/2021 - 14:00
Tipo de Defesa: 
Defesa de Mestrado