Skip to main content

Trace Link Recovery for Software Architecture Documentation

  • Conference paper
  • First Online:
Software Architecture (ECSA 2021)

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).

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 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.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

Notes

  1. 1.

    https://github.com/kit-sdq/Ecore2OWL.

  2. 2.

    See https://sdqweb.ipd.kit.edu/wiki/Media_Store and https://github.com/ArDoCo/CaseStudies/tree/master/TeaStore.

References

  1. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice. Addison-Wesley Professional, Upper Saddle River (2003)

    Google Scholar 

  2. 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

    Article  Google Scholar 

  3. 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

    Article  Google Scholar 

  4. 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)

    Google Scholar 

  5. 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)

    Article  Google Scholar 

  6. Keim, J., Koziolek, A.: Towards consistency checking between software architecture and informal documentation. In: 2019 IEEE ICSA, pp. 250–253 (2019)

    Google Scholar 

  7. Keim, J., Schulz, S., Fuchß, D., Speit, J., Kocher, C., Koziolek, A.: SWATTR Reproduction Package (2021). https://doi.org/10.5281/zenodo.4730621

  8. 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)

    Google Scholar 

  9. Lalanda, P.: Two complementary patterns to build multi-expert systems. In: Pattern Languages of Programs. vol. 25 (1997)

    Google Scholar 

  10. 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)

    Google Scholar 

  11. 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

    Chapter  Google Scholar 

  12. Moran, K., et al.: Improving the effectiveness of traceability link recovery using hierarchical Bayesian networks. In: ICSE 2020, pp. 873–885. ACM (2020)

    Google Scholar 

  13. Rajapakse, D.C., et al.: Teammates (2021). https://teammatesv4.appspot.com

  14. 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

    Chapter  Google Scholar 

  15. Reussner, R.H., et al.: Modeling and Simulating Software Architectures: The Palladio Approach. MIT Press, Cambridge (2016)

    Google Scholar 

  16. 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

  17. 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

  18. Strittmatter, M., Kechaou, A.: The media store 3 case study system (2016). https://doi.org/10.5445/IR/1000052197

  19. 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

    Chapter  Google Scholar 

  20. Wang, W., Niu, N., Liu, H., Niu, Z.: Enhancing automated requirements traceability by resolving polysemy. In: IEEE 26th RE, pp. 40–51 (2018)

    Google Scholar 

  21. 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

  22. Zhang, Y., Wan, C., Jin, B.: An empirical study on recovering requirement-to-code links. In: 17th IEEE/ACIS SNPD, pp. 121–126 (2016)

    Google Scholar 

Download references

Acknowledgment

This work was supported by the Competence Center for Applied Security Technology (KASTEL Project 46.23.01).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jan Keim .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics