The Center for Applied Requirements Engineering at DePaul worked on requirements traceability: knowing which design documents, code, and tests correspond to which requirement, on systems too large for anyone to keep that in their head.

The usual answer is a trace matrix maintained by hand, which goes out of date as soon as the system changes. The center's research direction was to retrieve links instead of maintaining them: treat a requirement as a query, run it against the project's other artifacts, and rank what comes back.

The center was Jane Cleland-Huang'sJane Cleland-HuangFrank M. Freimann Professor and chair of computer science and engineering at Notre Dame, where she directs the Software and Requirements Engineering Research Lab. Ran DePaul's Center for Applied Requirements Engineering before moving to Notre Dame in 2016.LinkedIn ↗. I worked alongside Chuan DuanCDChuan DuanEngineer at Walleye Capital, with a PhD and a CFA. At DePaul he did doctoral research on automated requirements traceability with Jane Cleland-Huang, including the Poirot tool.LinkedIn ↗ and Monika AntosMAMonika AntosManages the enterprise applications portfolio at Uber. Worked at DePaul's Center for Applied Requirements Engineering.LinkedIn ↗.

Poirot TraceMaker

I worked on Poirot TraceMaker, a Java and Struts pilot for Siemens Corporate Research that put dynamic trace retrieval behind a web application. I built the testing framework the pilot was developed against.

A retrieval-based tracer returns a ranked list, so testing it means fixing a set of reference traces, running the retrieval, and scoring the ranking against them. That is how a change in ranking quality gets told apart from a change in the surrounding code.