| dc.contributor |
Universidade Federal de Santa Catarina |
|
| dc.contributor.advisor |
Hauck, Jean Carlo Rossa |
|
| dc.contributor.author |
Galante, Gerson Fernandes |
|
| dc.date.accessioned |
2026-08-27T23:28:52Z |
|
| dc.date.available |
2026-08-27T23:28:52Z |
|
| dc.date.issued |
2026 |
|
| dc.identifier.other |
397997 |
|
| dc.identifier.uri |
https://repositorio.ufsc.br/handle/123456789/275090 |
|
| dc.description |
Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Ciência da Computação, Florianópolis, 2026. |
|
| dc.description.abstract |
O ensino de computação na educação básica utiliza frequentemente linguagens visuais como o App Inventor, demandando mecanismos eficazes para aferir a qualidade dos códigos produzidos pelos estudantes. Esta pesquisa objetiva desenvolver e avaliar o Modelo de Avaliação de Code Smells (MACS) para diagnosticar problemas estruturais e de design em projetos criados nesta plataforma. A metodologia adotada, de natureza aplicada e tecnológica, fundamenta-se em um Mapeamento Sistemático da Literatura para selecionar os defeitos mais relevantes no contexto educacional. O estudo implementa uma abordagem híbrida de análise estática automatizada, combinando a extração da Árvore Sintática Abstrata (AST) e expressões XPath, para detetar seis tipos específicos de code smells: Duplicated Code, Dead Code, Long Method, Feature Envy, Spaghetti Code e Long Parameter List. Para a avaliação do modelo, a pesquisa realiza um experimento empírico com uma amostra representativa de 383 projetos reais. Os resultados estatísticos confirmam a robustez e a consistência interna do instrumento, apresentando coeficientes de confiabilidade elevados, com Alfa de Cronbach de 0,83 e Ómega de McDonald de 0,87. A análise descritiva aponta a duplicação de código como o problema mais prevalente e de maior impacto negativo na qualidade técnica dos projetos estudantis. Conclui-se que o modelo proposto oferece uma métrica consistente e pedagogicamente adequada, traduzindo dados técnicos em um sistema de pontuação calibrado que viabiliza o feedback formativo. O artefato desenvolvido estabelece as bases técnicas para a futura integração de análise automática de qualidade de código à plataforma educacional CodeMaster, contribuindo para a formação de melhores hábitos de programação. |
|
| dc.description.abstract |
Abstract: Computing education in basic education frequently employs visual languages such as App Inventor, demanding effective mechanisms to assess the quality of code produced by students. This research aims to develop and evaluate the Code Smells Assessment Model (MACS) to diagnose structural and design problems in projects created on this platform. The adopted methodology, of an applied and technological nature, is based on a Systematic Literature Mapping to select the most relevant defects in the educational context. The study implements a hybrid automated static analysis approach, combining Abstract Syntax Tree (AST) extraction and XPath expressions, to detect six specific types of code smells: Duplicated Code, Dead Code, Long Method, Feature Envy, Spaghetti Code, and Long Parameter List. For model evaluation, the research conducts an empirical experiment with a representative sample of 383 real projects. Statistical results confirm the instrument's robustness and internal consistency, presenting high reliability coefficients, with a Cronbach's Alpha of 0.83 and McDonald's Omega of 0.87. Descriptive analysis identifies code duplication as the most prevalent problem with the highest negative impact on the technical quality of student projects. It is concluded that the proposed model offers a consistent and pedagogically appropriate metric, translating technical data into a calibrated scoring system that enables formative feedback. The developed artifact establishes the technical foundations for the future integration of automated code quality analysis into the CodeMaster educational platform, contributing to the formation of better programming habits. |
en |
| dc.format.extent |
121 p.| il., tabs. |
|
| dc.language.iso |
por |
|
| dc.subject.classification |
Computação |
|
| dc.subject.classification |
Tecnologia educacional |
|
| dc.subject.classification |
Programação (Computadores) |
|
| dc.title |
Um modelo de avaliação de code smells em aplicativos para apoio ao ensino de computação |
|
| dc.type |
Dissertação (Mestrado) |
|