loading...
Change Impact Analysis for Generic Libraries
Philadelphia, Pennsylvania September 24-September 27
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ICSM.2006.1722nd IEEE International Conference on ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Marcin Zalewski, Chalmers University of Technology Goteborg, Sweden
Sibylle Schupp, Chalmers University of Technology Goteborg, Sweden
Since the Standard Template Library (STL), generic libraries in C++ rely on concepts to precisely specify the requirements of generic algorithms (function templates) on their parameters (template arguments). Modifying the definition of a concept even slightly, can have a potentially large impact on the (interfaces of the) entire library. In particular the non-local effects of a change, however, make its impact difficult to determine by hand. In this paper we propose a conceptual change impact analysis (CCIA), which determines the impact of changes of the conceptual specification of a generic library. The analysis is organized in a pipe-and-filter manner, where the first stage finds any kind of impact, the second stage various specific kinds of impact. Both stages describe reachability algorithms, which operate on a conceptual dependence graph. In a case study, we apply CCIA to a new proposal for STL iterator concepts, which is under review by the C++ standardization committee. The analysis shows a number of unexpected incompatibilities and, for certain STL algorithms, a loss of genericity.
Citation:
Marcin Zalewski, Sibylle Schupp, "Change Impact Analysis for Generic Libraries," icsm, pp.35-44, 22nd IEEE International Conference on Software Maintenance (ICSM'06), 2006
Usage of this product signifies your acceptance of the Terms of Use.