Debugging Static Analysis

Citation Author(s):
Lisa Nguyen Quang Do, Stefan Krüger, Patrick Hill, Karim Ali, Eric Bodden
Submitted by:
Lisa Nguyen Quang Do
Last updated:
Tue, 05/17/2022 - 22:17
DOI:
10.21227/H20W9Q
Data Format:
Research Article Link:
License:
0
0 ratings - Please login to submit your rating.

Abstract 

 

Static analysis is increasingly used by companies and individual code developers to detect bugs and security vulnerabilities. As programs grow more complex, the analyses have to support new code concepts, frameworks and libraries. However, static-analysis code itself is also prone to bugs. While more complex analyses are written and used in production systems every day, the cost of debugging and fixing them also increases tremendously.

VisuFlow (https://arxiv.org/abs/1801.04894) is a debugging environment for static analysis. It contains debugging features specialized for debugging static, data-flow analyses that were obtained from a large-scale survey on 115 static analysis writers. In a user study on 20 static-analysis writers, VISUFLOW helped identify 25% and fix 50% more errors in the analysis code compared to the standard Eclipse debugging environment.

This dataset contains the survey questions, user study questionnaire, anonymized survey answers and anonymized user study observations.

 

 

Instructions: 

VisuFlow is a debugging environment designed for static data-flow analyses written on top of the Soot analysis framework. It is integrated in the Eclipse IDE. This dataset contains two .pdf files and two .xlsx files. The data can also be found here: https://blogs.uni-paderborn.de/sse/tools/visuflow-debugging-static-analysis/

  • Survey questions (.pdf)
  • Survey results (.xlsx):
    • The first sheet contains the raw answers.
    • Each of the other sheets contains the answers to one question and their corresponding classification information.
  • User study questionnaire (.pdf)
  • User study results (.xlsx):
    • The first sheet contains the focus times on the different views of the coding environments.
    • The second sheet contains the number of errors found by the participants.
    • The third sheet contains the raw answers to the user study questionnaire.
    • Each of the other sheets contains the answers to one question of the questionnaire and their corresponding classification information.