Skip to section navigationSkip to content

Open Source Software

Contact Us:

NASA's Goddard Space
Flight Center

Code 504
8800 Greenbelt Road
Greenbelt, MD 20771


OSI Certified

The Technology Transfer and Partnerships Office
Requirements Tracing On target (RETRO)

Requirements Tracing On target (RETRO) assists users in tracing textual software engineering artifacts to each other using standard information retrieval techniques.

Requirements Tracing On target (RETRO) Goals

We applied information retrieval (IR) techniques to the problem of after the fact requirements tracing. We implemented three IR techniques -- (A) TF-IDF vector retrieval, (B) TF-IDF vector retrieval with simple thesaurus, and (C) Probabilistic Retrieval. Together with the methods already developed, we have implemented user feedback processing techniques. Feedback processing allows our requirements tracing software to establish a dialog with the analyst doing requirements tracing. Our tool RETRO contains these methods.

Project Goals

A - The fundamental purpose of Verification and Validation (V&V) and Independent Verification and Validation (IV&V) is to insure that the right processes have been used to build the right system. To that end, we must verify that the approved processes and artifacts are guiding development during each lifecycle phase as well as validate that all requirements have been implemented at the end of the lifecycle. A requirements traceability matrix (RTM) is a prerequisite for both of these. Unfortunately, developers either do not develop an RTM or not to the level of detail needed for IV&V. This necessitates that the IV&V agent build the RTM after the fact based on existing project artifacts. Currently available tools to support this error prone, person power intensive, tedious activity are few and/or provide little automation support.

B - Document levels must be traced to each other, with the user making the final decision of whether or not a pair of elements from each document are related to each other. Candidate links must be generated in an automated fashion (potential pairs of document elements that might relate), candidate links must be reviewed by the analyst, and feedback from the analyst must be collected to improve the next iteration of candidate links. Documents might be written by different people or companies, so terminology is very diverse. Requirements may only be a few sentences long, whereas most information retrieval methods are developed to work on significantly larger documents and collections.

C - Consider requirements in a high level document such as a System Specification being traced to elements in a lower level document such as a Software Requirement Specification. The state of the art of tracing is this: the documents must be parsed and requirements extracted from the two document levels (this has been accomplished by industry tools), an analyst will manually read each high level requirement and low-level element and assign keywords to each (this is currently manual, though some tools allow an analyst to build a keyword dictionary). A keyword-matching algorithm is then applied to build lists of low-level elements that may potentially satisfy a given high-level requirement. These are called candidate links. Next, an analyst reads (exhaustively) each candidate link for a given high level requirement and indicates whether it is a link or not.

D - Current approaches to after-the-fact tracing have numerous shortcomings: they require the user to perform interactive searches for potential linking requirements or design elements, they require the user to assign keywords to all the elements in both document levels prior to tracing, they return many potential or candidate links that are not correct, they fail to return correct links, and they do not allow user feedback to be provided to improve the quality of the candidate links. Also, they take much longer and are tedious, making them error prone.

Functional Goals

To address shortcomings A – D above.

Evolvability Goals

Scaling to additional ground radar types and locations. Inclusion of satellite microwave data, rain rates, gauge data. Addition of a user interface to the VN database.

Usability Goals

To continue to examine how user feedback can be used to improve tracing.

Software Packages

This software is released under the terms and conditions of the NASA Open Source Agreement (NOSA) Version 1.1 or later.

RETRO Software

NASA logo - link to
  • Page Last Updated: October 24, 2019
  • Page Editor: Adil Anis
  • NASA Official: Darryl Mitchell