Title
The Inevitable Stability of Software Change
Abstract
Real software systems change and become more complex over time. But which parts change and which parts remain stable? Common wisdom, for example, states that in a well-designed object-oriented system, the more popular a class is, the less likely it is to change from one version to the next, since changes to this class are likely to impact its clients. We have studied consecutive releases of several public domain, object-oriented software systems and analyzed a number of measures indicative of size, popularity, and complexity of classes and interfaces. As it turns out, the distributions of these measures are remarkably stable as an application evolves. The distribution of class size and complexity retains its shape over time. Relatively little code is modified over time. Classes that tend to be modified, however, are also the more popular ones, that is, those with greater Fan-In. In general, the more "complex" a class or interface becomes, the more likely it is to change from one version to the next.
Year
DOI
Venue
2007
10.1109/ICSM.2007.4362613
2007 IEEE International Conference on Software Maintenance
Keywords
Field
DocType
software change,software systems change,object-oriented software system,public domain software system,software evolution
Class size,Systems engineering,Computer science,Software prototyping,Software system,Software,Software maintenance,Software evolution,Application software,Software measurement
Conference
ISSN
ISBN
Citations 
1063-6773
978-1-4244-1255-6
24
PageRank 
References 
Authors
0.94
14
3
Name
Order
Citations
PageRank
Rajesh Vasa121823.64
Jean-Guy Schneider231733.93
Oscar Nierstrasz32404346.86