{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,10]],"date-time":"2026-06-10T14:30:11Z","timestamp":1781101811240,"version":"3.54.1"},"reference-count":26,"publisher":"IGI Global Scientific Publishing","issue":"2","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2017,4,1]]},"abstract":"<p>Code clones are copied fragments that occur at different levels of abstraction and may have different origins in a software system. This article presents an approach which shows the significant parts of source code. Further, by using significant parts of a source code, a control flow graph can be generated. This control flow graph represents the statements of a code\/program in the form of basic blocks or nodes and the edges represent the control flow between those basic blocks. A hybrid approach, named the Program Dependence Graph (PDG) is also presented in this article for the detection of non-trivial code clones. The program dependency graph approach consists of two approaches as a control dependency graph and a data dependency graph. The control dependency graph is generated by using a control flow graph. This article proposes an approach which can easily generate control flow graphs and by using control flow graph and reduced flowgraph approach, the trivial software clone, a similar textual structure, can be detected.The proposed approach is based on a tokenization concept.<\/p>","DOI":"10.4018\/ijossp.2017040101","type":"journal-article","created":{"date-parts":[[2018,1,2]],"date-time":"2018-01-02T07:38:44Z","timestamp":1514878724000},"page":"1-24","source":"Crossref","is-referenced-by-count":2,"title":["Non-Trivial Software Clone Detection Using Program Dependency Graph"],"prefix":"10.4018","volume":"8","author":[{"given":"Pratiksha","family":"Gautam","sequence":"first","affiliation":[{"name":"Jaypee University Of Information Technology, Solan, India"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2957-1491","authenticated-orcid":true,"given":"Hemraj","family":"Saini","sequence":"additional","affiliation":[{"name":"Jaypee University of Information Technology, Solan, India"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"2432","reference":[{"key":"IJOSSP.2017040101-0","unstructured":"Codeblock. (2016). Retrived from www.codeblocks.org\/"},{"key":"IJOSSP.2017040101-1","doi-asserted-by":"publisher","DOI":"10.1109\/WSC.1994.717382"},{"key":"IJOSSP.2017040101-2","doi-asserted-by":"publisher","DOI":"10.1145\/24039.24041"},{"key":"IJOSSP.2017040101-3","doi-asserted-by":"publisher","DOI":"10.1007\/978-981-10-3433-6_79"},{"key":"IJOSSP.2017040101-4","unstructured":"Gupta. S, (2017). Detection of near-miss clones using metrics and Abstract Syntax Trees. In Proceedings of the 2017 International Conference on Inventive Communication and Computational Technologies (pp. 230-234). IEEE."},{"key":"IJOSSP.2017040101-5","author":"M. J.Harrold","year":"2005","journal-title":"Representation and analysis of software"},{"key":"IJOSSP.2017040101-6","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2015.7081830"},{"key":"IJOSSP.2017040101-7","first-page":"409","article-title":"A new code obfuscation scheme for software protection.","author":"A.Kulkarni","year":"2014","journal-title":"Proceedings of the 8th IEEE International Symposium on Service Oriented System Engineering (SOSE)"},{"key":"IJOSSP.2017040101-8","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.1992.242533"},{"key":"IJOSSP.2017040101-9","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2001.989796"},{"key":"IJOSSP.2017040101-10","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1976.233837"},{"key":"IJOSSP.2017040101-11","doi-asserted-by":"publisher","DOI":"10.1109\/PERVASIVE.2015.7087126"},{"issue":"3","key":"IJOSSP.2017040101-12","first-page":"69","article-title":"Software code clone detection model.","volume":"1","author":"A.Puri","year":"2012","journal-title":"International Journal of Computers and Distributed Systems"},{"key":"IJOSSP.2017040101-13","first-page":"40","author":"K.Raghavan","year":"2001","journal-title":"Using slicing to identify duplication in source code"},{"key":"IJOSSP.2017040101-14","doi-asserted-by":"crossref","unstructured":"Ragkhitwetsagul, C., & Krinke, J. (2017). Using compilation\/decompilation to enhance clone detection. In Proceedings of the 2017 IEEE 11th International Workshop on Software Clones. IEEE.","DOI":"10.1109\/IWSC.2017.7880502"},{"key":"IJOSSP.2017040101-15","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2009.02.007"},{"key":"IJOSSP.2017040101-16","doi-asserted-by":"publisher","DOI":"10.1109\/IWSC.2017.7880503"},{"key":"IJOSSP.2017040101-17","unstructured":"Sharma, Y. (2011). Hybrid technique for object oriented software clone detection [PhD Thesis]. Thapar University, Patiala."},{"key":"IJOSSP.2017040101-18","doi-asserted-by":"publisher","DOI":"10.1016\/j.procs.2015.07.509"},{"key":"IJOSSP.2017040101-19","doi-asserted-by":"publisher","DOI":"10.1109\/IC3I.2016.7917935"},{"key":"IJOSSP.2017040101-20","first-page":"177","article-title":"CloneWorks: a fast and flexible large-scale near-miss clone detection tool","author":"J.Svajlenko","year":"2017","journal-title":"Proceedings of the 39th International Conference on Software Engineering Companion"},{"key":"IJOSSP.2017040101-21","doi-asserted-by":"publisher","DOI":"10.1145\/1185448.1185597"},{"key":"IJOSSP.2017040101-22","doi-asserted-by":"crossref","unstructured":"Tekchandani, R., Bhatia, R. K., & Singh, M. (2013). Semantic code clone detection using parse trees and grammar recovery, In Proceedings of the 4th IET International Conference on Confluence 2013: The Next Generation Information Technology Summit, Noida, India (pp. 41-46).","DOI":"10.1049\/cp.2013.2291"},{"key":"IJOSSP.2017040101-23","article-title":"An execution-semantic and content-and-context-based code-clone detection and analysis","author":"K.Toshihiro","year":"2015).","journal-title":"Proceedings of the 9th IEEE International Workshop on Software Clones (IWSC)"},{"key":"IJOSSP.2017040101-24","unstructured":"Watson, H., & McCabe, T.J. (1996, September). Structured testing: A testing methodology using the cyclomatic complexity metric. Computer System Laboratory, National Institute of Standard and Technology, Gaithersburg."},{"key":"IJOSSP.2017040101-25","unstructured":"Wet lab. (1989). Retrived from http:\/\/ftp.gnu.org\/gnu\/wget\/"}],"container-title":["International Journal of Open Source Software and Processes"],"original-title":[],"language":"ng","link":[{"URL":"https:\/\/www.igi-global.com\/viewtitle.aspx?TitleId=196565","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,5,6]],"date-time":"2022-05-06T14:37:16Z","timestamp":1651847836000},"score":1,"resource":{"primary":{"URL":"https:\/\/services.igi-global.com\/resolvedoi\/resolve.aspx?doi=10.4018\/IJOSSP.2017040101"}},"subtitle":[""],"short-title":[],"issued":{"date-parts":[[2017,4,1]]},"references-count":26,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2017,4]]}},"URL":"https:\/\/doi.org\/10.4018\/ijossp.2017040101","relation":{},"ISSN":["1942-3926","1942-3934"],"issn-type":[{"value":"1942-3926","type":"print"},{"value":"1942-3934","type":"electronic"}],"subject":[],"published":{"date-parts":[[2017,4,1]]}}}