Skip to main content
Log in

Requirements traceability recovery for the purpose of software reuse: an interactive genetic algorithm approach

  • S.I. : Software and Systems Reuse
  • Published:
Innovations in Systems and Software Engineering Aims and scope Submit manuscript

Abstract

Traceability allows engineers to trace and monitor the relationships between software artifacts. Monitoring these relationships is vital to many software engineering activities such as software understanding and reuse. Grasping these relationships is studied in the framework of Requirement Traceability Recovery (RTR). RTR is vital to software reuse as it allows the identification and comparison of requirements of new and existing systems, and hence the reuse of software system components. Due to the difficulties in recovering the traceability links manually, only few software development processes take the monitoring of these relationships fully into account. Many attempts to automate the RTR task that enjoyed some success are based on methods from the field of information retrieval. However, these methods only concentrate on calculating the textual similarity between various software artifacts and do not take into account other properties of the artifacts. In this paper, we propose a search-based RTR approach using genetic algorithms, that relies not only on semantic similarity between software artifacts, but also takes into account the history of reuse of the artifacts, and incorporates knowledge into RTR in the form of user (designer/developer) feedback. Experimental results show that the approach is promising.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

References

  1. Mäder P, Egyed A (2012) Assessing the effect of requirements traceability for software maintenance. In: 2012 28th IEEE International Conference on Software Maintenance (ICSM), IEEE

  2. Adithya V, Deepak G (2021) OntoReq: an ontology focused collective knowledge approach for requirement traceability modelling. European, Asian, Middle Eastern, North African conference on management & information systems. Springer, Berlin

    Google Scholar 

  3. Falessi D et al (2017) Estimating the number of remaining links in traceability recovery. Empir Softw Eng 22(3):996–1027

    Article  Google Scholar 

  4. Pandian R, Kumar A (2019) Enhanced requirement traceability link using developer’s updated activity. Modeling methods for business information systems analysis and design. IGI Global, London, pp 78–92

    Google Scholar 

  5. Zhao T, Cao Q, Sun, Q (2017) An improved approach to traceability recovery based on word embeddings. In: 2017 24th Asia-Pacific Software Engineering Conference (APSEC), IEEE

  6. Sale VM et al (2021) An effective approach for accuracy of requirement traceability in DevOps. Techno-societal 2020. Springer, Berlin, pp 623–637

    Chapter  Google Scholar 

  7. Kuang H et al (2017) Analyzing closeness of code dependencies for improving IR-based Traceability Recovery. In: 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER), IEEE

  8. Ali N et al (2019) Exploiting parts-of-speech for effective automated requirements traceability. Inf Softw Technol 106:126–141

    Article  Google Scholar 

  9. Santos LRJ et al (2020) Improving traceability recovery between bug reports and manual test cases. In: Proceedings of the 34th Brazilian Symposium on Software Engineering

  10. Chhabra JK (2017) Requirements traceability through information retrieval using dynamic integration of structural and co-change coupling. International conference on advanced informatics for computing research. Springer, Berlin

    Google Scholar 

  11. Saputri TRD, Lee S-W (2016) Ensuring traceability in modeling requirement using ontology based approach. In: Ch M (ed) Asia Pacific requirements engineering conference. Springer, Berlin

    Google Scholar 

  12. Kuang H et al (2019) Using frugal user feedback with closeness analysis on code to improve IR-based traceability recovery. In: 2019 IEEE/ACM 27th International Conference on Program Comprehension (ICPC), IEEE

  13. Gadelha G, Ramalho F, Massoni T (2021) Traceability recovery between bug reports and test cases-a Mozilla Firefox case study. Autom Softw Eng 28(2):1–46

    Article  Google Scholar 

  14. Gazzawe F (2021) Requirement artefacts: finding the missing link, framework to support requirement traceability for software developers. Loughborough University, Loughborough

    Google Scholar 

  15. Niu N, Wang W, Gupta A (2016) Gray links in the use of requirements traceability. In: Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering

  16. Blasco D, Cetina C, Pastor O (2020) A fine-grained requirement traceability evolutionary algorithm: Kromaia, a commercial video game case study. Inf Softw Technol 119:106235

    Article  Google Scholar 

  17. Ali N, Guéhéneuc YG, Antoniol G (2013) Trustrace: mining software repositories to improve the accuracy of requirement traceability links. IEEE Trans Softw Eng 39(5):725–741

    Article  Google Scholar 

  18. Li T et al (2020) Combining machine learning and logical reasoning to improve requirements traceability recovery. Appl Sci 10(20):7253

    Article  Google Scholar 

  19. Panichella A et al (2013) When and how using structural information to improve ir-based traceability recovery. In: 2013 17th European Conference on Software Maintenance and Reengineering, IEEE

  20. Wang H et al (2021) Analyzing close relations between target artifacts for improving IR-based requirement traceability recovery. Front Inf Technol Electron Eng 22(7):957–968

    Article  Google Scholar 

  21. Rodriguez DV, Carver DL (2019) Comparison of information retrieval techniques for traceability link recovery. In: 2019 IEEE 2nd International Conference on Information and Computer Technologies (ICICT), IEEE

  22. Ogheneovo E, Japheth R (2016) Application of vector space model to query ranking and information retrieval. Int J Adv Res Comput Sci Softw Eng 6(5):42–47

    Google Scholar 

  23. Moran K et al (2020) Improving the effectiveness of traceability link recovery using hierarchical bayesian networks. In: 2020 IEEE/ACM 42nd International Conference on Software Engineering (ICSE), pp 873–885

  24. Hayes J et al (2007) Requirements tracing on target (RETRO): improving software maintenance through traceability recovery. Innov Syst Softw Eng 3(3):193–202

    Article  Google Scholar 

  25. Hayes JH, Dekhtyar A, Payne J (2018) The requirements tracing on target (RETRO). NET Dataset. In: 2018 IEEE 26th International Requirements Engineering Conference (RE), IEEE

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

    Article  Google Scholar 

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

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

  29. De Lucia A et al (2005) ADAMS Re-trace: a traceability recovery tool. In: 9th European Conference onSoftware Maintenance and Reengineering (CSMR'05) 2005

  30. Florez JM (2019) Automated fine-grained requirements-to-code traceability link recovery. In: 2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion), IEEE

  31. Zhang Y, Wan C, Jin B (2016) An empirical study on recovering requirement-to-code links. In: 2016 17th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD), IEEE

  32. McMillan C, Poshyvanyk D, Revelle M (2009) Combining textual and structural analysis of software artifacts for traceability link recovery. In: 2009 ICSE Workshop on Traceability in Emerging Forms of Software Engineering, IEEE

  33. Sundaram SK et al (2010) Assessing traceability of software engineering artifacts. Requir Eng 15(3):313–335

    Article  Google Scholar 

  34. Harman M, Mansouri SA, Zhang Y (2012) Search-based software engineering: Trends, techniques and applications. ACM Comput Surv 45(1):1–61

    Article  Google Scholar 

  35. Mahmood S, Ahmed M, Alshayeb M (2013) Reuse environments for software artifacts: Analysis framework. In: 2013 IEEE/ACIS 12th International Conference on Computer and Information Science (ICIS), IEEE

  36. Krueger CW (1992) Software reuse. ACM Comput Surv (CSUR) 24(2):131–183

    Article  Google Scholar 

  37. Frakes WB, Kang K (2005) Software reuse research: status and future. IEEE Trans Softw Eng 31(7):529–536

    Article  Google Scholar 

  38. Morisio M, Ezran M, Tully C (2002) Success and failure factors in software reuse. IEEE Trans Softw Eng 28(4):340–357

    Article  MATH  Google Scholar 

  39. Keswani R, Joshi S, Jatain A (2014) Software reuse in practice. In: 2014 Fourth International Conference on Advanced Computing and Communication Technologies, IEEE

  40. Sherif K, Appan R, Lin Z (2006) Resources and incentives for the adoption of systematic software reuse. Int J Inf Manag 26(1):70–80

    Article  Google Scholar 

  41. Sommerville I (2011). In: Horton M (ed) Software engineering, 9th edn. Pearson Education, Inc., Addison-Wesley, ISBN: 0-13-703515-2, 978-0-13-703515-1

  42. Heinemann L (2012) Effective and efficient reuse with software libraries. Technische Universität München, München

    Google Scholar 

  43. Mojica IJ et al (2013) A large-scale empirical study on software reuse in mobile apps. IEEE Softw 31(2):78–86

    Article  Google Scholar 

  44. Buccella A et al (2013) Towards systematic software reuse of gis: insights from a case study. Comput Geosci 54:9–20

    Article  Google Scholar 

  45. Lliteras AB et al (2020) Development, reuse, and repurposing of software artifacts in Digital Citizen Science. Are we reinventing the wheel? In: The VI Iberoamerican Conference of Computer Human Interaction, K.R.-P.a.K.O. Villalba-Condori, Editor. 2020: Arequipa, Perú, September 16–18, 2020

  46. Capilla R et al (2019) Opportunities for software reuse in an uncertain world: From past to emerging trends. J Softw 31(8):217

    Google Scholar 

  47. Mikkonen T, Taivalsaari A (2019) Software reuse in the era of opportunistic design. IEEE Softw 36(3):105–111

    Article  Google Scholar 

  48. Mäkitalo N et al (2020) On opportunistic software reuse. Computing 102(11):2385–2408

    Article  Google Scholar 

  49. Krüger J, Berger T (2020) An empirical analysis of the costs of clone-and platform-oriented software reuse. In: Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering

  50. Zhang H et al (2016) Bing developer assistant: improving developer productivity by recommending sample code. In: Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering

  51. Wang Y, Feng Y, Martins R, Kaushik A, Dillig I, Reiss SP (2016) Type-directed code reuse using integer linear programming. arXiv preprint https://arxiv.org/abs/1608.07745. Accessed 26 Nov 2021

  52. Colvin E, Kraft DH (2016) Fuzzy retrieval for software reuse. J Am Soc Inf Sci 67(10):2454–2463

    Google Scholar 

  53. Selby RW (2005) Enabling reuse-based software development of large-scale systems. IEEE Trans Software Eng 31(6):495–510

    Article  Google Scholar 

  54. Spanoudakis G, Zisman A (2005) Software traceability: a roadmap. Handbook of software engineering and knowledge engineering: vol 3: recent advances. World Scientific, London, pp 395–428

    Chapter  Google Scholar 

  55. Pohl K (1996) Process-centered requirements engineering. John Wiley and Sons Inc, New Jersey

    Google Scholar 

  56. Pohl K, Rupp C (2015). In: Barabas M (ed) Requirements engineering fundamentals: a study guide for the certified professional for requirements engineering exam—foundation level—IREB compliant, 2nd edn. Rocky Nook Inc., ISBN: 978-1-937538-77-4

  57. Egyed A, Grunbacher P (2002) Automating requirements traceability: beyond the record & replay paradigm. In: Proceedings 17th IEEE International Conference on Automated Software Engineering, IEEE.

  58. Gotel OCZ, Finkelstein ACW (1994) An analysis of the requirements traceability problem. In: Proceedings of the First International Conference on Requirements Engineering (RE94)

  59. Kaindl H (1993) The missing link in requirements engineering. ACM SIGSOFT Softw Eng Notes 18(2):30–39

    Article  Google Scholar 

  60. Lindvall M, Sandahl K (1996) Practical implications of traceability. Software 26(10):1161–1180

    Google Scholar 

  61. Ramesh B, Dhar V (1992) Supportin systems development using knowledge captured during requirements engineering. IEEE Trans Softw Eng 9(2):498–510

    Article  Google Scholar 

  62. Spanoudakis G et al (2004) Rule-Based Generation of Requirements Traceability Relations. J Syst Softw 72:105–127

    Article  Google Scholar 

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

    Article  Google Scholar 

  64. Elamin R, Osman R (2018) Implementing traceability repositories as graph databases for software quality improvement. In: 2018 IEEE International Conference on Software Quality, Reliability and Security (QRS), IEEE

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

    Article  Google Scholar 

  66. Nagano S, Ichikawa Y, Kobayashi T (2012) Recovering traceability links between code and documentation for enterprise project artifacts. In: 2012 IEEE 36th Annual Computer Software and Applications Conference, IEEE

  67. Marcus A, Maletic JI (2003) Recovering documentation-to-source-code traceability links using latent semantic indexing. In: 25th International Conference on Software Engineering, Proceedings, IEEE

  68. Mäder P, Gotel O, Philippow I (2009) Enabling automated traceability maintenance through the upkeep of traceability relations. In: Ch M (ed) European conference on model driven architecture-foundations and applications. Springer, Berlin

    Google Scholar 

  69. Mäder P, Gotel O (2012) Towards automated traceability maintenance. J Syst Softw 85(10):2205–2227

    Article  Google Scholar 

  70. Cleland-Huang J, Chang CK, Ge Y (2002) Supporting event based traceability through high-level recognition of change events. In: Proceedings 26th Annual International Computer Software and Applications, IEEE

  71. Pinheiro FA, Goguen JA (1996) An object-oriented tool for tracing requirements. IEEE Softw 13(2):52–64

    Article  Google Scholar 

  72. Drivalos-Matragkas N et al (2010) A state-based approach to traceability maintenance. In: Proceedings of the 6th ECMFA Traceability Workshop

  73. Lago P, Muccini H, Van Vliet H (2009) A scoped approach to traceability management. J Syst Softw 82(1):168–182

    Article  Google Scholar 

  74. Mader P, Gotel O, Philippow I (2009) Getting back to basics: Promoting the use of a traceability information model in practice. In: 2009 ICSE Workshop on Traceability in Emerging Forms of Software Engineering, IEEE

  75. Elamin R, Osman R (2017) Towards requirements reuse by implementing traceability in agile development. In: 2017 IEEE 41st Annual Computer Software and Applications Conference (COMPSAC), IEEE

  76. Ramesh B (1998) Factors influencing requirements traceability practice. Commun ACM 41(12):37–44

    Article  Google Scholar 

  77. Ramesh B, Jarke M (2001) Toward reference models for requirements traceability. IEEE Trans Software Eng 27(1):58–93

    Article  Google Scholar 

  78. Schwarz H, Ebert J, Winter A (2010) Graph-based traceability: a comprehensive approach. Softw Syst Model 9(4):473–492

    Article  Google Scholar 

  79. Aizenbud-Reshef N et al (2006) Model traceability. IBM Syst J 45(3):515–526

    Article  Google Scholar 

  80. Asuncion HU, François F, Taylor RN (2007) An end-to-end industrial software traceability tool. In: Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering

  81. Witte R, Zhang Y, Rilling J (2007) Empowering software maintainers with semantic web technologies. European semantic web conference. Springer, Berlin

    Google Scholar 

  82. Sommerville I, Sawyer P (1997) RE: a good practice guide. John Wiley and Sons, New Jersey

    MATH  Google Scholar 

  83. Winkler S, von Pilgrim J (2010) A survey of traceability in requirements engineering and model-driven development. Softw Syst Model 9(4):529–565

    Article  Google Scholar 

  84. Dorfman M, Thayer RH (eds) (1990) Standards, guidelines and examples on system and software requirements engineering. In: IEEE computer society press tutorial volume 303; volume 305 of IEEE catalog. EHO. IEEE Computer Society Press. ISBN: 081865922X, 9780818659225

  85. Bayer J, Widen T (2001) Introducing traceability to product lines. International workshop on software product-family engineering. Springer, Berlin

    Google Scholar 

  86. Dick J (2002) Rich traceability. IEEE Softw 22:14–16

    Article  Google Scholar 

  87. Ali N, Gueheneuc YG, Antoniol G (2011) Requirements traceability for object oriented systems by partitioning source code. In: 2011 18th Working Conference on Reverse Engineering, IEEE

  88. Tsuchiya R et al (2013) Recovering traceability links between requirements and source code in the same series of software products. In: Proceedings of the 17th International Software Product Line Conference

  89. Ali N, Guéhéneuc YG, Antoniol G (2011) Trust-based requirements traceability. In: 2011 IEEE 19th International Conference on Program Comprehension, IEEE

  90. Li Z et al (2015) Recovering traceability links in requirements documents. In: Proceedings of the Nineteenth Conference on Computational Natural Language Learning

  91. Aung TWW, Huo H, Sui Y (2020) A literature review of automatic traceability links recovery for software change impact analysis. In: Proceedings of the 28th International Conference on Program Comprehension

  92. Erata F et al (2017) Tarski: a platform for automated analysis of dynamically configurable traceability semantics. In: Proceedings of the Symposium on Applied Computing 2017.

  93. Goknil A, Kurtev I, Van Den Berg K (2014) Generation and validation of traces between requirements and architecture based on formal trace semantics. J Syst Softw 88:112–137

    Article  Google Scholar 

  94. Cleland-Huang J et al (2007) Best practices for automated traceability. Computer 40(6):27–35

    Article  Google Scholar 

  95. Lormans M, Van Deursen A (2005) Reconstructing requirements coverage views from design and test using traceability recovery via LSI. In: Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering

  96. Harry B (2011) The importance of feedback in software development. https://devblogs.microsoft.com/bharry/the-importance-of-feedback-in-software-development/. Accessed 26 Nov 2021

  97. Karahasanoviæ A et al (2005) Collecting feedback during software engineering experiments. Empir Softw Eng 10(2):113–147

    Article  Google Scholar 

  98. Morales-Ramirez I, Perini A, Guizzardi RS (2015) An ontology of online user feedback in software engineering. Appl Ontol 10(3–4):297–330

    Article  Google Scholar 

  99. Vargas EL et al (2018) Enabling real-time feedback in software engineering. In: Proceedings of the 40th International Conference on Software Engineering: New Ideas and Emerging Results

  100. Johanssen JO et al (2019) How do practitioners capture and utilize user feedback during continuous software engineering? In: 2019 IEEE 27th International Requirements Engineering Conference (RE), IEEE

  101. Goldberg ED (1989) Genetic algorithms in search optimization and machine learning. Addison-Wesley Longman Publishing Co., Inc, Boston, p 372

    Google Scholar 

  102. Mitchell M (1998) An introduction to genetic algorithms. MIT Press, Cambridge, p 209

    Book  MATH  Google Scholar 

  103. Harbich S (2007) Einführung genetischer algorithmen mit anwendungsbeispiel. Universität Magdeburg, December, 2007

  104. Araújo AA et al (2017) An architecture based on interactive optimization and machine learning applied to the next release problem. Autom Softw Eng 24(3):623–671

    Article  Google Scholar 

  105. Kaliakatsos-Papakostas MA, Floros A, Vrahatis MN (2016) Interactive music composition driven by feature evolution. Springerplus 5(1):1–38

    Article  Google Scholar 

  106. Khajeh M, Payvandy P, Derakhshan SJ (2016) Fashion set design with an emphasis on fabric composition using the interactive genetic algorithm. Fash Text 3(1):1–16

    Article  Google Scholar 

  107. Johnston VS, Caldwell C (1997) Tracking a criminal suspect through face space with a genetic algorithm (Chapter: G8.3). In: Bäck T, Fogel DB, Michalewicz Z (eds) Handbook of Evolutionary Computation, release 97/1. IOP Publishing Ltd and Oxford University Press, pp G8.3:1–G8.3:8. https://b-ok.asia/book/703833/4a78e6

  108. Kim H-S, Cho S-B (2000) Application of interactive genetic algorithm to fashion design. Eng Appl Artif Intell 13(6):635–644

    Article  Google Scholar 

  109. Tokui N, Iba H (2000) Music composition with interactive evolutionary computation. In: Proceedings of the Third International Conference on Generative Art

  110. Takagi H, Ohsaki M (2007) Interactive evolutionary computation-based hearing aid fitting. Evolut Comput IEEE Trans 11(3):414–427

    Article  Google Scholar 

  111. Takagi H (2001) Interactive evolutionary computation: fusion of the capabilities of EC optimization and human evaluation. Proc IEEE 89(9):1275–1296

    Article  Google Scholar 

  112. Mwangi W, Cheruiyot W (2017) A survey of information retrieval techniques. Adv Netw 5(2):40

    Article  Google Scholar 

  113. Saleem M, Minhas NM (2018) Information retrieval based requirement traceability recovery approaches-a systematic literature review. Univ Sindh J Inf Commun Technol 2(4):180–188

    Google Scholar 

  114. Gudivada VN, Rao D, Gudivada AR (2018) Information retrieval: concepts, models, and systems. Elsevier, Amsterdam

    MATH  Google Scholar 

  115. Abu-Salih B (2018) Applying vector space model (VSM) techniques in information retrieval for arabic language. arXiv preprint https://arxiv.org/abs/1801.03627. Accessed 26 Nov 2021

  116. Van Nguyen T et al (2017) Combining word2vec with revised vector space model for better code retrieval. In: 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C), IEEE.

  117. Marcus A, Maletic JI, Sergeyev A (2005) Recovery of traceability links between software documentation and source code. Int J Softw Eng Knowl Eng 15(05):811–836

    Article  Google Scholar 

  118. Lapeña R et al (2018) Exploring new directions in traceability link recovery in models: The process models case. International conference on advanced information systems engineering. Springer, Berlin

    Google Scholar 

  119. Wang X, Lai G, Liu C (2009) Recovering relationships between documentation and source code based on the characteristics of software engineering. Electron Notes Theor Comput Sci 243:121–137

    Article  Google Scholar 

  120. Tsuchiya R et al (2015) Recovering traceability links between requirements and source code using the configuration management log. IEICE Trans Inf Syst 98(4):852–862

    Article  Google Scholar 

  121. De Lucia A et al (2013) Applying a smoothing filter to improve ir-based traceability recovery processes: An empirical investigation. Inf Softw Technol 55(4):741–754

    Article  Google Scholar 

  122. Winkler S (2009) Trace retrieval for evolving artifacts. In: 2009 ICSE Workshop on Traceability in Emerging Forms of Software Engineering, IEEE

  123. Panichella A, De Lucia A, Zaidman A (2015) Adaptive user feedback for ir-based traceability recovery. In: 2015 IEEE/ACM 8th International Symposium on Software and Systems Traceability, IEEE

  124. Alvarez-Rodríguez JM et al (2020) Semantic recovery of traceability links between system artifacts. Int J Softw Eng Knowl Eng 30(10):1415–1442

    Article  Google Scholar 

  125. Rodriguez DV, Carver DL (2020) An IR-based artificial bee colony approach for traceability link recovery. In: 2020 IEEE 32nd International Conference on Tools with Artificial Intelligence (ICTAI), IEEE

  126. Tinnes C et al (2019) Ideas on improving software artifact reuse via traceability and self-awareness. In: 2019 IEEE/ACM 10th International Symposium on Software and Systems Traceability (SST), IEEE

  127. Mills C et al (2017) Predicting query quality for applications of text retrieval to software engineering tasks. ACM Trans Softw Eng Methodol (TOSEM) 26(1):1–45

    Article  MathSciNet  Google Scholar 

  128. Bäck T (1996) Evolutionary algorithms in theory and practice: evolution strategies, evolutionary programming, genetic algorithms. Oxford University Press, Oxford, p 314

    Book  MATH  Google Scholar 

  129. Chang-Yong L (2003) Entropy-Boltzmann selection in the genetic algorithms. IEEE Trans Syst Man Cybern Part B 33(1):138–149

    Article  MathSciNet  Google Scholar 

  130. Miller BL, Goldberg DE (1996) Genetic algorithms, selection schemes, and the varying effects of noise. Evol Comput 4(2):113–131

    Article  Google Scholar 

  131. Baker JE (1985) Adaptive selection methods for genetic algorithms. Proceedings of the 1st international conference on genetic algorithms. L Erlbaum Associates Inc, Berlin, pp 101–111

    Google Scholar 

  132. Durillo JJ et al (2009) On the effect of the steady-state selection scheme in multi-objective genetic algorithms. In: Ehrgott M (ed) Evolutionary multi-criterion optimization: 5th international conference, EMO 2009, Nantes, France, April 7–10. Springer, Berlin, pp 183–197

    Chapter  Google Scholar 

  133. Said MABM (2007) Comparison for selection techniques in genetic algorithm in faculty of computer systems and software engineering. University College of Engineering and Technology, Malaysia, p 180

    Google Scholar 

  134. Mayilvaganan M, Geethamani GS (2015) Analysis of roulette wheel selection and steady state selection using genetic algorithm techniques. Int J Comput Organ Trends 20(1):21–25

    Article  Google Scholar 

  135. Jain A et al (2017) Information retrieval using cosine and jaccard similarity measures in vector space model. Int J Comput Appl 164(6):28–30

    Google Scholar 

  136. Havrlant L, Kreinovich V (2017) A simple probabilistic explanation of term frequency-inverse document frequency (tf-idf) heuristic (and variations motivated by this explanation). Int J Gen Syst 46(1):27–36

    Article  MathSciNet  Google Scholar 

  137. Wohlin C et al (2000) Experimentation in software engineering-an introduction. Kluwer Academic Publishers, Doedrecht

    Book  MATH  Google Scholar 

  138. Oliveto R et al (2010) On the equivalence of information retrieval methods for automated traceability link recovery. In: 2010 IEEE 18th International Conference on Program Comprehension, IEEE

  139. Ben CE et al (2011) Towards a benchmark for traceability. In: Proceedings of the 12th International Workshop on Principles of Software Evolution and the 7th annual ERCIM Workshop on Software Evolution

  140. Antoniol G et al (2000) Information retrieval models for recovering traceability links between code and documentation. In: Proceedings of the International Conference on Software Maintenance (ICSM'00), IEEE Computer Society, p 40

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

  142. Mehlhorn K, Näher S (1999) LEDA: A platform for combinatorial and geometric computing. Cambridge University Press, Cambridge

    MATH  Google Scholar 

  143. Arora M, Kanjilal U, Varshney D (2016) Evaluation of information retrieval: precision and recall. Int J Indian Cult Bus Manag 12(2):224–236

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohamed Salah Hamdi.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Hamdi, M.S., Ghannem, A. & Kessentini, M. Requirements traceability recovery for the purpose of software reuse: an interactive genetic algorithm approach. Innovations Syst Softw Eng 18, 193–213 (2022). https://doi.org/10.1007/s11334-021-00418-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11334-021-00418-2

Keywords