Skip to main content

Search-Based Requirements Traceability Recovery

  • Conference paper
  • First Online:
Proceedings of SAI Intelligent Systems Conference (IntelliSys) 2016 (IntelliSys 2016)

Part of the book series: Lecture Notes in Networks and Systems ((LNNS,volume 15))

Included in the following conference series:

Abstract

Several software maintenance tasks, such as regression testing, require that the requirements traceability should be up-to-date. Generating requirements traceability consumes a lot of time and is error-prone. Currently most available tools do not offer the automated recovery of traceability links. In the approach presented in this paper, we formulate requirements traceability recovery as a search problem using Genetic Algorithms. Our approach takes as input the software system and a requirement set and produces a set of traces between the classes of the system and the requirements introduced in the input as output. A solution consists of assigning each requirement to one or many classes of the system that should maximize as much as possible the textual similarity between the description of the requirements and the name of code elements, API documentation, and comments. The validation results on three different open source projects show that our approach is effective in correctly generating the traces between the requirements and classes in the source code with a precision of 86% and a recall of 83%, both on average.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Cleland-Huang, J., et al.: Trace queries for safety requirements in high assurance systems. In: Regnell, B., Damian, D. (eds.) Proceedings on Requirements Engineering: Foundation for Software Quality: 18th International Working Conference, (REFSQ 2012), Essen, Germany, pp. 179–193. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  2. Hayes, J., et al.: REquirements TRacing On target (RETRO): improving software maintenance through traceability recovery. Innov. Syst. Softw. Eng. 3(3), 193–202 (2007)

    Article  Google Scholar 

  3. Brodén, L.: Requirements Traceability Recovery. Lund University, Lund (2011)

    Google Scholar 

  4. Goldberg, E.D.: Genetic Algorithms in Search Optimization and Machine Learning, p. 372. Addison-Wesley Longman Publishing Co., Inc., Reading (1989)

    Google Scholar 

  5. Harman, M., Mansouri, S.A., Zhang, Y.: Search-based software engineering: trends, techniques and applications. ACM Comput. Surv. 45(1), 1–61 (2012)

    Article  Google Scholar 

  6. Standish, CHAOS Manifesto: Think Big Act Small (2013)

    Google Scholar 

  7. Lyytinen, K.J., et al. (eds.): Design Requirements Engineering: A Ten-Year Perspective. Lecture Notes in Business Information Processing. Springer, Heidelberg (2009)

    Google Scholar 

  8. Pete Sawyer, B.P., Heymans, P.: Requirements engineering: foundation for software quality. In: 13th International Working Conference (REFSQ 2007), Trondheim, Norway, vol. 386. Springer, Heidelberg (2007)

    Google Scholar 

  9. ISO/IE-26702, IEEE Standard for Application and Management of the Systems Engineering Process. IEEE Std. 1220-2005 (Revision of IEEE Std. 1220-1998), p. 0_1–87 (2005)

    Google Scholar 

  10. Andersson, J., et al.: Modeling dimensions of self-adaptive software systems. In: Cheng, B.C., et al. (eds.) Software Engineering for Self-adaptive Systems, pp. 27–47. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  11. Ghannem, A., El Boussaidi, G., Kessentini, M.: Model refactoring using interactive genetic algorithm. In: Ruhe, G., Zhang, Y. (eds.) Search Based Software Engineering, pp. 96–110. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  12. Mitchell, M.: An Introduction to Genetic Algorithms, p. 209. MIT Press, Cambridge (1998)

    MATH  Google Scholar 

  13. Kirkpatrick, S., Gelatt, C.D., Vecchi, M.P.: Optimization by simulated annealing. Science 220(4598), 671–680 (1983)

    Article  MathSciNet  MATH  Google Scholar 

  14. Koza, R.J.: Genetic Programming: On the Programming of Computers by Means of Natural Selection, p. 680. MIT Press, Cambridge (1992)

    MATH  Google Scholar 

  15. Deb, K., et al.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002)

    Article  Google Scholar 

  16. Howe, C.D.: RiTa: creativity support for computational literature. In: Proceedings of the 7th ACM Conference on Creativity and Cognition, pp. 205–210. ACM, Berkeley (2009)

    Google Scholar 

  17. Antoniol, G., et al.: Recovering traceability links between code and documentation. IEEE Trans. Softw. Eng. (TSE) 28(10), 970–983 (2002)

    Article  Google Scholar 

  18. Gethers, M., et al.: On integrating orthogonal information retrieval methods to improve traceability recovery. In: 27th IEEE International Conference on Software Maintenance (ICSM 2011) (2011)

    Google Scholar 

  19. Challenge, T.: Proceedings of the 6th International Workshop on Traceability in Emerging Forms of Software Engineering. ACM, Waikiki (2011)

    Google Scholar 

  20. Nattoch Dag, J., et al.: A linguistic-engineering approach to large-scale requirements management. IEEE Softw. 22(1), 32–39 (2005)

    Article  Google Scholar 

  21. Jun, L., et al.: Poirot: a distributed tool supporting enterprise-wide automated traceability. In: 14th IEEE International Conference Requirements Engineering (RE 2006) (2006)

    Google Scholar 

  22. Lormans, M., van Deursen, A.: Can LSI help reconstructing requirements traceability in design and test? In: Proceedings of the 10th European Conference on Software Maintenance and Reengineering (CSMR 2006) (2006)

    Google Scholar 

  23. Marcus, A., Xie, X., Poshyvanyk, D.: When and how to visualize traceability links? In: Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering, pp. 56–61. ACM, Long Beach (2005)

    Google Scholar 

  24. De Lucia, A., et al.: ADAMS re-trace: a traceability recovery tool. In: 9th European Conference on Software Maintenance and Reengineering (CSMR 2005) (2005)

    Google Scholar 

  25. Zhang, Y., et al.: Ontological approach for the semantic recovery of traceability links between software artefacts. IET Softw. 2(3), 185–203 (2008)

    Article  Google Scholar 

  26. Spanoudakis, G., et al.: Rule-based generation of requirements traceability relations. J. Syst. Softw. (JSS) 72(2), 105–127 (2004)

    Article  Google Scholar 

  27. Evans, M.W.: The Software Factory. Wiley, New York (1989)

    Google Scholar 

  28. Bouillon, E., Mäder, P., Philippow, I.: A survey on usage scenarios for requirements traceability in practice. In: Doerr, J., Opdahl, A. (eds.) Requirements Engineering: Foundation for Software Quality, pp. 158–173. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  29. Jackson, J.: A keyphrase based traceability scheme. In: IEEE Colloquium on Tools and Techniques for Maintaining Traceability During Design (1991)

    Google Scholar 

  30. Gotel, O.C.Z., Finkelstein, A.C.W.: An analysis of the requirements traceability problem. In: Proceedings of the First International Conference on Requirements Engineering (RE 1994) (1994)

    Google Scholar 

  31. Deerwester, S., et al.: Indexing by latent semantic analysis. J. Am. Soc. Inf. Sci. 41(6), 391–407 (1990)

    Article  Google Scholar 

  32. Grechanik, M., McKinley, K.S., Perry, D.E.: Recovering and using use-case-diagram-to-source-code traceability links. In: Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 95–104. ACM, Dubrovnik (2007)

    Google Scholar 

  33. Asuncion, H.U., Asuncion, A.U., Taylor, R.N.: Software traceability with topic modeling. In: ACM/IEEE 32nd International Conference on Software Engineering (ICSE 2010) (2010)

    Google Scholar 

  34. Xiaofan, C., Grundy, J.: Improving automated documentation to code traceability by combining retrieval techniques. In: 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011) (2011)

    Google Scholar 

  35. Armstrong, B.T.: Can clustering improve requirements traceability? A tracelab-enabled study. Computer Science, Faculty of California Polytechnic State University San Luis Obispo (2013)

    Google Scholar 

Download references

Acknowledgements

This work was made possible by NPRP Grant# [7-662-2-247] from Qatar Research Fund (a member of Qatar Foundation). The findings achieved herein are solely the responsibility of the authors.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hany H. Ammar .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this paper

Cite this paper

Ghannem, A., Hamdi, M.S., Kessentini, M., Ammar, H.H. (2018). Search-Based Requirements Traceability Recovery. In: Bi, Y., Kapoor, S., Bhatia, R. (eds) Proceedings of SAI Intelligent Systems Conference (IntelliSys) 2016. IntelliSys 2016. Lecture Notes in Networks and Systems, vol 15. Springer, Cham. https://doi.org/10.1007/978-3-319-56994-9_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-56994-9_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-56993-2

  • Online ISBN: 978-3-319-56994-9

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics