Automatic Detection for Reused Open Source Codes Based on Similarity Identification of Software Networks

Tao Shi, Liang Yan, Haoran Guo, J. Ai
{"title":"Automatic Detection for Reused Open Source Codes Based on Similarity Identification of Software Networks","authors":"Tao Shi, Liang Yan, Haoran Guo, J. Ai","doi":"10.1109/DSA.2019.00042","DOIUrl":null,"url":null,"abstract":"Software plays an increasingly important role in today's world. With the advent of open-source software, an increasing number of developers begin to focus on and apply open-source software as a basic tool for their program development. However, at the same time, introducing open-source software into their own software introduces various types of defects and disadvantages. These unknown risks may cause incalculable economic loss aud credit crises if they were to be exploited in the future. Therefore, it is an important and urgent problem to detect the components of open-source software that may be reused when outsourcing software. To help detecting opensource software components in large-scale software projects, this paper proposes automatic identification technology for subnetworks with similar structural characteristics. This technology is based on node role classification, node similarity matching, and similar subnetwork search. This subject applies complex network technology to the comparison of software networks. In contrast to traditional code detection technology, this study does not constrain the text information of the software's source code. Considering that the basic skeleton structure of an application, in the processes of code reuse and features, remains the same, its network structure is used instead of its software structure to avoid problems such as poor detection results of similar codes as a result of text modification. This technology starts from the software features and the structure of software network.","PeriodicalId":342719,"journal":{"name":"2019 6th International Conference on Dependable Systems and Their Applications (DSA)","volume":"192 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 6th International Conference on Dependable Systems and Their Applications (DSA)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/DSA.2019.00042","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Software plays an increasingly important role in today's world. With the advent of open-source software, an increasing number of developers begin to focus on and apply open-source software as a basic tool for their program development. However, at the same time, introducing open-source software into their own software introduces various types of defects and disadvantages. These unknown risks may cause incalculable economic loss aud credit crises if they were to be exploited in the future. Therefore, it is an important and urgent problem to detect the components of open-source software that may be reused when outsourcing software. To help detecting opensource software components in large-scale software projects, this paper proposes automatic identification technology for subnetworks with similar structural characteristics. This technology is based on node role classification, node similarity matching, and similar subnetwork search. This subject applies complex network technology to the comparison of software networks. In contrast to traditional code detection technology, this study does not constrain the text information of the software's source code. Considering that the basic skeleton structure of an application, in the processes of code reuse and features, remains the same, its network structure is used instead of its software structure to avoid problems such as poor detection results of similar codes as a result of text modification. This technology starts from the software features and the structure of software network.
基于软件网络相似性识别的可重用开源代码自动检测
软件在当今世界扮演着越来越重要的角色。随着开源软件的出现,越来越多的开发者开始关注并应用开源软件作为程序开发的基本工具。然而,同时,将开源软件引入到自己的软件中会引入各种类型的缺陷和缺点。这些未知的风险如果在未来被利用,可能会造成不可估量的经济损失和信贷危机。因此,在软件外包时,如何检测开源软件中可能被重用的组件是一个重要而紧迫的问题。为了帮助大型软件项目中开源软件组件的检测,本文提出了具有相似结构特征的子网自动识别技术。该技术基于节点角色分类、节点相似度匹配和相似子网搜索。本课题将复杂网络技术应用于软件网络的比较。与传统的代码检测技术相比,本研究不约束软件源代码的文本信息。考虑到应用程序的基本骨架结构在代码重用和特征处理过程中保持不变,采用其网络结构代替其软件结构,避免了由于文本修改导致相似代码检测结果不佳的问题。该技术从软件特性和软件网络结构入手。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信