An important architectural challenge is to recover traceability links between the software architecture and artifacts produced in the other activities of the development process, such as requirements, detailed design, architectural knowledge, and implementation. This is challenging because, on the one hand, it is desirable to recover traceability links of a high quality and at the right quantity for aiding the software architect or developer, but, on the other hand, the costs and efforts spent for recovering should be as low as possible. The literature suggests manual, semi-automatic, and automatic recovery methods, each of which exhibits different impacts on costs as well as quantity and quality of the recovered links. To date, however, none of the published empirical studies have comparatively examined the automation alternatives of traceability link recovery. This paper reports on a controlled experiment that was conducted to investigate how well typical results produced by the three automation alternatives support human software developers in architecture-level understanding of the software system. The results provide statistical evidence that a focus on automated information retrieval (IR) based traceability recovery methods significantly reduces the quantity and quality of the elements retrieved by the software developers, whereas no significant differences between manual and semi-automatic traceability link recovery were found.
['Muhammad Atif Javed', 'Srdjan Stevanetic', 'Uwe Zdun']
Cost-Effective Traceability Links for Architecture-Level Software Understanding: A Controlled Experiment