TY - GEN
T1 - Case study on semantic clone detection based on code behavior
AU - Priyambadha, Bayu
AU - Rochimah, Siti
N1 - Publisher Copyright:
© 2014 IEEE.
PY - 2014/3/17
Y1 - 2014/3/17
N2 - The activities of copy and paste fragments of code from a source code into the other source code, with or without modification, are known as the code cloning. The process is often done by software developers because it's easier than generate code manually. In the other hand, this behavior leads to the increasing of effort to maintenance the code. Research on detecting the presence of cloning has been done. Detection of cloned semantically is a detection method that still needs a deepening. One of the detection methods of semantic cloning is based on the behavior of the code. The code behavior detected by looking at input, output and the effects of the method. Methods with the same input, output and effect will show that the function of the method is the same. However, the detection method based on input, output and effect could not be used in a void method and method without parameters. There is no explanations about input, output and effect in that kind of methods. In this case, the solution is needed to find the input, output and the effects of the method. This research is a concern on how to find an input, output and effect in void and non-parameterized method. Detection of input, output and effects done using PDG (Program Dependence Graph). The result is used to reconstruct void and non-parameterizes method. Trial is performed on each method (without exception) using random input data to get the behavior methods. Trial is done using small size source code from jDraw. From the result of the trial process, can be concluded that semantic clone detection using the methods behavior approach is sound very promising. This method can also detect type 1, type 2 and type 3 clone beside the semantic clone itself with an accuracy about 89%.
AB - The activities of copy and paste fragments of code from a source code into the other source code, with or without modification, are known as the code cloning. The process is often done by software developers because it's easier than generate code manually. In the other hand, this behavior leads to the increasing of effort to maintenance the code. Research on detecting the presence of cloning has been done. Detection of cloned semantically is a detection method that still needs a deepening. One of the detection methods of semantic cloning is based on the behavior of the code. The code behavior detected by looking at input, output and the effects of the method. Methods with the same input, output and effect will show that the function of the method is the same. However, the detection method based on input, output and effect could not be used in a void method and method without parameters. There is no explanations about input, output and effect in that kind of methods. In this case, the solution is needed to find the input, output and the effects of the method. This research is a concern on how to find an input, output and effect in void and non-parameterized method. Detection of input, output and effects done using PDG (Program Dependence Graph). The result is used to reconstruct void and non-parameterizes method. Trial is performed on each method (without exception) using random input data to get the behavior methods. Trial is done using small size source code from jDraw. From the result of the trial process, can be concluded that semantic clone detection using the methods behavior approach is sound very promising. This method can also detect type 1, type 2 and type 3 clone beside the semantic clone itself with an accuracy about 89%.
KW - behavioral cloning
KW - clone detection
KW - semantic clone
KW - software maintenance
UR - http://www.scopus.com/inward/record.url?scp=84946691432&partnerID=8YFLogxK
U2 - 10.1109/ICODSE.2014.7062689
DO - 10.1109/ICODSE.2014.7062689
M3 - Conference contribution
AN - SCOPUS:84946691432
T3 - Proceedings of 2014 International Conference on Data and Software Engineering, ICODSE 2014
BT - Proceedings of 2014 International Conference on Data and Software Engineering, ICODSE 2014
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 2014 International Conference on Data and Software Engineering, ICODSE 2014
Y2 - 26 November 2014 through 27 November 2014
ER -