一句话:通过混合方法研究开发者对安全警告形式与集成的偏好,发现需求高度异质,IDE与安全工具应提供更灵活的警告交互。
安全工具(如静态分析引擎和编译器安全检查器)常通过警告向开发者报告安全问题,但其效果取决于开发者是否采纳警告。本文基于 Johnson 等人的工作,探究开发者希望安全警告以何种形式呈现、如何集成到工作流和工作情境中。作者开展扎根理论研究,访谈/调研14名专业开发者、12名计算机科学学生,并与7名学术研究者进行焦点小组,随后用50名专业开发者的定量问卷验证。结果显示开发者群体高度异质,不存在普遍偏好的警告类型,警告展示情境也至关重要;因此 IDE 和安全工具应提供更灵活的警告交互,并据此给出研究与工具改进建议。
A wide range of tools exist to assist developers in creating secure software. Many of these tools, such as static analysis engines or security checkers included in compilers, use warnings to communicate security issues to developers. The effectiveness of these tools relies on developers heeding these warnings, and there are many ways in which these warnings could be displayed. Johnson et al. [46] conducted qualitative research and found that warning presentation and integration are main issues. We built on Johnson et al.'s work and examined what developers want from security warnings, including what form they should take and how they should integrate into their workflow and work context. To this end, we conducted a Grounded Theory study with 14 professional software developers and 12 computer science students as well as a focus group with 7 academic researchers to gather qualitative insights. To back up the theory developed from the qualitative research, we ran a quantitative survey with 50 professional software developers. Our results show that there is significant heterogeneity amongst developers and that no one warning type is preferred over all others. The context in which the warnings are shown is also highly relevant, indicating that it is likely to be beneficial if IDEs and other development tools become more flexible in their warning interactions with developers. Based on our findings, we provide concrete recommendations for both future research as well as how IDEs and other security tools can improve their interaction with developers.