IDE plugin for metrics collection from java code
| dc.contributor.advisor | Reis, José Pereira dos | |
| dc.contributor.advisor | Abreu, Fernando Brito e | |
| dc.contributor.author | Oliveira, Aleff Rodrigues Mendes de | |
| dc.date.accessioned | 2026-06-09T12:06:06Z | |
| dc.date.embargo | 2028-11-11 | |
| dc.date.issued | 2025-11-12 | |
| dc.date.submitted | 2025-09 | |
| dc.description.abstract | Software 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.abstract | As 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.citation | Oliveira, 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.tid | 204080924 | |
| dc.identifier.uri | https://hdl.handle.net/10071/37415 | |
| dc.language.iso | en | |
| dc.peerreviewed | yes | |
| dc.rights | restricted access | |
| dc.rights.uri | http://creativecommons.org/licenses/by/4.0/ | |
| dc.subject | Software metrics | |
| dc.subject | Eclipse plugin | |
| dc.subject | Object Constraint Language (OCL) | |
| dc.subject | Code smells | |
| dc.subject | Software quality | |
| dc.subject | ISO/IEC 5055:2021 | |
| dc.subject | Pesquisa em design cientifico -- Design Science Research DSR | |
| dc.subject | Métricas de software | |
| dc.subject | Plugin Eclipse | |
| dc.subject | Qualidade de software | |
| dc.subject.fos | Engenharia e Tecnologia::Outras Engenharias e Tecnologias | |
| dc.title | IDE plugin for metrics collection from java code | |
| dc.type | masterThesis | pt-PT |
| dspace.entity.type | Publication | |
| iscte.subject.ods | Educação de qualidade | |
| thesis.degree.department | Departamento de Ciências e Tecnologias da Informação | |
| thesis.degree.name | Mestrado em Engenharia Informática |
Ficheiros
Pacote original
1 - 1 de 1
A carregar...
- Nome:
- master_aleff_mendes_oliveira.pdf
- Tamanho:
- 2.68 MB
- Formato:
- Adobe Portable Document Format
