The Cost and Benefits of Static Analysis During Development
William R. Nichols Jr

TL;DR
This study provides real-world data and analysis demonstrating that static analysis tools improve defect detection efficiency and reduce overall development effort, supporting their cost-effective use in software development workflows.
Contribution
It offers the first detailed quantitative analysis of static analysis in industrial projects, including benchmarks and cost-effectiveness evaluation.
Findings
Static analysis detects and removes defects more effectively than other techniques.
Early defect removal via static analysis reduces overall development effort.
Using static analysis is consistently cost-effective in real-world projects.
Abstract
Without quantitative data, deciding whether and how to use static analysis in a development workflow is a matter of expert opinion and guesswork rather than an engineering trade-off. Moreover, relevant data collected under real-world conditions is scarce. Important but unknown quantitative parameters include, but are not limited to, the effort to apply the techniques, the effectiveness of removing defects, where in the workflow the analysis should be applied, and how static analysis interacts with other quality techniques. This study examined the detailed development process data 35 industrial development projects that included static analysis and that were also instrumented with the Team Software Process. We collected data project plans, logs of effort, defect, and size and post mortem reports and analyzed performance of their development activities to populate a parameterized…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Software Reliability and Analysis Research
