2013 · 33 citations · 10 references
Software MaintenanceManual ReviewEngineeringVerificationSoftware EngineeringSource Code AnalysisSoftware AnalysisFormal VerificationRedundant WarningsStatic Analysis WarningsData ScienceSystems EngineeringStatic CheckingReliabilityStatic AnalysisComputer ScienceStatic Program AnalysisSoftware DesignSoftware VerificationProgram AnalysisSoftware TestingSoftware ReviewFormal Methods
Static analysis has been successfully employed in software verification, however the number of generated warnings and cost incurred in their manual review is a major concern. In this paper we present a novel idea to reduce manual review efforts by identifying redundancy in this review process. We propose two partitioning techniques to identify redundant warnings - 1) partitioning of the warnings with each partition having one leader warning such that if the leader is a false positive, so are all the warnings in its partition which need not be reviewed and 2) further partitioning the leader warnings based on similarity of the modification points of variables referred to in their expressions. The second technique makes the review process faster by identifying further redundancies and it also makes the reviewing of a warning easier due to the associated information of modification points. Empirical results obtained with these grouping techniques indicate that, on an average, 60% of warnings are redundant in the review context and skipping their review would lead to a reduction of 50-60% in manual review efforts.
10
Evaluating static analysis defect warnings on production software
Nathaniel Ayewah, William Pugh, J. David Morgenthaler et al. · 2007 · 213 citations
Which warnings should I fix first?
Sunghun Kim, Michael D. Ernst · 2007 · 198 citations
Predicting accurate and actionable static analysis warnings
Joseph R. Ruthruff, John Penix, J. David Morgenthaler et al. · 2008 · 122 citations
Tracking defect warnings across versions
Jaime Spacco, David Hovemeyer, William Pugh · 2006 · 67 citations