DocumentCode
2443297
Title
How do professional developers comprehend software?
Author
Roehm, Tobias ; Tiarks, Rebecca ; Koschke, Rainer ; Maalej, Walid
Author_Institution
Tech. Univ. Munchen, Munich, Germany
fYear
2012
fDate
2-9 June 2012
Firstpage
255
Lastpage
265
Abstract
Research in program comprehension has considerably evolved over the past two decades. However, only little is known about how developers practice program comprehension under time and project pressure, and which methods and tools proposed by researchers are used in industry. This paper reports on an observational study of 28 professional developers from seven companies, investigating how developers comprehend software. In particular we focus on the strategies followed, information needed, and tools used. We found that developers put themselves in the role of end users by inspecting user interfaces. They try to avoid program comprehension, and employ recurring, structured comprehension strategies depending on work context. Further, we found that standards and experience facilitate comprehension. Program comprehension was considered a subtask of other maintenance tasks rather than a task by itself. We also found that face-to-face communication is preferred to documentation. Overall, our results show a gap between program comprehension research and practice as we did not observe any use of state of the art comprehension tools and developers seem to be unaware of them. Our findings call for further careful analysis and for reconsidering research agendas.
Keywords
reverse engineering; software maintenance; comprehension tools; face-to-face communication; maintenance tasks; professional developers; program comprehension; project pressure; structured comprehension strategies; user interfaces; work context; Companies; Content management; Documentation; Interviews; Java; Software; Visualization; context awareness; empirical studies; maintenance; program comprehension; software documentation;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering (ICSE), 2012 34th International Conference on
Conference_Location
Zurich
ISSN
0270-5257
Print_ISBN
978-1-4673-1066-6
Electronic_ISBN
0270-5257
Type
conf
DOI
10.1109/ICSE.2012.6227188
Filename
6227188
Link To Document