Implementation of Analytical Hierarchy Process in Detecting Structural Code Clones - Aktas, Mehmet S.; Kapdan, Mustafa (SPRINGER INTERNATIONAL PUBLISHING AG, 2017)
The nature and the size of data plays an important rule at the identification process of similar objects (clones). The type of utilized similarity measures is also an important factor. The nature of data and selecting the right identification algorithm appropriate to type of data should be examined thoroughly when a clone identification technique is applied. This study suggests a new methodology in software systems for minimization/prevention of code cloning. Its main contribution is to propose an Analytical Hierarchy Process based methodology at detection of code clones in object-oriented software systems, in which the software is represented by means of software metrics data at class level. The suggested clone detection model is able to select the most suitable code clone candidates by considering different correlation and distance metrics to identify code clones. To facilitate the testing and the usability of the suggested clone detection model, the system is used for detection of structural code clone. The methodology is validated by comparison with results obtained by human judges as well as by comparison with a plain structural code clone identification approach. The evaluation of the methodology is carried out in terms of accuracy and indicates promising results.
Keywords: Code clone; Analytical hierarchy process; Structural code clone; Soft computing; Software metrics; Computer Science