arrow
Return

Do Programmers do Change Impact Analysis in Debugging?

delete2016-07-01
delete30
PRE
AI
S
Siyuan Jiang *
C
Collin McMillan
R
Raúl Santelices
DOI:10.1007/s10664-016-9441-9delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Change Impact Analysis is the process of determining the consequences of a modification to software. In theory, change impact analysis should be done during software maintenance, to make sure changes do not introduce new bugs. Many approaches and techniques are proposed to help programmers do change impact analysis automatically. However, it is still an open question whether and how programmers do change impact analysis. In this paper, we conducted two studies, one in-depth study and one breadth study. For the in-depth study, we recorded videos of nine professional programmers repairing two bugs for two hours. For the breadth study, we surveyed 35 professional programmers using an online system. We found that the programmers in our studies did static change impact analysis before they made changes by using IDE navigational functionalities, and they did dynamic change impact analysis after they made changes by running the programs. We also found that they did not use any change impact analysis tools.
Keywords:
Change impact analysis
Program debugging
Empirical software engineering
Software maintenance
Programmer navigation
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Empirical Software Engineering cover
Empirical Software Engineering
IF:
3.6
Papers:
2.0K
Citations:
5.3K

Organization

U
University of Notre Dame
Scholars:
1.2W
Papers: 1.1W
Citations: 1.7W