Past research in the usability of static analysis tools has focused on usability issues encountered by software developers, and the causes of those issues in analysis tools. Here, we adopt a more user-centered approach, to understand how developers use analysis tools, which decisions they make, what they look for when making those decisions, and the motivations behind their strategies.
Through a survey of 87 developers in industry, we report on the usage context and motivations of developers for using static analysis tools in practice, and explain how they motivate different usage strategies.
In another study, we focus on four static analysis tools and perform a heuristic walkthrough and a user study to identify recurring problems in the UIs of static analysis tools.
Those two studies allow us to derive new tool requirements that closely support software developers, and open novel avenues for further static-analysis research such as collaborative problem-solving for analysis warnings.
- Developer survey:
- Heuristic walkthrough and user study:
- TSE 2020: Why Do Software Developers Use Static Analysis? (Lisa Nguyen Quang Do, James R. Wright, and Karim Ali).
- SOUPS 2020: Why Can’t Johnny Fix Vulnerabilities: A Usability Evaluation of Static Analysis Tools for Security (Justin Smith, Lisa Nguyen Quang Do, Emerson Murphy-Hill).