How Do Professional Developers Comprehend Software?

被引:0
|
作者
Roehm, Tobias [1 ]
Tiarks, Rebecca [2 ]
Koschke, Rainer [2 ]
Maalej, Walid [1 ]
机构
[1] Tech Univ Munich, Munich, Germany
[2] Univ Bremen, Bremen, Germany
关键词
program comprehension; empirical studies; software documentation; maintenance; context awareness; MAINTENANCE; INFORMATION;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:255 / 265
页数:11
相关论文
共 50 条
  • [41] How Does Grit Affect the Performance of Software Developers?
    Shinbori, Hodaka
    Tsunoda, Masateru
    2022 29TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, APSEC, 2022, : 568 - 569
  • [42] INFORMATION RELATIONSHIPS IN PROLOG PROGRAMS - HOW DO PROGRAMMERS COMPREHEND FUNCTIONALITY
    BERGANTZ, D
    HASSELL, J
    INTERNATIONAL JOURNAL OF MAN-MACHINE STUDIES, 1991, 35 (03): : 313 - 328
  • [43] Process Mining Software Repositories: do developers Work as Expected?
    Serebrenik, Alexander
    Poncin, Wouter
    van den Brand, Mark
    ERCIM NEWS, 2012, (88): : 16 - 17
  • [44] Investigating whether and how software developers understand open source software licensing
    Almeida, Daniel A.
    Murphy, Gail C.
    Wilson, Greg
    Hoye, Michael
    EMPIRICAL SOFTWARE ENGINEERING, 2019, 24 (01) : 211 - 239
  • [45] An Experimental Evaluation of a De-biasing Intervention for Professional Software Developers
    Shepperd, Martin
    Mair, Carolyn
    Jorgensen, Magne
    33RD ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, 2018, : 1510 - 1517
  • [46] Observations on Knowledge Transfer of Professional Software Developers during Pair Programming
    Zieris, Franz
    Prechelt, Lutz
    2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C), 2016, : 242 - 250
  • [47] Why do software developers like working from the office?
    Zaidman, Nurit
    Van Dijk, Dina
    INFORMATION AND SOFTWARE TECHNOLOGY, 2025, 179
  • [48] Investigating whether and how software developers understand open source software licensing
    Daniel A. Almeida
    Gail C. Murphy
    Greg Wilson
    Michael Hoye
    Empirical Software Engineering, 2019, 24 : 211 - 239
  • [49] What Help Do Developers Seek, When and How?
    Li, Hongwei
    Xing, Zhenchang
    Peng, Xin
    Zhao, Wenyun
    2013 20TH WORKING CONFERENCE ON REVERSE ENGINEERING (WCRE), 2013, : 142 - 151
  • [50] GUI bloopers: Don'ts and do's for software developers
    Romaine, GH
    TECHNICAL COMMUNICATION, 2001, 48 (03) : 325 - 327