Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering 2016
DOI: 10.1145/2950290.2983968
|View full text |Cite
|
Sign up to set email alerts
|

How should static analysis tools explain anomalies to developers?

Abstract: Despite the advanced static analysis tools available within modern integrated development environments (IDEs), the error messages these tools produce remain perplexing for developers to comprehend. This research postulates that tools can computationally expose their internal reasoning processes to generate assistive error explanations that more closely align with how developers explain errors to themselves. CCS Concepts •Human-centered computing → Human computer interaction (HCI); •Software and its engineering… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
4
4

Relationship

0
8

Authors

Journals

citations
Cited by 11 publications
(6 citation statements)
references
References 22 publications
0
6
0
Order By: Relevance
“…Another problem that static analysis tools often face is that they operate more or less like black boxes. They receive code pieces as input, perform internal operations that are not always fully comprehensible for the developer, and give results that could be better understood if some of the information from the analysis' internal workings would be made accessible to the developer [3]. And even if not extracted from the analysis process itself, heuristic approaches that try to reason about the analysis output after the fact could lead to more comprehensive explanations of the underlying problem.…”
Section: Hovering Over the Function Name Also Shows The Exact Cost Without Having To Open The Detail Viewmentioning
confidence: 99%
“…Another problem that static analysis tools often face is that they operate more or less like black boxes. They receive code pieces as input, perform internal operations that are not always fully comprehensible for the developer, and give results that could be better understood if some of the information from the analysis' internal workings would be made accessible to the developer [3]. And even if not extracted from the analysis process itself, heuristic approaches that try to reason about the analysis output after the fact could lead to more comprehensive explanations of the underlying problem.…”
Section: Hovering Over the Function Name Also Shows The Exact Cost Without Having To Open The Detail Viewmentioning
confidence: 99%
“…We grouped the remaining articles (23 articles, 50%) into studies that focus on the programming environments used by professional programmers. The articles show the following types of improvements for programming environments: (i) related to error comprehension [48]- [51]; (ii) in the visualization of codes [52]- [55]; (iii) in the ease of code refactoring [56], [57]; and (iv) the ease of making code changes and maintaining control over changes [58]- [61].…”
Section: B: Programmer Environment For Programmersmentioning
confidence: 99%
“…Pettit and Gee report in their paper that by simply making more useful and customized error messages for certain common programmer mistakes will not make students less likely to repeat the same errors [6], but their results are not conclusive. In a recent paper on static analysis tools, Barik argues that these tools should explain the steps they performed [7]. A study with eye tracking supports that understanding error messages is vital for the success of a programming task and as difficult as reading source code [8].…”
Section: Related Workmentioning
confidence: 99%