Recovering Traceability Links Between Code and Documentation: A Retrospective

Software system documentation is almost always expressed informally in natural language and free text. Examples include requirement specifications, design documents, manual pages, system development journals, error logs, and related maintenance reports. In our 2002 seminal paper we proposed a method based on information retrieval to recover traceability links between source code and free text documents. A premise of our work was that programmers use meaningful names for program items, such as functions, variables, types, classes, and methods. The paper paved the way to the adoption of IR in software engineering opening a new perspective. Reflecting on the past twenty years we briefly overview the many results that have been achieved, however, the emergence of new technologies, such as AI, pose unprecedented challenges.

Authors

Institutions

Publication Details

Journal
IEEE Transactions on Software Engineering
Published
2025-01-27
DOI
https://doi.org/10.1109/tse.2025.3534027
Citations
1
Primary Topic
Software Engineering Research
Type
article
Field-Weighted Citation Impact
3.25
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Recovering Traceability Links Between Code and Documentation: A Retrospective

Gerardo Canfora, Giuliano Antoniol, Andrea De Lucia, Ettore Merlo et al.
1 citations
IEEE Transactions on Software Engineering
Software Engineering Research
3.25
article

Recovering Traceability Links Between Code and Documentation: A Retrospective

Gerardo Canfora, Giuliano Antoniol, Andrea De Lucia, Ettore Merlo, Gerardo Casazza
article en
1 citations

Abstract

Software system documentation is almost always expressed informally in natural language and free text. Examples include requirement specifications, design documents, manual pages, system development journals, error logs, and related maintenance reports. In our 2002 seminal paper we proposed a method based on information retrieval to recover traceability links between source code and free text documents. A premise of our work was that programmers use meaningful names for program items, such as functions, variables, types, classes, and methods. The paper paved the way to the adoption of IR in software engineering opening a new perspective. Reflecting on the past twenty years we briefly overview the many results that have been achieved, however, the emergence of new technologies, such as AI, pose unprecedented challenges.

IEEE Transactions on Software EngineeringVol. 51(3)
University of Salerno (IT), University of Sannio (IT), Digital Heritage Netherlands (NL), Polytechnique Montréal (CA), Denso (United States) (US)
Openalex Percentile: Top 11%
Software Engineering Research
3.25
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.