Copy the page URI to the clipboard
Capiluppi, A. and Fernandez-Ramil, J.
(2007).
DOI: https://doi.org/10.1109/ICSM.2007.4362632
URL: http://icsm07.ai.univ-paris8.fr/
Abstract
Accumulated changes on a software system are not uniformly distributed: some elements are changed much more often than others. For optimal impact, the always limited time and effort for complexity control work, the anti-regressive work, should be applied to the elements of the system which are complex. If two elements are similarly complex then we should improve the one that attract more changes. Based on this observation, we propose a maintenance guidance model (MGM) which is tested against real-world data in order to study how developers handle the complexity of their systems. MGM takes into account several dimensions of complexity: size, structural complexity and coupling. The results show that maintainers of the eight studied open source systems tend, in general, to prioritize their anti-regressive work in line with the predictions given by our MGM, even though, divergences also exist. MGM offers a history-focused alternative to existing approaches to the identification of elements for anti-regressive work, most of which use certain static code characteristics only.