kirancodes.me
To Proof Maintenance & Beyond!

Code patterns for automatically validating requirements-to-code traces

Achraf Ghabi, Alexander Egyed

Abstract

Traces between requirements and code reveal where requirements are implemented. Such traces are essential for code understanding and change management. Unfortunately, traces are known to be error prone. This paper introduces a novel approach for validating requirements-to-code traces through calling relationships within the code. As input, the approach requires an executable system, the corresponding requirements, and the requirements-to-code traces that need validating. As output, the approach identifies likely incorrect or missing traces by investigating patterns of traces with calling relationships. The empirical evaluation of four case study systems covering 150 KLOC and 59 requirements demonstrates that the approach detects most errors with 85-95% precision and 82-96% recall and is able to handle traces of varying levels of correctness and completeness. The approach is fully automated, tool supported, and scalable.

BibTeX
@inproceedings{Ghabi-Egyed:ASE12,
  author    = {Achraf Ghabi and
               Alexander Egyed},
  title     = {Code patterns for automatically validating requirements-to-code traces},
  booktitle = {ASE},
  pages     = {200--209},
  publisher = {{ACM}},
  year      = {2012},
}

Related papers