IDE plugin for metrics collection from java code

dc.contributor.advisorReis, José Pereira dos
dc.contributor.advisorAbreu, Fernando Brito e
dc.contributor.authorOliveira, Aleff Rodrigues Mendes de
dc.date.accessioned2026-06-09T12:06:06Z
dc.date.embargo2028-11-11
dc.date.issued2025-11-12
dc.date.submitted2025-09
dc.description.abstractSoftware metrics are essential for assessing and improving software quality. They provide quantitative indicators that support decision‐making processes throughout the software development lifecycle, particularly in detecting maintainability issues and code smells. Although widely adopted tools such as CodeMR, PMD, Metrics by Sauer, and SonarQube offer extensive metric collection capabilities, they often lack flexibility for defining custom metrics and explaining the logic behind their measurements. This dissertation presents the design and implementation of an Eclipse IDE plugin for extracting, visualizing, and customizing Java software metrics. The proposed solution integrates the FLAME Java metamodel and the USE model checker, enabling developers to define their own metrics using Object Constraint Language (OCL). This approach allows for a higher degree of adaptability to project‐specific quality models and standards, including ISO/IEC 5055:2021. The research followed a Design Science Research methodology, including literature review, prototype design, system implementation, and validation through comparative analysis with existing tools. Results show that the developed plugin matches the accuracy of established tools for standard metrics while providing superior flexibility and transparency for user‐defined metrics. The main contributions of this work are: (i) a modular and extensible architecture for IDE‐based metric analysis, (ii) the integration of OCL for dynamic metric definition, and (iii) empirical validation demonstrating the plugin’s accuracy and adaptability. The proposed solution enhances developers’ ability to monitor, customize, and act upon software quality indicators directly within their development environment.
dc.description.abstractAs métricas de software são fundamentais para avaliar e melhorar a qualidade de sistemas, fornecendo indicadores quantitativos que apoiam a tomada de decisão ao longo de todo o ciclo de vida do desenvolvimento. Têm especial relevância na detecção de problemas de manutenibilidade e de code smells. Apesar de ferramentas amplamente utilizadas como CodeMR, PMD, Metrics by Sauer e SonarQube oferecerem amplas funcionalidades para recolha de métricas, frequentemente carecem de flexibilidade para definição de métricas personalizadas e de transparência na lógica utilizada para os cálculos. Esta dissertação apresenta o projeto e a implementação de um plugin para a IDE Eclipse, destinado à extração, visualização e personalização de métricas de software em Java. A solução proposta integra o metamodelo Java FLAME e o interpretador USE, permitindo aos programadores definir as suas próprias métricas através da Object Constraint Language (OCL). Esta abordagem possibilita um elevado grau de adaptação a modelos e normas de qualidade específicos de cada projeto, incluindo a ISO/IEC 5055:2021. A investigação seguiu a metodologia de Design Science Research, abrangendo revisão da literatura, conceção de protótipo, implementação do sistema e validação através de análise comparativa com ferramentas existentes. Os resultados demonstram que o plugin desenvolvido apresenta precisão equivalente à de ferramentas consolidadas para métricas padrão, oferecendo simultaneamente maior flexibilidade e transparência na definição de métricas personalizadas. As principais contribuições deste trabalho são: (i) uma arquitetura modular e extensível para análise de métricas diretamente na IDE, (ii) a integração de OCL para definição dinâmica de métricas e (iii) validação empírica comprovando a precisão e adaptabilidade da solução. A proposta aumenta a capacidade dos programadores para monitorizar, personalizar e agir sobre indicadores de qualidade de software no próprio ambiente de desenvolvimento.
dc.identifier.citationOliveira, A. R. M. de (2025). IDE plugin for metrics collection from java code [Dissertação de mestrado, Iscte - Instituto Universitário de Lisboa]. Repositório Iscte. http://hdl.handle.net/10071/37415
dc.identifier.tid204080924
dc.identifier.urihttps://hdl.handle.net/10071/37415
dc.language.isoen
dc.peerreviewedyes
dc.rightsrestricted access
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/
dc.subjectSoftware metrics
dc.subjectEclipse plugin
dc.subjectObject Constraint Language (OCL)
dc.subjectCode smells
dc.subjectSoftware quality
dc.subjectISO/IEC 5055:2021
dc.subjectPesquisa em design cientifico -- Design Science Research DSR
dc.subjectMétricas de software
dc.subjectPlugin Eclipse
dc.subjectQualidade de software
dc.subject.fosEngenharia e Tecnologia::Outras Engenharias e Tecnologias
dc.titleIDE plugin for metrics collection from java code
dc.typemasterThesispt-PT
dspace.entity.typePublication
iscte.subject.odsEducação de qualidade
thesis.degree.departmentDepartamento de Ciências e Tecnologias da Informação
thesis.degree.nameMestrado em Engenharia Informática

Ficheiros

Pacote original

A mostrar 1 - 1 de 1
A carregar...
Nome:
master_aleff_mendes_oliveira.pdf
Tamanho:
2.68 MB
Formato:
Adobe Portable Document Format