Skip to main content
Log in

Graph-based traceability: a comprehensive approach

  • Theme Section
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

In recent years, traceability has been globally accepted as being a key success factor of software development projects. However, the multitude of different, poorly integrated taxonomies, approaches and technologies impedes the application of traceability techniques in practice. This paper presents a comprehensive view on traceability, pertaining to the whole software development process. Based on the state of the art, the field is structured according to six specific activities related to traceability as follows: definition, recording, identification, maintenance, retrieval, and utilization. Using graph technology, a comprehensive and seamless approach for supporting these activities is derived, combining them in one single conceptual framework. This approach supports the definition of metamodels for traceability information, recording of traceability information in graph-based repositories, identification and maintenance of traceability relationships using transformations, as well as retrieval and utilization of traceability information using a graph query language. The approach presented here is applied in the context of the ReDSeeDS project (Requirements Driven Software Development System) that aims at requirements-based software reuse. ReDSeeDS makes use of traceability information to determine potentially reusable architectures, design, or code artifacts based on a given set of reusable requirements. The project provides case studies from different domains for the validation of the approach.

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

Access this article

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

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Aizenbud-Reshef N., Nolan B.T., Rubin J., Shaham-Gafni Y.: Model traceability. IBM Syst. J. 45(3), 515–526 (2006)

    Article  Google Scholar 

  2. Aizenbud-Reshef, N., Paige, R.F., Rubin, J., Shaham-Gafni, Y., Kolovos, D.S.: Operational semantics for traceability. In: ECMDA Traceability Workshop (ECMDA-TW) 2005 Proceedings (2005)

  3. Ambroziewicz, A, Bojarski, J., Nowakowski, W., Straszak, T.: Can precise requirements models drive software case reuse? In: Proceedings of the 2nd International Workshop on Model Reuse Strategies (MoRSe 2008), pp. 27–34 (2008)

  4. Antoniol G., Canfora G., Casazza G., De Lucia A., Merlo E.: Recovering traceability links between code and documentation. IEEE Trans. Softw. Eng. 28(10), 970–983 (2002)

    Article  Google Scholar 

  5. Asuncion, H.U., François, F., Taylor, R.N.: 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 (ESEC-FSE ’07), pp. 115–124 (2007)

  6. Bergmann, G., Ökrös, A., Ráth, I., Varró, D., Varró, G.: Incremental pattern matching in the VIATRA model transformation system. In: GRaMoT ’08: Proceedings of the Third International Workshop on Graph and Model Transformations, pp. 25–32 (2008)

  7. Bildhauer, D., Ebert, J., Horn, T., Hotz, L., Knab, S., Riediger, V., Wolter, K.: Final software case query language definition. Project Deliverable D4.1.2, ReDSeeDS Project (2009, to appear)

  8. Bildhauer, D., Ebert, J., Riediger, V., Krebs, T., Nick, M., Schwarz, H., Kalnins, A., Kalnina, E., Nick, M., Schneickert, S., Celms, E., Wolter, K., Ambroziewicz, A., Bojarski, J.: Repository selection report. Project Deliverable D4.4, ReDSeeDS Project (2007)

  9. Bildhauer, D., Ebert, J., Riediger, V., Schwarz, H.: Using the TGraph approach for model fact repositories. In: Proceedings of the 2nd International Workshop MoRSe 2008: Model Reuse Strategies–Can requirements drive reuse of software models? pp. 9–18 (2008)

  10. Bildhauer, D., Ebert, J., Riediger, V., Wolter, K., Nick, M., Jedlitschka, A., Weber, S., Schwarz, H., Ambroziewicz, A., Bojarski, J., Straszak, T., Kavaldjian, S., Popp, R., Szep, A.: Software case marking language definition. Project Deliverable D4.3, ReDSeeDS Project (2007)

  11. Böhlen B.: Ein parametrisierbares Graph-Datenbanksystem für Entwicklungswerkzeuge. Shaker Verlag, Aachen (2006)

    MATH  Google Scholar 

  12. Bojarski, J., Straszak, T., Ambroziewicz, A., Nowakowski, W.: Transition from precisely defined requirements into draft architecture as an MDA realisation. In: Proceedings of the 2nd International Workshop MoRSe 2008: Model Reuse Strategies–Can requirements drive reuse of software models? pp. 35–42 (2008)

  13. Cleland-Huang J., Chang C.K., Christensen M.: Event-based traceability for managing evolutionary change. IEEE Trans. Softw. Eng. 29(9), 796–810 (2003)

    Article  Google Scholar 

  14. Cysneiros, G., Zisman, A.: Traceability and completeness checking for agent-oriented systems. In: Proceedings of the 2008 ACM symposium on Applied computing (SAC ’08), pp. 71–77 (2008)

  15. Czarnecki K., Helsen S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–645 (2006)

    Article  Google Scholar 

  16. Dick, J.: Rich traceability. In: Proceedings of the 1st International Workshop on Traceability in Emerging Forms of Software Engineering (2002)

  17. Del Fabro, M.D., Bézivin, J., Valduriez, P.: Weaving models with the eclipse AMW plugin. In: Eclipse Modeling Symposium, Eclipse Summit Europe 2006 (2006)

  18. Drivalos, N., Kolovos, D.S., Paige, R.F., Fernandes, K.J.: Engineering a DSL for software traceability. In: Software Language Engineering: First International Conference, SLE 2008, Toulouse, France, 29–30 Sept 2008. Revised Selected Papers, pp. 151–167 (2008)

  19. Ebert, J., Franzke, A.: A declarative approach to graph based modeling. In: Graphtheoretic Concepts in Computer Science, pp. 38–50 (1995)

  20. Ebert, J., Bildhauer, D.: Querying software abstraction graphs. In: Proceedings of Query Technologies and Applications for Program Comprehension (QTAPC 2008) (2008)

  21. Ebert, J., Horn, T.: The GReTL transformation language. Internal Report (2009, to appear)

  22. Ebert, J., Kullbach, B., Riediger, V., Winter, A.: GUPRO. Generic understanding of programs—an overview. Electron. Notes Theor. Comput. Sci. 72(2) (2002). http://www.elsevier.nl/locate/entcs/volume72.html.

  23. Ebert, J., Riediger, V., Winter, A.: Graph technology in reverse engineering, the tgraph approach. In: Gimnich, R., Kaiser, U., Quante, J., Winter, A. (eds.) Proceedings of the 10th Workshop Software Reengineering (WSR 2008). In: GI Lecture Notes in Informatics, vol. 126, pp. 67–81 (2008)

  24. Espinoza, A., Alarcón, P.P., Garbajosa, J.: Analyzing and systematizing current traceability schemas. In: Proceedings of the 30th Annual IEEE/NASA Software Engineering Workshop SEW-30 (SEW ’06), pp. 21–32 (2006)

  25. Glabbeek, R., Ploeger, B.: Five determinisation algorithms. In: Proceedings of the 13th International Conference on Implementation and Applications of Automata (CIAA ’08), pp. 161–170 (2008)

  26. Goknil, A., Kurtev, I., van den Berg, K.: Change impact analysis based on formalization of trace relations for requirements. In: ECMDA Traceability Workshop (ECMDA-TW) 2008 Proceedings, pp. 59–75 (2008)

  27. Gotel, O.C.Z., Finkelstein, A.C.W.: An analysis of the requirements traceability problem. In: Proceedings of the 1st International Conference on Requirements Engineering, pp. 94–102 (1994)

  28. 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 (ESEC-FSE ’07) (2007)

  29. Holt R.C., Schürr A., Elliott Sim S., Andreas W.: GXL: a graph-based standard exchange format for reengineering. Sci. Comput. Program. 60(2), 149–170 (2005)

    Article  Google Scholar 

  30. Horn T.: Ein Optimierer für GReQL2. Grin Verlag, Munich (2009)

    Google Scholar 

  31. Hayes J.H., Dekhtyar A., Sundaram S.K.: Advancing candidate link generation for requirements tracing: the study of methods. IEEE Trans. Softw. Eng. 32(1), 4–19 (2006)

    Article  Google Scholar 

  32. IEEE: IEEE Standard Glossary of Software Engineering Terminology, IEEE Std 610.12-1990 (1990)

  33. Jouault, F.: Loosely coupled traceability for ATL. In: ECMDA Traceability Workshop (ECMDA-TW) 2005 Proceedings, pp. 29–37 (2005)

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

    Article  Google Scholar 

  35. Kalnins, A., Barzdins, J., Celms, E.: Model transformation language MOLA. In: Model Driven Architecture: Foundations and Applications (MDAFA) (2004)

  36. Kalnins, A., Celms, E., Sostaks, A.: Tool support for MOLA. In: Proceedings of the Workshop on Graph and Model Transformation (GraMoT), pp. 162–163 (2005)

  37. Kalnins, A., Kalnina, E., Celms, E., Sostaks, A., Schwarz, H., Ambroziewicz, A., Bojarski, J., Nowakowski, W., Straszak, T., Kavaldjian, S., Falb, J.: Reusable Case Transformation Rule Specification. Project Deliverable D3.3, ReDSeeDS Project (2007)

  38. Kamp, M.: Managing a Multi-File, Multi-Language Software Repository for Program Comprehension Tools: A Generic Approach. Technical Report 1/98, Universität Koblenz-Landau, Institut für Informatik (1998)

  39. Kiesel N., Schürr A., Westfechtel B.: a graph oriented (software) engineering database system. Inf. Syst. 20(1), 21–51 (1995)

    Article  Google Scholar 

  40. Krebs, T., Nowakowski, W., Kalnins, A., Kalnina, E.: Modelling and transformation language validation report. Project Deliverable D3.4, ReDSeeDS Project (2007)

  41. Kullbach, B., Winter, A.: Querying as an enabling technology in software reengineering. In: Verhoef, C., Nesi, P. (eds.) Proceedings of the 3rd Euromicro Conference on Software Maintenance and Reengineering, pp. 42–50 (1999)

  42. Kurtev, I., Dee, M., Goknil, A., van der Berg, K.: Traceability-based change management in operational mappings. In: ECMDA Traceability Workshop (ECMDA-TW) 2007 Proceedings, pp. 57–67 (2007)

  43. Mäder, P., Gotel, O., Philippow, I.: Rule-based maintenance of post-requirements traceability relations. In: Proceedings of the 16th IEEE International Requirements Engineering Conference, pp. 23–32 (2008)

  44. Maletic, J.I., Collard, M.L., Simoes, B.: An XML based approach to support the evolution of model-to-model traceability links. In: Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering, pp. 67–72 (2005)

  45. 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 (2005)

  46. Mehlhorn, K., Näher, S., Uhrig, C.: The LEDA platform of combinatorial and geometric computing. In: Proceedings of the 24th International Colloquium on Automata, Languages and Programming (ICALP ’97), pp. 7–16 (1997)

  47. Moon, M., Chae, H.S., Nam, T., Yeom, K.: A metamodeling approach to tracing variability between requirements and architecture in software product lines. In: Proceedings of the 7th IEEE International Conference on Computer and Information Technology, pp. 927–933 (2007)

  48. Object Management Group: OMG Unified Modeling Language (OMG UML), Superstructure, V2.1.2. (2007)

  49. Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification, Version 1.0. (2008)

  50. Pinheiro, F.A.C.: Formal and informal aspects of requirements tracing. In: Anais do WER00—Workshop em Engenharia de Requisitos 2000 (2000)

  51. Pinheiro F.A.C., Goguen J.A.: An object-oriented tool for tracing requirements. IEEE Soft. 13(2), 52–64 (1996)

    Article  Google Scholar 

  52. Pohl, K.: Process-Centered Requirements Engineering. Research Studies Press Ltd, Taunton, Somerset (1996)

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

    Article  Google Scholar 

  54. Schwarz, H., Ebert, J., Riediger, V., Winter, A.: Towards querying of traceability information in the context of software evolution. In: 10th Workshop Software Reengineering (WSR 2008) (2008)

  55. Sherba, S.A., Anderson, K.M., Faisal, M.: A framework for mapping traceability relationships. In: Proceedings of the 2nd International Workshop on Traceability in Emerging Forms of Software Engineering (2003)

  56. Śmiałek, M.: Towards a requirements driven software development system. Poster presentation at MoDELS (2006)

  57. Sostaks, A., Kalnins, A.: The implementation of MOLA to L3 compiler. In: Computer Science and Information Technologies. Scientific Papers University of Latvia, vol. 733. Latvijas Universitate (2008)

  58. Spanoudakis, G., Zisman, A.: Software traceability: a roadmap. In: Chang, S.K. (ed) Handbook of Software Engineering & Knowledge Engineering: Recent Advances, vol. 3, pp. 395–428. World Scientific Publishing Company, River Edge, NJ (2005)

  59. von Knethen, A., Paech, B.: A survey on tracing approaches in theory and practice. Technical Report 095.01/E, Fraunhofer IESE (2002)

  60. Weiser M.: Program slicing. IEEE Trans. Softw. Eng. 10(4), 352–357 (1984)

    Article  Google Scholar 

  61. Winter, A.: Referenz-Metaschema für visuelle Modellierungssprachen. DUV Informatik, Deutscher Universitätsverlag (2000)

  62. Witte, R., Zhang, Y., Rilling, J.: Empowering software maintainers with semantic Web technologies. In: Proceedings of the 4th European Semantic Web Conference (ESCW 2007), pp. 37–52 (2007)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hannes Schwarz.

Additional information

Communicated by Prof. Richard Paige.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Schwarz, H., Ebert, J. & Winter, A. Graph-based traceability: a comprehensive approach. Softw Syst Model 9, 473–492 (2010). https://doi.org/10.1007/s10270-009-0141-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-009-0141-4

Keywords

Navigation