How Explicit Feature Traces Did Not Impact Developers' Memory
Paper in proceeding, 2021

Software features are intuitive entities used to abstract and manage the functionalities of a software system, for instance, in product-line engineering and agile software development. Nonetheless, developers rarely make features explicit in code, which is why they have to perform costly program comprehension and particularly feature location to (re-)gain knowledge about the code. In a previous paper, we conducted an experiment on how explicit feature traces impact developers' program comprehension by facilitating feature location. We found that annotating features in code improved program comprehension, while decomposing them into classes had a negative impact. Additionally, but not reported in that paper, we were concerned with understanding whether the different traces would impact developers' memory regarding the code and its features. To this end, we repeatedly asked our participants questions about the code on different levels of detail within time periods of two weeks. Since developers' memory decays over time, we expected that our participants would provide fewer correct answers over time, with differences depending on the feature traces in their code. Unfortunately, the actual results were inconclusive and up for interpretation, particularly due to challenges in designing an experiment on developers' memory. In this paper, we discuss our experimental design, the null results, and challenges for improving the methodology of future studies in this direction.

program comprehension

traceability

Feature orientation

human memory

psychology

Author

Jacob Krüger

Otto-von-Guericke University

Gul Calikli

University of Zürich

Thorsten Berger

University of Gothenburg

Software Engineering 2

Ruhr-Universität Bochum

Thomas Leich

Harz University of Applied Sciences

Proceedings - 2021 IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021

610-613 9425954
9781728196305 (ISBN)

28th IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021
Virtual, Online, USA,

Subject Categories (SSIF 2025)

Software Engineering

DOI

10.1109/SANER50967.2021.00075

More information

Latest update

9/28/2026