Examining the Effects of Global Data Usage on Software Maintainability

Authors: Jason W. A. Selby Fraser P. Ruffell Mark Giesbrecht Michael W. Godfrey

Venue: SANER   14th Working Conference on Reverse Engineering (WCRE 2007), pp. 60-69, 2007

Year: 2007

Abstract: As the useful life expectancy of software continues to increase, the task of maintaining the source code has become the dominant phase of the software life-cycle. In order to improve the ability of software to age and successfully evolve over time, it is important to identify system design and programming practices which may result in increasing the difficulty of maintaining the source code. This study attempts to correlate the use of global data to the maintainability of several widely deployed, large scale software projects as they evolve over time. Two measures are proposed to quantify the maintenance effort of a project. The first measure compares the number of CVS revisions for all source files in a release to the number of revisions applied to the files where the usage of global data is most prevalent. A second degree of change is characterized by contrasting the amount of source code that was changed overall with the changes made to those source files which contain the majority of the references to global data. We observed a statistically significant positive correlation between the number of file revisions to global variable references and lines of code changed to global variable references. In all cases the correlation between the number of revisions and global variable references was stronger. This provides evidence that global variable usage negatively impacts software maintainability by increasing both the number and the extent of the changes required to accomplish a maintenance phase task.

BibTeX:

@inproceedings{jasonw.a.selby2007eteogduosm,
    author = "Jason W. A. Selby and Fraser P. Ruffell and Mark Giesbrecht and Michael W. Godfrey",
    title = "Examining the Effects of Global Data Usage on Software Maintainability",
    year = "2007",
    pages = "60-69",
    booktitle = "Proceedings of 14th Working Conference on Reverse Engineering (WCRE 2007)"
}

Plain Text:

Jason W. A. Selby, Fraser P. Ruffell, Mark Giesbrecht, and Michael W. Godfrey, "Examining the Effects of Global Data Usage on Software Maintainability," 14th Working Conference on Reverse Engineering (WCRE 2007), pp. 60-69