SmellGuru: a machine learning-based approach to predict design problems
Atualmente, a previsão de problemas de projeto de código-fonte desempenha um papel essencial na indústria de desenvolvimento de software, identificando com antecedência módulos arquitetônicos defeituosos. por esta razão, alguns estudos têm explorado este assunto na última década devido à relação com...
| Autor: | |
|---|---|
| Formato: | tesis de maestría |
| Estado: | Versión publicada |
| Fecha de publicación: | 2022 |
| País: | Brasil |
| Recursos: | Universidade do Vale do Rio dos Sinos (UNISINOS) |
| Repositorio: | Repositório Institucional da UNISINOS (RBDU Repositório Digital da Biblioteca da Unisinos) |
| Idioma: | portugués |
| OAI Identifier: | oai:www.repositorio.jesuita.org.br:UNISINOS/12013 |
| Acesso em linha: | http://www.repositorio.jesuita.org.br/handle/UNISINOS/12013 |
| Access Level: | acceso abierto |
| Palavra-chave: | ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação Prediction Design problems Machine learning Code smells Bad smells |
| Resumo: | Atualmente, a previsão de problemas de projeto de código-fonte desempenha um papel essencial na indústria de desenvolvimento de software, identificando com antecedência módulos arquitetônicos defeituosos. por esta razão, alguns estudos têm explorado este assunto na última década devido à relação com aspectos da manutenção e modularidade. Infelizmente, a literatura atual carece de (1) um fluxo de trabalho genérico abordagem que contém passos-chave para prever problemas de design, (2) uma linguagem para permitir que os desenvolvedores para especificar problemas de design e (3) um modelo de aprendizado de máquina para gerar previsões de design problemas. Portanto, esta dissertação propõe o ModelGuru, que é um aplicativo baseado em aprendizado de máquina abordagem para prever problemas de projeto. Em particular, este estudo (1) introduz uma visão inteligível fluxo de trabalho que fornece orientação clara aos usuários e facilita a inclusão de novas estratégias ou etapas para melhorar as previsões; (2) propõe uma linguagem específica de domínio (DSL) para especificar cheiros, juntamente com um suporte de ferramenta; e (3) propõe um modelo de máquina para apoiar a previsão de problemas de projeto. Além disso, este estudo realizou uma revisão sistemática da literatura que permitiu criar uma visão geral da literatura atual sobre o assunto de previsão de design problemas. Um estudo exploratório foi realizado para entender o impacto do DSL proposto em três variáveis: taxa de acerto das especificações criadas, taxa de erro e tempo investido elaborar as especificações dos problemas de projeto. Os primeiros resultados obtidos, apoiados por testes estatísticos, apontam para resultados animadores ao revelar uma taxa correta acima de 50%, taxa de erro abaixo de 30% e esforço menor que 15 minutos para especificar um mau cheiro. A avaliação da abordagem SmellGuru proposta foi realizada com 23 participantes, estudantes e profissionais de empresas brasileiras com experiência profissional em desenvolvimento de software. isso foi possível avaliar a facilidade de uso percebida, utilidade percebida e intenção comportamental de usando a abordagem SmellGuru proposta. Os entrevistados concordam que o SmellGuru é fácil de interpretar (43,47%), Inovador (60,86%) e facilitaria a manutenção do software (78,26%). Por fim, este estudo traça algumas implicações e mostra o potencial de adoção da proposta abordagem para apoiar a especificação e previsão de problemas de projeto. |
|---|