Background. Understandability is an important characteristic of software code that can largely impact the effectiveness and cost of software maintenance. Aim. We investigate if and to what extent the characteristics of source code captured by static metrics affect understandability. Method. We replicated an empirical study which provided some insights and highlighted some code characteristics that seem to affect understandability. The replication took place in a different country and was conducted with a different set of developers, i.e., Bachelor’s students, instead of Master’s students. The same source code was used in both studies. Results. The data collected in the replication do not corroborate the results of the initial study, since no correlation between code measures and code understanding could be found. The reason seems to be that the initial study involved developers with very similar skills and experience, while the replication involved developers with quite different skills. Conclusions. Code understanding appears to be affected much more by developers’ skills than by code characteristics. The extent to which code understanding depends on code characteristics is observable only for a homogeneous population of developers. Our results can be useful for software practioners and for future software understandability studies.
A Replicated Study on Factors Affecting Software Understandability
L. Lavazza
;S. Morasca
;G. Rotoloni
2025-01-01
Abstract
Background. Understandability is an important characteristic of software code that can largely impact the effectiveness and cost of software maintenance. Aim. We investigate if and to what extent the characteristics of source code captured by static metrics affect understandability. Method. We replicated an empirical study which provided some insights and highlighted some code characteristics that seem to affect understandability. The replication took place in a different country and was conducted with a different set of developers, i.e., Bachelor’s students, instead of Master’s students. The same source code was used in both studies. Results. The data collected in the replication do not corroborate the results of the initial study, since no correlation between code measures and code understanding could be found. The reason seems to be that the initial study involved developers with very similar skills and experience, while the replication involved developers with quite different skills. Conclusions. Code understanding appears to be affected much more by developers’ skills than by code characteristics. The extent to which code understanding depends on code characteristics is observable only for a homogeneous population of developers. Our results can be useful for software practioners and for future software understandability studies.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.



