Effective Interactive Resolution of Static Analysis Alarms

Zhang, Xin and Grigore, Radu and Si, Xujie and 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:https://doi.org/10.1145/3133881) (Full text available)

PDF - Author's Accepted Manuscript
Download (502kB) Preview
[img]
Preview
Official URL
https://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
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: 08 Oct 2018 08:56 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