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 maj...
Jason W. A. Selby, Fraser P. Ruffell, Mark Giesbre