A Study of Potential Code Borrowing and License Violations in Java']Java Projects on GitHub

被引:15
|
作者
Golubev, Yaroslav [1 ,2 ]
Eliseeva, Maria [3 ]
Povarov, Nikita [1 ]
Bryksin, Timofey [1 ,4 ]
机构
[1] JetBrains Res, Belgrade, Serbia
[2] ITMO Univ, St Petersburg, Russia
[3] Higher Sch Econ, St Petersburg, Russia
[4] St Petersburg State Univ, St Petersburg, Russia
关键词
CLONE DETECTION; SOFTWARE;
D O I
10.1145/3379597.3387455
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
With an ever-increasing amount of open-source software, the popularity of services like GitHub that facilitate code reuse, and common misconceptions about the licensing of open-source software, the problem of license violations in the code is getting more and more prominent. In this study, we compile an extensive corpus of popular Java projects from GitHub, search it for code clones, and perform an original analysis of possible code borrowing and license violations on the level of code fragments. We chose Java as a language because of its popularity in industry, where the plagiarism problem is especially relevant because of possible legal action. We analyze and discuss distribution of 94 different discovered and manually evaluated licenses in files and projects, differences in the licensing of files, distribution of potential code borrowing between licenses, various types of possible license violations, most violated licenses, etc. Studying possible license violations in specific blocks of code, we have discovered that 29.6% of them might be involved in potential code borrowing and 9.4% of them could potentially violate original licenses.
引用
收藏
页码:54 / 64
页数:11
相关论文
共 50 条
  • [31] An Eye-Tracking Study of Java']Java Programmers and Application to Source Code Summarization
    Rodeghero, Paige
    Liu, Cheng
    McBurney, Paul W.
    McMillan, Collin
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2015, 41 (11) : 1038 - 1054
  • [32] Case Study on the Terms Novice Programmers Use to Describe Code Snippets in Java']Java
    Esche, Svana
    Weihe, Karsten
    [J]. IEEE TRANSACTIONS ON EDUCATION, 2023, 66 (06) : 642 - 653
  • [33] A large study on the effect of code obfuscation on the quality of java code
    Mariano Ceccato
    Andrea Capiluppi
    Paolo Falcarin
    Cornelia Boldyreff
    [J]. Empirical Software Engineering, 2015, 20 : 1486 - 1524
  • [34] A Comparative Study of Bug Patterns in Java']Java Cloned and Non-cloned Code
    Sajnani, Hitesh
    Saini, Vaibhav
    Lopes, Cristina V.
    [J]. 2014 14TH IEEE INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM 2014), 2014, : 21 - 30
  • [35] Can we trust tests to automate dependency updates? A case study of Java']Java Projects
    Hejderup, Joseph
    Gousios, Georgios
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2022, 183
  • [36] An Empirical Study of Usages, Updates and Risks of Third-Party Libraries in Java']Java Projects
    Wang, Ying
    Chen, Bihuan
    Huang, Kaifeng
    Shi, Bowen
    Xu, Congying
    Peng, Xin
    Wu, Yijian
    Liu, Yang
    [J]. 2020 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2020), 2020, : 35 - 45
  • [37] Measuring the Cost of Regression Testing in Practice: A Study of Java']Java Projects using Continuous Integration
    Labuschagne, Adriaan
    Inozemtseva, Laura
    Holmes, Reid
    [J]. ESEC/FSE 2017: PROCEEDINGS OF THE 2017 11TH JOINT MEETING ON FOUNDATIONS OF SOFTWARE ENGINEERING, 2017, : 821 - 830
  • [38] An In-depth Study of Java']Java Deserialization Remote-Code Execution Exploits and Vulnerabilities
    Sayar, Imen
    Bartel, Alexandre
    Bodden, Eric
    Le Traon, Yves
    [J]. ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2023, 32 (01)
  • [39] An Empirical Study on the Practice of Maintaining Object-Relational Mapping Code in Java']Java Systems
    Chen, Tse-Hsun
    Shang, Weiyi
    Yang, Jinqiu
    Hassan, Ahmed E.
    Godfrey, Michael W.
    Nasser, Mohamed
    Flora, Parminder
    [J]. 13TH WORKING CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2016), 2016, : 165 - 176
  • [40] A Case Study on the Relationship between Code Ownership and Refactoring Activities in a Java']Java Software System
    Orru, Matteo
    Marchesi, Michele
    [J]. PROCEEDINGS OF 2016 IEEE/ACM 7TH INTERNATIONAL WORKSHOP ON EMERGING TRENDS IN SOFTWARE METRICS (WETSOM), 2016, : 43 - 49