Use este identificador para citar ou linkar para este item: http://repositorio.roca.utfpr.edu.br/jspui/handle/1/8291
Título: Uma ferramenta para monitoramento da entropia de mudança e sua relação com métricas de software
Título(s) alternativo(s): A tool for monitoring the change entropy and its relationship with software metrics
Autor(es): Umemura, Tiago Kenji
Orientador(es): Wiese, Igor Scaliante
Palavras-chave: Entropia (Teoria da Informação)
Medição de software
Software - Desenvolvimento
Entropy (Information theory)
Software measurement
Computer software - Development
Data do documento: 27-Nov-2017
Editor: Universidade Tecnológica Federal do Paraná
Câmpus: Campo Mourao
Referência: UMEMURA, Tiago Kenji. Uma ferramenta para monitoramento da entropia de mudança e sua relação com métricas de software. 2017. 41 f. Trabalho de Conclusão de Curso (Graduação) - Universidade Tecnológica Federal do Paraná, Campo Mourão, 2017.
Resumo: Contexto: A entropia de mudança é uma medida para indicar o quanto um software sofre alterações em um determinado período de tempo. Estudos mostraram que o aumento da entropia pode causar desordem no processo de desenvolvimento podendo levar ao aumento no número de defeitos do software. Dado esse contexto, não existem ferramentas que ofereçam suporte para monitoramento da relação entre entropia e diferentes métricas de software, como por exemplo, número de autores que modificaram um arquivo, número de commits, authorship e ownership. Objetivo: Implementar e avaliar uma ferramenta que possibilite o monitoramento da entropia e das métricas de softwares de projetos armazenados no Github, para ajudar os desenvolvedores no gerenciamento de projeto. Ferramenta: A ferramenta é dividida em coleta de dados, cálculo da entropia e das métricas, cálculo da correlação de Spearman e visualização de dados. Na coleta de dados, os dados são extraídos por meio da API Github e em seguida é realizado o cálculo da entropia, métricas de software e da correlação Spearman entre a entropia e as métricas. Na etapa de visualização de dados, os valores da entropia de mudança e das métricas de software são exibidos utilizando gráficos de Treemap, Heat Map e séries temporais. A ferramenta foi avaliada por meio da análise das visualizações geradas sobre o histórico do projeto Angular. Resultados: Na análise da ferramenta, foi possível localizar arquivos mais relevantes do projeto, medindo o valor de entropia de mudança e gerando a visualização de Treemaps em diferentes períodos. Calculando a correlação de Spearman e analisando a visualização de Heat Map em diferentes períodos foi possível observar quais métricas apresentam maior nível de correlação com o valor de entropia dos arquivos. Conclusões: Foi concluído que a ferramenta pode ser utilizada para encontrar os arquivos que merecem maior atenção dos desenvolvedores no projeto, devido ao valor alto da entropia e das métricas correlaciondas a entropia.
Abstract: Context: The change entropy is a measure to indicate how much a software suffers changes over a certain period of time. Researches have shown that the increase in entropy can cause disorder in the development process and may lead to an increase in number of software defects. Given this context, there are no tools support for monitoring the relationship between entropy and different software metrics, such as number of authors who have modified a file, number of commits, authorship and code ownership. Objective: Implement and evaluate a tool that enables the monitoring of entropy and software metrics from projects stored on Github to help developers in project management. Tool: The tool is divided into data extraction, calculation of entropy and metrics, calculation of the correlation of Spearman and data visualization. In data extraction, the data is extracted from the Github API and then the entropy and software metrics are calculated. Then Spearman correlation between entropy and metrics are calculated. In the data visualization step, the change entropy values and the software metrics will be displayed using Treemap, Heat Map and time series. The tool was evaluated by analyzing the views generated from the Angular project data, available on Github. Results: In the analysis of the tool it was possible to find more relevant files of the project, measuring the value of change entropy and generating the visualization of Treemap in different periods of time. Calculating the correlation of Spearman and analyzing the Heatmap view in different periods it was possible to observe which metrics present a higher level of correlation with the entropy value of the files. Conclusions: It was concluded that the tool can be used to find the files which deserve more attention from the developers in the project, due to the high entropy value and metrics correlated with entropy.
URI: http://repositorio.roca.utfpr.edu.br/jspui/handle/1/8291
Aparece nas coleções:CM - Ciência da Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
entropiamudancametricassoftware.pdf1,41 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.