Issue No. 10 - October (2005 vol. 31)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TSE.2005.113
In systems developed without aspect-oriented programming, code implementing a crosscutting concern may be spread over many different parts of a system. Identifying such code automatically could be of great help during maintenance of the system. First of all, it allows a developer to more easily find the places in the code that must be changed when the concern changes and, thus, makes such changes less time consuming and less prone to errors. Second, it allows the code to be refactored to an aspect-oriented solution, thereby improving its modularity. In this paper, we evaluate the suitability of clone detection as a technique for the identification of crosscutting concerns. To that end, we manually identify five specific crosscutting concerns in an industrial C system and analyze to what extent clone detection is capable of finding them. We consider our results as a stepping stone toward an automated "aspect miner” based on clone detection.
Index Terms- Clone detection, reverse engineering, aspect-oriented programming, crosscutting concerns, aspect mining.
P. K. Linos, B. Korel and M. Harman, "Guest Editorial: Special Issue on Software Maintenance and Evolution," in IEEE Transactions on Software Engineering, vol. 31, no. , pp. 801-803, 2005.