Skip to main navigation Skip to search Skip to main content

Do You Remember This Source Code?

  • Jacob Krüger
  • , Jens Wiemann
  • , Wolfram Fenske
  • , Gunter Saake
  • , Thomas Leich

Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › Academic › peer-review

Abstract

Being familiar with the source code of a program comprises knowledge about its purpose, structure, and details. Consequently, familiarity is an important factor in many contexts of software development, especially for maintenance and program comprehension. As a result, familiarity is considered to some extent in many different approaches, for example, to model costs or to identify experts. Still, all approaches we are aware of require a manual assessment of familiarity and empirical analyses of forgetting in software development are missing. In this paper, we address this issue with an empirical study that we conducted with 60 open-source developers. We used a survey to receive information on the developers’ familiarity and analyze the responses based on data we extract from their used version control systems. The results show that forgetting is an important factor when considering familiarity and program comprehension of developers. We find that a forgetting curve is partly applicable for software development, investigate three factors – the number of edits, ratio of owned code, and tracking behavior – that can impact familiarity with code, and derive a general memory strength for our participants. Our findings can be used to scope approaches that have to consider familiarity and they provide insights into forgetting in the context of software development.
Original languageEnglish
Title of host publication2018 IEEE/ACM 40th International Conference on Software Engineering (ICSE)
PublisherAssociation for Computing Machinery, Inc.
Pages764-775
Number of pages12
ISBN (Print)978-1-4503-5638-1
DOIs
Publication statusPublished - 2018
Externally publishedYes

Keywords

  • Familiarity
  • Forgetting
  • Empirical Study
  • Maintenance
  • Program Comprehension
  • Expert Identification
  • Knowledge Management

Fingerprint

Dive into the research topics of 'Do You Remember This Source Code?'. Together they form a unique fingerprint.
  • Program Comprehension and Developers' Memory

    Krüger, J., Wiemann, J., Fenske, W., Saake, G. & Leich, T., 2019, INFORMATIK 2019: 50 Jahre Gesellschaft für Informatik (INFORMATIK). Gesellschaft für Informatik e.V. (GI), p. 99-100 2 p. (Lecture notes in informatics; vol. 294).

    Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › Academic › peer-review

    Open Access
  • Understanding How Programmers Forget

    Krüger, J., Wiemann, J., Fenske, W., Saake, G. & Leich, T., 2019, Software Engineering and Software Management (SE/SWM). Gesellschaft für Informatik e.V. (GI), p. 85-86 2 p. (Lecture notes in informatics; vol. 292).

    Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › Academic › peer-review

    Open Access

Cite this