Abstract
[Context & Motivation] Trace Link Recovery tries to identify and link related existing requirements with each other to support further engineering tasks. Existing approaches are mainly based on algebraic Information Retrieval or machine-learning. [Question/Problem] Machine-learning approaches usually demand reasonably large and labeled datasets to train. Algebraic Information Retrieval approaches like distance between tf-idf scores also work on smaller datasets without training but are limited in considering the context of semantic statements. [Principal Ideas/Results] In this work, we revise our existing Trace Link Recovery approach that is based on an explicit representation of the content of requirements as a semantic relation graph and uses Spreading Activation to answer trace queries over this graph. The approach generates sorted candidate lists and is fully automated including an NLP pipeline to transform unrestricted natural language requirements into a graph and does not require any external knowledge bases or other resources. [Contribution] To improve the performance, we take a detailed look at five common datasets and adapt the graph structure and semantic search algorithm. Depending on the selected configuration, the predictive power strongly varies. With the best tested configuration, the approach achieves a mean average precision of 50%, a Lag of 30% and a recall of 90%.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
Our Implementation: https://github.com/tub-aset/spreadingactivation.
- 3.
- 4.
- 5.
- 6.
References
Antoniol, G., Canfora, G., Casazza, G., De Lucia, A., Merlo, E.: Recovering traceability links between code and documentation. Trans. Softw. Eng. 28(10), 970–983 (2002). https://doi.org/10.1109/TSE.2002.1041053
Bonial, C., Bonn, J., Conger, K., Hwang, J., Palmer, M., Reese, N.: English PropBank annotation guidelines (2015). https://raw.githubusercontent.com/propbank/propbank-documentation/master/annotation-guidelines/Propbank-Annotation-Guidelines.pdf
Borg, M., Runeson, P., Ardö, A.: Recovering from a decade: a systematic mapping of information retrieval approaches to software traceability. Empir. Softw. Eng. 19(6), 1565–1616 (2013). https://doi.org/10.1007/s10664-013-9255-y
Borgida, A., Greenspan, S., Mylopoulos, J.: Knowledge representation as the basis for requirements specifications. In: Brauer, W., Radig, B. (eds.) Wissensbasierte Systeme, vol. 112, pp. 152–169. Springer, Heidelberg (1985). https://doi.org/10.1007/978-3-642-70840-4_13
Dermeval, D., et al.: Applications of ontologies in requirements engineering: a systematic review of the literature. Require. Eng. 21(4), 405–437 (2015). https://doi.org/10.1007/s00766-015-0222-6
Gotel, O., Finkelstein, C.W.: An analysis of the requirements traceability problem. Require. Eng. (1994). https://doi.org/10.1109/ICRE.1994.292398
Hartig, K.: Entwicklung eines information-retrieval-systems zur Unterstützung von Gefährdungs- und Risikoanalysen. Ph.D. thesis, Technische Universität Berlin (2019). https://doi.org/10.14279/depositonce-8408
He, L., Lee, K., Lewis, M., Zettlemoyer, L.: Deep semantic role labeling: what works and what’s next. In: Association for Computational Linguistics, pp. 473–483. ACL (2017). https://doi.org/10.18653/v1/p17-1044
Heindl, M., Biffl, S.: A case study on value-based requirements tracing. European Software Engineering Conference (2005). https://doi.org/10.1145/1081706.1081717
Herlocker, J.L., Konstan, J.A., Terveen, L.G., Riedl, J.T.: Evaluating collaborative filtering recommender systems. Trans. Inf. Syst. 22(1), 529–565 (2004). https://doi.org/10.1145/963770.963772
Huffman Hayes, J., Dekhtyar, A., Sundaram, S.K.: Advancing candidate link generation for requirements tracing: the study of methods. Trans. Softw. Eng. 32(1), 4–19 (2006). https://doi.org/10.1109/TSE.2006.3
Huffman Hayes, J., Dekhtyar, A., Osborne, J.: Improving requirements tracing via information retrieval. In: Requirements Engineering (2003). https://doi.org/10.1109/ICRE.2003.1232745
Huffman Hayes, J., Payne, J., Leppelmeier, M.: Toward improved artificial intelligence in requirements engineering: metadata for tracing datasets. In: Artificial Intelligence for Requirements Engineering, pp. 256–262. IEEE (2019). https://doi.org/10.1109/REW.2019.00052
Manning, C.D., Raghavan, P., Schutze, H.: Introduction to Information Retrieval. Cambridge University Press, Cambridge (2008). https://doi.org/10.1017/CBO9780511809071
Manning, C.D., Surdeanu, M., Bauer, J., Finkel, J., Bethard, S.J., McClosky, D.: The Stanford CoreNLP natural language processing toolkit. In: System Demonstrations, pp. 55–60. ACL (2014)
Mikolov, T., Chen, K., Corrado, G., Dean, J.: Efficient estimation of word representations in vector space. Computing Research Repository (2013). https://arxiv.org/abs/1301.3781
Mills, C.: Towards the automatic classification of traceability links. In: Automated Software Engineering (2017). https://doi.org/10.1109/ASE.2017.8115723
Pennington, J., Socher, R., Manning, C.D.: GloVe: global vectors for word representation. In: Empirical Methods in Natural Language Processing, pp. 1532–1543. ACL (2014). https://doi.org/10.3115/v1/d14-116
Robeer, M., Lucassen, G., van der Werf, J.M.E.M., Dalpiaz, F., Brinkkemper, S.: Automated extraction of conceptual models from user stories via NLP. In: Requirements Engineering, pp. 196–205. IEEE (2016). https://doi.org/10.1109/RE.2016.40
Salton, G.: Automatic Text Processing: The Transformation, Analysis, and Retrieval of Information by Computer. Addison-Wesley Longman Publishing Co., Inc., Boston (1989)
Schlutter, A., Vogelsang, A.: Knowledge representation of requirements documents using natural language processing. In: Natural Language Processing for Requirements Engineering. RWTH Aachen (2018). https://doi.org/10.14279/depositonce-7776
Schlutter, A., Vogelsang, A.: knowledge extraction from natural language requirements into a semantic relation graph. In: Knowledge Graph for Software Engineering). ACM (2020). https://doi.org/10.14279/depositonce-9772.2
Schlutter, A., Vogelsang, A.: Trace link recovery using semantic relation graphs and spreading activation. In: Requirements Engineering, pp. 20–31. IEEE (2020). https://doi.org/10.1109/RE48521.2020.00015
Shin, Y., Huffman Hayes, J., Cleland-Huang, J.: Guidelines for benchmarking automated software traceability techniques. In: Symposium on Software and Systems Traceability (2015). https://doi.org/10.1109/SST.2015.13
Singhal, A.: Modern information retrieval: a brief overview. Comput. Soc. Tech. Committee Data Eng. 24(4), 35–43 (2001). http://singhal.info/ieee2001.pdf
Winkler, S., von Pilgrim, J.: A survey of traceability in requirements engineering and model-driven development. Softw. Syst. Model. 9, 529–565 (2010). https://doi.org/10.1007/s10270-009-0145-0
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Schlutter, A., Vogelsang, A. (2021). Improving Trace Link Recovery Using Semantic Relation Graphs and Spreading Activation. In: Dalpiaz, F., Spoletini, P. (eds) Requirements Engineering: Foundation for Software Quality. REFSQ 2021. Lecture Notes in Computer Science(), vol 12685. Springer, Cham. https://doi.org/10.1007/978-3-030-73128-1_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-73128-1_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-73127-4
Online ISBN: 978-3-030-73128-1
eBook Packages: Computer ScienceComputer Science (R0)