Empirical analysis of the relationship between CC and SLOC in a large corpus of Java methods - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Communication Dans Un Congrès Année : 2014

Empirical analysis of the relationship between CC and SLOC in a large corpus of Java methods

Résumé

Measuring the internal quality of source code is one of the traditional goals of making software development into an engineering discipline. Cyclomatic complexity (CC) is an often used source code quality metric, next to source lines of code (SLOC). However, the use of the CC metric is challenged by the repeated claim that CC is redundant with respect to SLOC because of strong linear correlation. We conducted an extensive literature study of the CC/SLOC correlation results. Next, we tested correlation on large Java (17.6 M methods) and C (6.3 M functions) corpora. Our results show that linear correlation between SLOC and CC is only moderate as a result of increasingly high variance. We further observe that aggregating CC and SLOC as well as performing a power transform improves the correlation. Our conclusion is that the observed linear correlation between CC and SLOC of Java methods or C functions is not strong enough to conclude that CC is redundant with SLOC. This conclusion contradicts earlier claims from literature but concurs with the widely accepted practice of measuring of CC next to SLOC

Domaines

Autre [cs.OH]
Fichier non déposé

Dates et versions

hal-01110843 , version 1 (29-01-2015)

Identifiants

  • HAL Id : hal-01110843 , version 1

Citer

Davy Landman, Alexander Serebrenik, Jurgen Vinju. Empirical analysis of the relationship between CC and SLOC in a large corpus of Java methods. IEEE International Conference on Software Maintenance and Evolution 2014, Sep 2014, Victoria, Canada. pp.221 - 230. ⟨hal-01110843⟩
84 Consultations
0 Téléchargements

Partager

Gmail Facebook X LinkedIn More