Title :
Does the "Refactor to Understand" reverse engineering pattern improve program comprehension?
Author :
Du Bois, Bart ; Demeyer, Serge ; Verelst, Jan
Author_Institution :
Lab. on ReEng., Antwerpen Univ., Belgium
Abstract :
Program comprehension is a fundamental requirement for all but the most trivial maintenance activities. Previous research has demonstrated key principles for improving comprehension. Among others, these consist of the introduction of beacons as indexes into knowledge, and the chunking of low-level structures into higher-level abstractions. These principles are naturally reflected in the reverse engineering pattern Refactor to Understand, which uses incremental renaming and extracting of program elements as the means to decipher cryptic code. In this paper, we discuss a controlled experiment to explore differences in program comprehension between the application of Refactor to Understand and the traditional Read to Understand pattern. Our results support added value of Refactor to Understand regarding specific aspects of program comprehension and specific types of source code. These findings illustrate the need for further experiments to provide clear guidelines on the application of refactorings for improving program comprehension.
Keywords :
reverse engineering; software maintenance; software process improvement; Read to Understand pattern; Refactor to Understand reverse engineering pattern; incremental renaming; program comprehension improvement; program element extraction; source code; Computer science; Delay; Guidelines; Management information systems; Pattern analysis; Reverse engineering; Software maintenance; Software testing; System testing; Time factors;
Conference_Titel :
Software Maintenance and Reengineering, 2005. CSMR 2005. Ninth European Conference on
Print_ISBN :
0-7695-2304-8
DOI :
10.1109/CSMR.2005.25