As systems evolve, they become harder to understand because the implementation of concepts (e.g. business rules) becomes less coherent. To preserve source code comprehensibility, ...
In a typical COBOL program, the data division consists of 50% of the lines of code. Automatic type inference can help to understand the large collections of variable declarations ...
The shapes of forests of inheritance trees can affect the amount of code reuse in an object-oriented system. Designers can benefit from knowing how structuring decisions affect r...
XP is a lightweight process that provides principles for guiding projects and relies on the participants for its success. However, despite these guidelines, projects can be unsucc...
Alan Gray, Andrew Jackson, Ioanna Stamouli, Shiu L...
This paper presents the results of an exploratory experiment investigating the use of program metrics to predict reachability graph size, reachability graph generation time, and d...