loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Sixth International Workshop on Principles of Software Evolution (IWPSE'03)
How History Justifies System Architecture (or Not)
Helsinki, Finland
September 01-September 02
ISBN: 0-7695-1903-2
Thomas Zimmermann, Saarland University
Stephan Diehl, Saarland University
Andreas Zeller, Saarland University

The revision history of a software system conveys important information about how and why the system evolved in time. The revision history can also tell us which parts of the system are coupled by common changes: "Whenever the database schema was changed, the sqlquery() method was altered, too." This "evolutionary" coupling can be compared with the coupling as imposed by the system architecture; differences indicate anomalies which may be subject to restructuring.

Our ROSE prototype analyzes fine-grained coupling between software entities as indicated by common changes. It turns out that common changes are a good indicator for modularity, that evolutionary coupling should be determined between syntactical entities (rather than files or modules), and that common changes can indicate coupling between software entities and non-program artifacts that is unavailable to the analysis of a single version.

Citation:
Thomas Zimmermann, Stephan Diehl, Andreas Zeller, "How History Justifies System Architecture (or Not)," iwpse, pp.73, Sixth International Workshop on Principles of Software Evolution (IWPSE'03), 2003
Usage of this product signifies your acceptance of the Terms of Use.