DocumentCode :
2063437
Title :
How history justifies system architecture (or not)
Author :
Zimmermann, Thomas ; Diehl, Stephan ; Zeller, Andreas
Author_Institution :
Dept. of Comput. Sci., Saarland Univ., Germany
fYear :
2003
fDate :
1-2 Sept. 2003
Firstpage :
73
Lastpage :
83
Abstract :
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 nonprogram artifacts that is unavailable to the analysis of a single version.
Keywords :
SQL; program diagnostics; query processing; software architecture; software prototyping; ROSE prototype; database schema; evolutionary coupling; fine-grained coupling; nonprogram artifacts; revision history; software entities; software system; sqlquery() method; syntactical entities; system architecture; Computer architecture; Computer science; History; Program processors; Prototypes; Software design; Software prototyping; Software systems; Visual databases; Visualization;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Evolution, 2003. Proceedings. Sixth International Workshop on Principles of
Print_ISBN :
0-7695-1903-2
Type :
conf
DOI :
10.1109/IWPSE.2003.1231213
Filename :
1231213
Link To Document :
بازگشت