File(s) under permanent embargo

The inevitable stability of software change

conference contribution
posted on 01.01.2007, 00:00 authored by Rajesh VasaRajesh Vasa, Jean-Guy Schneider, O Nierstrasz
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.

History

Event

IEEE Computer Society. Conference (23rd : 2007 : Paris, France)

Series

IEEE Computer Society Conference

Pagination

4 - 13

Publisher

Institute of Electrical and Electronics Engineers

Location

Paris, France

Place of publication

Piscataway, N.J.

Start date

02/10/2007

End date

05/10/2007

ISBN-13

9781424412563

ISBN-10

1424412560

Language

eng

Publication classification

E1.1 Full written paper - refereed

Copyright notice

2007, IEEE

Editor/Contributor(s)

[Unknown]

Title of proceedings

ICSM 2007 : Proceedings of the 2007 IEEE International Conference on Software Maintenance