Mineração de repositórios para avaliar a influência das mudanças de código ao longo do tempo - Paula, Leonardo Scarmato Jorge de [UNESP] (Universidade Estadual Paulista (Unesp), 2024)
Sempre em constante evolução, a tecnologia utiliza de métricas expostas em códigos fonte, tomando por base soluções e funções que facilitem o desenvolvimento e a manutenção do software. Tendo essa análise como base, surge a mineração de repositórios, uma técnica valiosa para a coleta de grandes quantidades de dados e informações a partir de um repositório. Possibilitando fundamentar decisões estratégicas, análises micro que aceleram a manutenção e diminuem o retrabalho, ou análises macro, com perspectivas abrangentes que podem direcionar o software e seu desenvolvimento. Este trabalho analisou dez projetos Python amplamente utilizados, abrangendo bibliotecas e frameworks de diversas áreas, como aprendizado de máquina, processamento de imagens e desenvolvimento web. A análise centrou-se nas alterações realizadas em métodos e arquivos ao longo de três períodos, com o objetivo de identificar padrões de mudança e relacioná-los à necessidade de manutenção direcionada. Por meio de métricas quantitativas e comparativas, foi possível analisar qual porcentagem do código que muda ao longo do tempo, e quais são os projetos com maior ou menor concentração de alterações, além de fornecer subsídios para estudos futuros.

Constantly evolving, technology relies on metrics derived from source code, leveraging solutions and functions that facilitate software development and maintenance. Based on this analysis, software repository mining emerges as a valuable technique for collecting and interpreting large amounts of data and information from repositories. This approach enables strategic decision-making, micro-level analyses that accelerate maintenance and reduce rework, or macro-level perspectives that can guide software development and evolution. This study analyzed ten widely used Python projects, including libraries and frameworks from diverse fields such as machine learning, image processing, and web development. The analysis focused on changes made to methods and files over three distinct periods, aiming to identify change patterns and relate them to the need for targeted maintenance. Through quantitative and comparative metrics, the study assessed the percentage of code altered over time and identified projects with higher or lower concentrations of changes, providing insights for future research and development practices.
Repository mining to assess the influence of code changes over time
Keywords: Mineração de repositórios; Bibliotecas; Qualidade; Ciência de dados; Repository mining; Data science