Abstract
Software Architecture Documentation often consists of different artifacts. On the one hand, there is informal textual documentation. On the other hand, there are formal models of the system. Finding related information in multiple artifacts with different level of formality is often not easy. Therefore, trace links between these can help to understand the system. In this paper, we propose an extendable, agent-based framework for creating trace links between textual software architecture documentation and models. Our framework SWATTR offers different pipeline stages to extract text and model information, identify elements in text, and connect these elements to model elements. In each stage, multiple agents can be used to capture necessary information to automatically create trace links. We evaluate the performance of our approach with three case studies and compare our results to baseline approaches. The results for our approach are good to excellent with a weighted average \(F_1\)-Score of 0.72 over all case studies. Moreover, our approach outperforms the baseline approaches on non-weighted average by at least 0.24 (weighted 0.31).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice. Addison-Wesley Professional, Upper Saddle River (2003)
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
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002). https://doi.org/10.1109/4235.996017
Guo, J., Cheng, J., Cleland-Huang, J.: Semantically enhanced software traceability using deep learning techniques. In: 2017 IEEE/ACM 39th ICSE, pp. 3–14 (2017)
Hayes, J.H., Dekhtyar, A., Sundaram, S.K.: Advancing candidate link generation for requirements tracing: the study of methods. IEEE Trans. Software Eng. 32(1), 4 (2006)
Keim, J., Koziolek, A.: Towards consistency checking between software architecture and informal documentation. In: 2019 IEEE ICSA, pp. 250–253 (2019)
Keim, J., Schulz, S., Fuchß, D., Speit, J., Kocher, C., Koziolek, A.: SWATTR Reproduction Package (2021). https://doi.org/10.5281/zenodo.4730621
von Kistowski, J., Eismann, S., Schmitt, N., Bauer, A., Grohmann, J., Kounev, S.: TeaStore: a micro-service reference application for benchmarking, modeling and resource management research. In: IEEE 26th MASCOTS, pp. 223–236 (2018)
Lalanda, P.: Two complementary patterns to build multi-expert systems. In: Pattern Languages of Programs. vol. 25 (1997)
Mills, C., Escobar-Avila, J., Bhattacharya, A., Kondyukov, G., Chakraborty, S., Haiduc, S.: Tracing with less data: active learning for classification-based traceability link recovery. In: 2019 IEEE ICSME, pp. 103–113 (2019)
Molenaar, S., Spijkman, T., Dalpiaz, F., Brinkkemper, S.: Explicit alignment of requirements and architecture in agile development. In: Madhavji, N., Pasquale, L., Ferrari, A., Gnesi, S. (eds.) REFSQ 2020. LNCS, vol. 12045, pp. 169–185. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-44429-7_13
Moran, K., et al.: Improving the effectiveness of traceability link recovery using hierarchical Bayesian networks. In: ICSE 2020, pp. 873–885. ACM (2020)
Rajapakse, D.C., et al.: Teammates (2021). https://teammatesv4.appspot.com
Rempel, P., Mäder, P.: Estimating the implementation risk of requirements in agile software development projects with traceability metrics. In: Fricker, S.A., Schneider, K. (eds.) REFSQ 2015. LNCS, vol. 9013, pp. 81–97. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-16101-3_6
Reussner, R.H., et al.: Modeling and Simulating Software Architectures: The Palladio Approach. MIT Press, Cambridge (2016)
Rodriguez, D.V., Carver, D.L.: Multi-objective information retrieval-based NSGA-II optimization for requirements traceability recovery. In: 2020 IEEE EIT, pp. 271–280. https://doi.org/10.1109/EIT48999.2020.9208233. ISSN 2154-0373
Runeson, P., Höst, M.: Guidelines for conducting and reporting case study research in software engineering 14(2), 131. https://doi.org/10.1007/s10664-008-9102-8
Strittmatter, M., Kechaou, A.: The media store 3 case study system (2016). https://doi.org/10.5445/IR/1000052197
Tang, A., Liang, P., Clerc, V., van Vliet, H.: Traceability in the co-evolution of architectural requirements and design. In: Avgeriou, P., Grundy, J., Hall, J.G., Lago, P., Mistrík, I. (eds.) Relating Software Requirements and Architectures, pp. 35–60. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-21001-3_4
Wang, W., Niu, N., Liu, H., Niu, Z.: Enhancing automated requirements traceability by resolving polysemy. In: IEEE 26th RE, pp. 40–51 (2018)
Wohlrab, R., Eliasson, U., Pelliccione, P., Heldal, R.: Improving the consistency and usefulness of architecture descriptions: guidelines for architects. In: 2019 IEEE ICSA, pp. 151–160 (2019). https://doi.org/10.1109/ICSA.2019.00024
Zhang, Y., Wan, C., Jin, B.: An empirical study on recovering requirement-to-code links. In: 17th IEEE/ACIS SNPD, pp. 121–126 (2016)
Acknowledgment
This work was supported by the Competence Center for Applied Security Technology (KASTEL Project 46.23.01).
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
Keim, J., Schulz, S., Fuchß, D., Kocher, C., Speit, J., Koziolek, A. (2021). Trace Link Recovery for Software Architecture Documentation. In: Biffl, S., Navarro, E., Löwe, W., Sirjani, M., Mirandola, R., Weyns, D. (eds) Software Architecture. ECSA 2021. Lecture Notes in Computer Science(), vol 12857. Springer, Cham. https://doi.org/10.1007/978-3-030-86044-8_7
Download citation
DOI: https://doi.org/10.1007/978-3-030-86044-8_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-86043-1
Online ISBN: 978-3-030-86044-8
eBook Packages: Computer ScienceComputer Science (R0)