Recovering Traceability Links between Requirements and Source Code Using the Configuration Management Log

Ryosuke TSUCHIYA  Hironori WASHIZAKI  Yoshiaki FUKAZAWA  Tadahisa KATO  Masumi KAWAKAMI  Kentaro YOSHIMURA  

IEICE TRANSACTIONS on Information and Systems   Vol.E98-D   No.4   pp.852-862
Publication Date: 2015/04/01
Online ISSN: 1745-1361
DOI: 10.1587/transinf.2014EDP7199
Type of Manuscript: PAPER
Category: Software Engineering
traceability recovery,  configuration management log,  commonality and variability analysis,  software product line,  

Full Text: PDF(741.9KB)>>
Buy this Article

Traceability links between requirements and source code are helpful in software reuse and maintenance tasks. However, manually recovering links in a large group of products requires significant costs and some links may be overlooked. Here, we propose a semi-automatic method to recover traceability links between requirements and source code in the same series of large software products. In order to support differences in representation between requirements and source code, we recover links by using the configuration management log as an intermediary. We refine the links by classifying requirements and code elements in terms of whether they are common to multiple products or specific to one. As a result of applying our method to real products that have 60KLOC, we have recovered valid traceability links within a reasonable amount of time. Automatic parts have taken 13 minutes 36 seconds, and non-automatic parts have taken about 3 hours, with a recall of 76.2% and a precision of 94.1%. Moreover, we recovered some links that were unknown to engineers. By recovering traceability links, software reusability and maintainability will be improved.