Skip to main navigation Skip to search Skip to main content

Tackling Knowledge Needs during Software Evolution

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

Abstract

Developers use a large amount of their time to understand the system they work on, an activity referred to as program comprehension. Especially software evolution and forgetting over time lead to developers becoming unfamiliar with a system. To support them during program comprehension, we can employ knowledge recovery to reverse engineer implicit information from the system and the platform (e.g., GitHub) it is hosted on. However, to recover useful knowledge and to provide it in a useful way, we first need to understand what knowledge developers forget to what extent, what sources are reliable to recover knowledge, and how to trace knowledge to the features in a system. We tackle these three issues, aiming to provide empirical insights and tooling to support developers during software evolution and maintenance. The results help practitioners, as we support the analysis and understanding of systems, as well as researchers, showing opportunities to automate, for example, reverse-engineering techniques.
Original languageEnglish
Title of host publicationESEC/FSE 2019: Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering
PublisherAssociation for Computing Machinery, Inc.
Pages1244-1246
Number of pages3
ISBN (Print)978-1-4503-5572-8
DOIs
Publication statusPublished - 2019
Externally publishedYes

Keywords

  • Program comprehension
  • Feature traceability
  • Forgetting
  • Memory
  • Software maintenance
  • Software evolution

Fingerprint

Dive into the research topics of 'Tackling Knowledge Needs during Software Evolution'. Together they form a unique fingerprint.

Cite this