Exploring the Relationship between Cumulative Change and Complexity in an Open Source System

  • Authors:
  • Andrea Capiluppi;Alvaro E. Faria;Juan F. Ramil

  • Affiliations:
  • Politecnico di Torino;Open University;Open University

  • Venue:
  • CSMR '05 Proceedings of the Ninth European Conference on Software Maintenance and Reengineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper explores the relationship between cumulative change and complexity in an evolving Open Source system. The study involves measurements at the function and file level. In order to measure cumulative change, the approach used a metric termed release-touches, which counts the number of releases for which a given file has been modified. Based on the value of this metric, we ranked the files and used the ranking in order to identify two groups, the more stable and the less stable parts of the source code. Complexity was measured using two derivatives of the McCabe index. Histograms and distributions were visually and statistically analyzed. The results empirically suggest that at the file level there are correlations between high cumulative change, large size and high complexity. This paper provides an approach for identifying with functions need to be refactored first if one wishes to reduce the complexity of the system.