Survey of Approaches for Postprocessing of Static Analysis Alarms

Research output: Contribution to journalArticleAcademicpeer-review

4 Downloads (Pure)

Abstract

Static analysis tools have showcased their importance and usefulness in automated detection of defects. However, the tools are known to generate a large number of alarms which are warning messages to the user. The large number of alarms and cost incurred by their manual inspection have been identified as two major reasons for underuse of the tools in practice. To address these concerns plentitude of studies propose postprocessing of alarms: processing the alarms after they are generated. These studies differ greatly in their approaches to postprocess alarms. A comprehensive overview of the approaches and techniques to implement them is, however, missing.

In this article, we review 130 primary studies that propose postprocessing of alarms. The studies are collected by combining keywords-based database search and snowballing. We categorize approaches proposed by the collected studies into six main categories: clustering, ranking, pruning, automated elimination of false positives,
combination of static and dynamic analyses, and simplification of manual inspection. We provide overview of the categories and sub-categories identified for them, their merits and shortcomings, and different techniques used to implement the approaches. Furthermore, we provide (1) guidelines for selection of the postprocessing techniques by the users/designers of static analysis tools; and (2) directions that can be explored by the researchers.
Original languageEnglish
Article number48
Number of pages39
JournalACM Computing Surveys
Volume55
Issue number3
DOIs
Publication statusPublished - Apr 2023

Fingerprint

Dive into the research topics of 'Survey of Approaches for Postprocessing of Static Analysis Alarms'. Together they form a unique fingerprint.

Cite this