CroLSSim: Cross‐language software similarity detector using hybrid approach of LSA‐based AST‐MDrep features and CNN‐LSTM model

Ullah, Farhan ORCID logoORCID:, Naeem, Muhammad Rashid, Naeem, Hamad, Cheng, Xiaochun ORCID logoORCID: and Alazab, Mamoun (2022) CroLSSim: Cross‐language software similarity detector using hybrid approach of LSA‐based AST‐MDrep features and CNN‐LSTM model. International Journal of Intelligent Systems, 37 (9) . pp. 5768-5795. ISSN 0884-8173 [Article] (doi:10.1002/int.22813)

PDF - Final accepted version (with author's formatting)
Download (2MB) | Preview


Software similarity in different programming codes is a rapidly evolving field because of its numerous applications in software development, software cloning, software plagiarism, and software forensics. Currently, software researchers and developers search cross-language open-source repositories for similar applications for a variety of reasons, such as reusing programming code, analyzing different implementations, and looking for a better application. However, it is a challenging task because each programming language has a unique syntax and semantic structure. In this paper, a novel tool called Cross-Language Software Similarity (CroLSSim) is designed to detect similar software applications written in different programming codes. First, the Abstract Syntax Tree (AST) features are collected from different programming codes. These are high-quality features that can show the abstract view of each program. Then, Methods Description (MDrep) in combination with AST is used to examine the relationship among different method calls. Second, the Term Frequency Inverse Document Frequency approach is used to retrieve the local and global weights from AST-MDrep features. Third, the Latent Semantic Analysis-based features extraction and selection method is proposed to extract the semantic anchors in reduced dimensional space. Fourth, the Convolution Neural Network (CNN)-based features extraction method is proposed to mine the deep features. Finally, a hybrid deep learning model of CNN-Long-Short-Term Memory is designed to detect semantically similar software applications from these latent variables. The data set contains approximately 9.5K Java, 8.8K C#, and 7.4K C++ software applications obtained from GitHub. The proposed approach outperforms as compared with the state-of-the-art methods.

Item Type: Article
Keywords (uncontrolled): Artificial Intelligence, Human-Computer Interaction, Theoretical Computer Science, Software
Research Areas: A. > School of Science and Technology > Computer Science
Item ID: 34560
Notes on copyright: This is the peer reviewed version of the following article: Ullah, F, Naeem, MR, Naeem, H, Cheng, X, Alazab, M. CroLSSim: Cross-language software similarity detector using hybrid approach of LSA-based AST-MDrep features and CNN-LSTM model. Int J Intell Syst. 2022; 37: 5768- 5795. doi:10.1002/int.22813, which has been published in final form at This article may be used for non-commercial purposes in accordance with Wiley Terms and Conditions for Use of Self-Archived Versions. This article may not be enhanced, enriched or otherwise transformed into a derivative work, without express permission from Wiley or by statutory rights under applicable legislation. Copyright notices must not be removed, obscured or modified. The article must be linked to Wiley’s version of record on Wiley Online Library and any embedding, framing or otherwise making available the article or pages thereof by third parties from platforms, services and websites other than Wiley Online Library must be prohibited
Useful Links:
Depositing User: Jisc Publications Router
Date Deposited: 20 Jan 2022 17:55
Last Modified: 06 Feb 2023 13:37

Actions (login required)

View Item View Item


Activity Overview
6 month trend
6 month trend

Additional statistics are available via IRStats2.