Title :
Discovering Comprehension Pitfalls in Class Hierarchies
Author :
Mihancea, Petru Florin ; Marinescu, Radu
Author_Institution :
LOOSE Res. Group, Politeh. Univ. of Timisoara, Timisoara
Abstract :
Despite many advances in program comprehension, polymorphism and inheritance are still the cause of many misunderstandings in object-oriented code. In this paper, we present a suite of such concrete, recurrent patterns where particular ways of using inheritance and polymorphism can easily mislead developers and maintainers during software understanding activities. We define these as comprehension pitfalls. Furthermore, the paper describes a metric-based approach aimed to automatically detect such situations in code. The experimental results presented in this paper, based on three medium-sized systems, indicate that the identified comprehension pitfalls and the approach used to detect them are a promising support for maintenance.
Keywords :
object-oriented methods; reverse engineering; software maintenance; class hierarchies; comprehension pitfalls; medium-sized systems; object-oriented code; program comprehension; program understanding; recurrent patterns; software understanding activities; Application software; Computer bugs; Concrete; Costs; Electronic mail; Maintenance engineering; Software engineering; Software maintenance; Software systems; Target tracking; inheritance; metrics; polymorphism; program understanding;
Conference_Titel :
Software Maintenance and Reengineering, 2009. CSMR '09. 13th European Conference on
Conference_Location :
Kaiserslautern
Print_ISBN :
978-0-7695-3589-0
DOI :
10.1109/CSMR.2009.31