Effective Interactive Resolution of Static Analysis Alarms

Zhang, Xin, Grigore, Radu, Si, Xujie, Naik, Mayur (2017) Effective Interactive Resolution of Static Analysis Alarms. Proceedings of the ACM on Programming Languages, 1 (OOPSLA). ISSN 2475-1421. E-ISSN 2475-1421. (doi:10.1145/3133881)

PDF - Author's Accepted Manuscript
Download (502kB) Preview
[img]
Preview
Official URL
https://dx.doi.org/10.1145/3133881

Abstract

We propose an interactive approach to resolve static analysis alarms. Our approach synergistically combines a sound but imprecise analysis with precise but unsound heuristics, through user interaction. In each iteration, it solves an optimization problem to find a set of questions for the user such that the expected payoff is maximized. We have implemented our approach in a tool, Ursa, that enables interactive alarm resolution for any analysis specified in the declarative logic programming language Datalog. We demonstrate the effectiveness of Ursa on a state-of-the-art static datarace analysis using a suite of 8 Java programs comprising 41-194 KLOC each. Ursa is able to eliminate 74% of the false alarms per benchmark with an average payoff of 12 per question. Moreover, Ursa prioritizes user effort effectively by posing questions that yield high payoffs earlier.

Item Type: Article
DOI/Identification number: 10.1145/3133881
Subjects: Q Science
T Technology
Divisions: Faculties > Sciences > School of Computing
Faculties > Sciences > School of Computing > Programming Languages and Systems Group
Depositing User: Radu Grigore
Date Deposited: 14 Aug 2017 08:31 UTC
Last Modified: 29 May 2019 19:19 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/62658 (The current URI for this page, for reference purposes)
Grigore, Radu: https://orcid.org/0000-0003-1128-0311
  • Depositors only (login required):

Downloads

Downloads per month over past year