The traceability forensics project at the University of East Anglia School of Computing Science is research aimed at understanding how we can rebuild missing traceability data and links in legacy software with incomplete or partial information. The ultimate aim of the project is to identify, or create and augment, tools to find these links between what documentation does exist and actual source code.
The project will analyse existing techniques in reverse engineering and documentation analysis, augmenting or building new tools if required, with an aim to bring these sources of information together.
Specifically the codebase of a system  will be analysed using reverse engineering techniques  to produce output(s) in various formats . What documentation, in natural language, that does exist  will be processed  into a machine-readable format .
Once these steps have been completed an attempt can be made to link the source code analysis with the documentation  to attempt and build up a relationship between them, specifically looking for traceability links. Once an initial attempt to link the source code and documentation together has been made gaps in the knowledge can be identified .
Filling these gaps  may consist of an iterative process, repeating the original discovery methods but with a better concept of the structure and architecture of the system, or through the use of comparison with alternative existing systems held in a design library .
Once analysis is completed the aim will be to reconstruct output . The reconstructed output will likely be a set of confidence-weighted alternatives  where, with no absolute and clear answer, a range of possible options will be generated along with the reasoning behind this option and how likely it is to be entirely correct.
David Cutting, Joost Noppen
Copyright© 2016, School of Computing Sciences, University of East Anglia, Norwich, Norfolk, United Kingdom. All Rights Reserved.