Skip to main content

To Memorize or to Document: A Survey of Developers’ Views on Knowledge Availability

  • Conference paper
  • First Online:
Product-Focused Software Process Improvement (PROFES 2023)

Abstract

When developing, maintaining, or evolving a system, developers need different types of knowledge (e.g., domain, processes, architecture). They may have memorized (but potentially not documented) the knowledge they perceive important, while they need to recover knowledge that they could not memorize. Previous research has focused on knowledge recovery, but not on what knowledge developers consider important to memorize or document. We address this gap by reporting a survey among 37 participants in which we investigated developers’ perspectives on different types of knowledge. Our results indicate that the developers consider certain types of knowledge more important than others, particularly with respect to memorizing them—while all of them should be documented, using specific means. Such insights help researchers and practitioners understand developers’ knowledge and documentation needs within processes, thereby guiding practices and new techniques.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://doi.org/10.5281/zenodo.8391861.

  2. 2.

    https://www.sunet.se/services/samarbete/enkatverktyg.

References

  1. Aghajani, E., et al.: Software documentation: the practitioners’ perspective. In: ICSE. ACM (2020)

    Google Scholar 

  2. Anquetil, N., de Oliveira, K.M., de Sousa, K.D.: Batista Dias. Software Maintenance Seen as a Knowledge Management Issue. Inf Softw Technol, M.G. (2007)

    Google Scholar 

  3. Baltes, S., Diehl, S.: Worse than spam: issues in sampling software developers. In: ESEM. ACM (2016)

    Google Scholar 

  4. Dominic, J., Ritter, C., Rodeghero, P.: Onboarding bot for newcomers to software engineering. In: ICSSP. ACM (2020)

    Google Scholar 

  5. Fluri, B., Würsch, M., Gall, H.C.: Do code and comments co-evolve? on the relation between source code and comment changes. In: WCRE. IEEE (2007)

    Google Scholar 

  6. Ju, A., Sajnani, H., Kelly, S., Herzig, K.: A case study of onboarding in software teams: tasks and strategies. In: ICSE. IEEE (2021)

    Google Scholar 

  7. Kang, K., Hahn, J.: Learning and forgetting curves in software development: does type of knowledge matter? In: ICIS. AIS (2009)

    Google Scholar 

  8. Koschke, R.: Architecture reconstruction: tutorial on reverse engineering to the architectural level. In: ISSSE. Springer (2009)

    Google Scholar 

  9. Krüger, J., Hebig, R.: What developers (care to) recall: an interview survey on smaller systems. In: ICSME. IEEE (2020)

    Google Scholar 

  10. Krüger, J., Hebig, R.: What data scientists (care to) recall. In: PROFES. Springer (2023)

    Google Scholar 

  11. Krüger, J., Mukelabai, M., Gu, W., Shen, H., Hebig, R., Berger, T.: Where is My Feature and What is it About? A Case Study on Recovering Feature Facets, J Syst Softw (2019)

    Google Scholar 

  12. Krüger, J., Nielebock, S., Heumüller, R.: How Can I Contribute? A Qualitative Analysis of Community Websites of 25 Unix-Like Distributions. In: EASE. ACM (2020)

    Google Scholar 

  13. Krüger, J., Wiemann, J., Fenske, W., Saake, G., Leich, T.: Do you remember this source code? In: ICSE. ACM (2018)

    Google Scholar 

  14. LaToza, T.D., Myers, B.A.: Developers ask reachability questions. In: ICSE. ACM (2010)

    Google Scholar 

  15. von Mayrhauser, A., Vans, A.M.: Program comprehension during software maintenance and evolution. Computer 28, 44–55 (1995)

    Article  Google Scholar 

  16. Nielebock, S., Krolikowski, D., Krüger, J., Leich, T., Ortmeier, F.: Commenting source code: is it worth it for small programming tasks? Empir. Softw. Eng. 24, 1418–1457 (2019)

    Article  Google Scholar 

  17. Parnin, C., Rugaber, S.: Programmer information needs after memory failure. In: ICPC. IEEE (2012)

    Google Scholar 

  18. R Core Team: R: A language and environment for statistical computing. R Foundation for Statistical Computing (2023). https://www.R-project.org

  19. Roehm, T., Tiarks, R., Koschke, R., Maalej, W.: How do professional developers comprehend software? In: ICSE. IEEE (2012)

    Google Scholar 

  20. Schröter, I., Krüger, J., Siegmund, J., Leich, T.: Comprehending studies on program comprehension. In: ICPC. IEEE (2017)

    Google Scholar 

  21. Siegmund, J., Kästner, C., Liebig, J., Apel, S., Hanenberg, S.: Measuring and modeling programming experience. Empir. Softw. Eng. 19, 1299–1334 (2014)

    Article  Google Scholar 

  22. Steinmacher, I.F., Graciotto Silva, M.A., Gerosa, M.A., Redmiles, D.F.: A systematic literature review on the barriers faced by newcomers to open source software projects. Inf. Softw. Technol. 59, 67–85 (2015)

    Article  Google Scholar 

  23. Zimmermann, T.: Card-sorting: from text to themes. In: Perspectives on Data Science for Software Engineering, pp. 137–141. Elsevier (2016)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jacob Krüger .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Krüger, J., Hebig, R. (2024). To Memorize or to Document: A Survey of Developers’ Views on Knowledge Availability. In: Kadgien, R., Jedlitschka, A., Janes, A., Lenarduzzi, V., Li, X. (eds) Product-Focused Software Process Improvement. PROFES 2023. Lecture Notes in Computer Science, vol 14483. Springer, Cham. https://doi.org/10.1007/978-3-031-49266-2_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-49266-2_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-49265-5

  • Online ISBN: 978-3-031-49266-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics