Analyzing the State of Static Analysis: A Large-Scale Evaluation in Open Source Software

被引:132
|
作者
Beller, Moritz [1 ]
Bholanath, Radjino [1 ]
McIntosh, Shane [2 ]
Zaidman, Andy [1 ]
机构
[1] Delft Univ Technol, NL-2600 AA Delft, Netherlands
[2] McGill Univ, Montreal, PQ H3A 2T5, Canada
关键词
D O I
10.1109/SANER.2016.105
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The use of automatic static analysis has been a software engineering best practice for decades. However, we still do not know a lot about its use in real-world software projects: How prevalent is the use of Automated Static Analysis Tools (ASATs) such as FindBugs and JSHint? How do developers use these tools, and how does their use evolve over time? We research these questions in two studies on nine different ASATs for Java, JavaScript, Ruby, and Python with a population of 122 and 168,214 open-source projects. To compare warnings across the ASATs, we introduce the General Defect Classification (GDC) and provide a grounded-theory-derived mapping of 1,825 ASAT-specific warnings to 16 top-level GDC classes. Our results show that ASAT use is widespread, but not ubiquitous, and that projects typically do not enforce a strict policy on ASAT use. Most ASAT configurations deviate slightly from the default, but hardly any introduce new custom analyses. Only a very small set of default ASAT analyses is widely changed. Finally, most ASAT configurations, once introduced, never change. If they do, the changes are small and have a tendency to occur within one day of the configuration's initial introduction.
引用
收藏
页码:470 / 481
页数:12
相关论文
共 50 条
  • [31] Open-Source License Violations of Binary Software at Large Scale
    Feng, Muyue
    Mao, Weixuan
    Yuan, Zimu
    Xiao, Yang
    Ban, Gu
    Wang, Wei
    Wang, Shiyang
    Tang, Qian
    Xu, Jiahuan
    Su, He
    Liu, Binghong
    Huo, Wei
    [J]. 2019 IEEE 26TH INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION AND REENGINEERING (SANER), 2019, : 564 - 568
  • [32] Retrieving Similar Software from Large-scale Open-source Repository by Constructing Representation of Project Description
    Li, Chuanyi
    Ge, Jidong
    Chang, Victor
    Luo, Bin
    [J]. PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON INTERNET OF THINGS, BIG DATA AND SECURITY (IOTBDS), 2020, : 296 - 303
  • [33] Visualization Analysis Framework for Large-Scale Software Based on Software Network
    Ren, Shengbing
    Jia, Mengyu
    Huang, Fei
    Liu, Yuan
    [J]. DATA SCIENCE, PT 1, 2017, 727 : 751 - 763
  • [34] SOFTWARE AS A LARGE-SCALE SYSTEM
    SAGE, AP
    [J]. LARGE SCALE SYSTEMS IN INFORMATION AND DECISION TECHNOLOGIES, 1987, 12 (03): : 185 - 188
  • [35] A metrics suite for static structure of large-scale software based on complex networks
    Zhang Haohua
    Zhao Hai
    Cai Wei
    Zhao Ming
    Luo Guilan
    Zhang Haohua
    [J]. 2008 FOURTH INTERNATIONAL CONFERENCE ON INTELLIGENT INFORMATION HIDING AND MULTIMEDIA SIGNAL PROCESSING, PROCEEDINGS, 2008, : 512 - 515
  • [36] Evaluation and Analysis of the Accuracy of Open-Source Software and Online Services for PPP Processing in Static Mode
    Vazquez-Ontiveros, Jesus Rene
    Padilla-Velazco, Jorge
    Gaxiola-Camacho, J. Ramon
    Vazquez-Becerra, Guadalupe Esteban
    [J]. REMOTE SENSING, 2023, 15 (08)
  • [37] Open source software - an evaluation
    Fuggetta, A
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2003, 66 (01) : 77 - 90
  • [38] Network Analysis of a Large Scale Open Source Project
    Orucevic-Alagic, Alma
    Host, Martin
    [J]. 2014 40TH EUROMICRO CONFERENCE SERIES ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS (SEAA 2014), 2014, : 25 - 29
  • [39] SGL: A domain-specific language for large-scale analysis of open-source code
    Foo, Darius
    Yi, Ang Ming
    Yeo, Jason
    Sharma, Asankhaya
    [J]. 2018 IEEE CYBERSECURITY DEVELOPMENT CONFERENCE (SECDEV 2018), 2018, : 61 - 68
  • [40] A Large-Scale Open-Source Acoustic Simulator for Speaker Recognition
    Ferras, Marc
    Madikeri, Srikanth
    Motlicek, Petr
    Dey, Subhadeep
    Bourlard, Herve
    [J]. IEEE SIGNAL PROCESSING LETTERS, 2016, 23 (04) : 527 - 531