Autor |
Silva, Robson Keemps da; |
Lattes do autor |
http://lattes.cnpq.br/0591518187375585; |
Orientador |
Oliveira, Kleinner Silva Farias de; |
Lattes do orientador |
http://lattes.cnpq.br/2582456631204400; |
Co-orientador |
Kunst, Rafael; |
Lattes do co-orientador |
http://lattes.cnpq.br/1301443198267856; |
Instituição |
Universidade do Vale do Rio dos Sinos; |
Sigla da instituição |
Unisinos; |
País da instituição |
Brasil; |
Instituto/Departamento |
Escola Politécnica; |
Idioma |
pt_BR; |
Título |
SmellGuru: a machine learning-based approach to predict design problems; |
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.; |
Abstract |
Nowadays, the prediction of source code design problems plays an essential role in the software development industry, identifying defective architectural modules in advance. For this reason, some studies have explored this subject in the last decade due to relation with aspects of maintenance and modularity. Unfortunately, the current literature lacks (1) a generic workflow approach that contains key steps to predict design problems, (2) a language to allow developers to specify design problems, and (3) a machine learning model to generate predictions of design problems. Therefore, this dissertation proposes ModelGuru, which is a machine learning-based approach to predict design problems. In particular, this study (1) introduces an intelligible workflow that provides clear guidance to users and facilitates the inclusion of new strategies or steps to improve predictions; (2) proposes a domain-specific language (DSL) to specify bad smells, along with a tool support; and (3) proposes a machine model to support the prediction
of design problems. In addition, this study carried out a systematic review of the literature
that allowed creating an overview of the current literature on the subject of predicting design problems. An exploratory study was carried out to understand the impact of the proposed DSL on three variables: correctness rate of the created specifications, error-rate and time invested to elaborate the specifications of design problems. The initial results obtained, supported bystatistical tests, point to for encouraging results by revealing an above correct rate than 50%, error rate below 30% and effort less than 15 minutes to specify a bad smell. The evaluation of the proposed SmellGuru approach was carried out with 23 participants, students and professionals from Brazilian companies with professional experience in software development. It was possible to assess the perceived ease of use, perceived usefulness and behavioral intention of using the proposed SmellGuru approach. Respondents agree that SmellGuru is easy to interpret
(43.47%), Innovative (60.86%) and would make the software easier to maintain (78.26%). Finally, this study draws up some implications and shows the potential of adopting the proposed approach for supporting the specification and prediction of design problems.; |
Palavras-chave |
Prediction; Design problems; Machine learning; Code smells; Bad smells; |
Área(s) do conhecimento |
ACCNPQ::Ciências Exatas e da Terra::Ciência da Computação; |
Tipo |
Dissertação; |
Data de defesa |
2022-09-16; |
Agência de fomento |
Nenhuma; |
Direitos de acesso |
openAccess; |
URI |
http://www.repositorio.jesuita.org.br/handle/UNISINOS/12013; |
Programa |
Programa de Pós-Graduação em Computação Aplicada; |