Procedural x OO - A Corporative Experiment on Source Code Clone Mining

José Jorge Barreto Torres, Methanias C. R. Junior, Mário André de Freitas Farias

2017

Abstract

Open Source Software (OSS) repositories are widely used to execute studies around code clone detection, mostly inside the public scenario. However, corporative code Repositories have their content restricted and protected from access by developers who are not part of the company. Besides, there are a lot of questions regarding paradigm efficiency and its relation to clone manifestation. This article presents an experiment performed on systems developed in a large private education company, to observe and compare the incidence of cloned code between Object Oriented and Procedural proprietary software, using an exact similarity threshold. The results indicate that Object Oriented Software wondrously showed higher cloned lines of code incidence and a similar use of abstraction (clone sets) for functions or methods.

References

  1. I. D. Baxter, A. Yahin, L. Moura, M. Sant'Anna, and L. Bier, “Clone detection using abstract syntax trees,” in ICSM, 1998,pp. 368-377.
  2. Y. Ma and D. Woo. Applying a Code Clone Detection Method to Domain Analysis of Device Drivers. In Proceedings of the 14th Asia Pacific Software Engineering Conference (APSEC'07), pp. 254-261, Nagoya, Japan, December 2006.
  3. A. Marcus and J. I. Maletic. Identification of high-level concept clones in source code.In Proceedings of the 16th IEEE International Conference on Automated Software Engineering (ASE'01), pp. 107-114, San Diego, CA, USA, November 2001.
  4. S. Khatoon, A. Mahmood, and G. Li, “An evaluation of source code mining techniques,” Proc. - 2011 8th Int. Conf. Fuzzy Syst. Knowl. Discov. FSKD 2011, vol. 3, pp. 1929-1933, 2011.
  5. C. K. Roy and J. R. Cordy, “An Empirical Study of Function Clones in Open Source Software,” 2008 15th Work. Conf. Reverse Eng., pp. 81-90,2008.
  6. J. R. Cordy and C. K. Roy, “The NiCad Clone Detector,” 2011 IEEE 19th Int. Conf. Progr. Compr., no. Figure 3, pp. 219-220, 2011.
  7. N. Schwarz, M. Lungu, and R. Robbes, “On how often code is cloned across repositories,” Proc. - Int. Conf. Softw. Eng., pp. 1289-1292, 2012.
  8. D. Rattan, R. Bhatia, and M. Singh, Software clone detection: A systematic review, vol. 55, no. 7. Elsevier B.V., 2013.
  9. M. Kim, V. Sazawal, and D. Notkin, “An empirical study of code clone genealogies,” ACM SIGSOFT Softw. Eng. Notes, vol. 30, p. 187, 2005.
  10. C. K. Roy, J. R. Cordy, and R. Koschke, “Comparison and evaluation of code clone detection techniques and tools: A qualitative approach,” Sci. Comput. Program., vol. 74, pp. 470-495, 2009.
  11. D. Rattan, R. Bhatia, and M. Singh, Software clone detection: A systematic review, vol. 55, no. 7. Elsevier B.V., 2013.
  12. C. J. Kapser and M. W. Godfrey, “'cloning considered harmful' considered harmful: Patterns of cloning in software,” Empir. Softw. Eng., vol. 13, pp. 645-692, 2008.
  13. Wohlin, P. Runeson, M. Host, M. C. Ohlsson, B. Regnell, and A. Wesslén (2000). Experimentation in software engineering: an introduction. Kluwer Academic Publishers, ISBN: 0-7923-8682-5.
  14. M. Colaço, M. Mendonça, M. André, D. F. Farias, and P. Henrique, “A Neurolinguistic-based Methodology for Identifying OSS Developers Context-Specific Preferred Representational Systems,” Context, no. c, pp. 112-121, 2012.
  15. OpenSource.com What is open source? Retrieved from https://opensource.com/resources/what-open-source Y. Guo, C. Seaman, R. Gomes, A. Cavalcanti, G. Tonin, F. Q. B. Da Silva, A. L. M. Santos, and C. Siebra, “Tracking technical debt - An exploratory case study,” IEEE Int. Conf. Softw. Maintenance, ICSM, pp. 528- 531, 2011.
  16. R. van Solingen and E. Berghout (1999). The Goal/Question/Metric Method: A practical guide for quality improvement of software development. McGraw-Hill.
  17. SPSS, IBM Software, http://goo.gl/eXfcT3 C. K. Roy and J. R. Cordy, “A Survey on Software Clone Detection Research,” Queen's Sch. Comput. TR, vol. 115, p. 115, 2007.
Download


Paper Citation


in Harvard Style

Torres J., Junior M. and Farias M. (2017). Procedural x OO - A Corporative Experiment on Source Code Clone Mining . In Proceedings of the 19th International Conference on Enterprise Information Systems - Volume 2: ICEIS, ISBN 978-989-758-248-6, pages 395-402. DOI: 10.5220/0006325003950402


in Bibtex Style

@conference{iceis17,
author={José Jorge Barreto Torres and Methanias C. R. Junior and Mário André de Freitas Farias},
title={Procedural x OO - A Corporative Experiment on Source Code Clone Mining},
booktitle={Proceedings of the 19th International Conference on Enterprise Information Systems - Volume 2: ICEIS,},
year={2017},
pages={395-402},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006325003950402},
isbn={978-989-758-248-6},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 19th International Conference on Enterprise Information Systems - Volume 2: ICEIS,
TI - Procedural x OO - A Corporative Experiment on Source Code Clone Mining
SN - 978-989-758-248-6
AU - Torres J.
AU - Junior M.
AU - Farias M.
PY - 2017
SP - 395
EP - 402
DO - 10.5220/0006325003950402