Software & Systems Modeling

, Volume 10, Issue 4, pp 469–487 | Cite as

Rigorous identification and encoding of trace-links in model-driven engineering

  • Richard F. PaigeEmail author
  • Nikolaos Drivalos
  • Dimitrios S. Kolovos
  • Kiran J. Fernandes
  • Christopher Power
  • Goran K. Olsen
  • Steffen Zschaler
Regular Paper


Model-driven engineering (MDE) involves the construction and manipulation of many models of different kinds in an engineering process. In principle, models can be used in the product engineering lifecycle in an end-to-end manner for representing requirements, designs and implementations, and assisting in deployment and maintenance. The manipulations applied to models may be manual, but they can also be automated—for example, using model transformations, code generation, and validation. To enhance automated analysis, consistency and coherence of models used in an MDE process, it is useful to identify, establish and maintain trace-links between models. However, the breadth and scope of trace-links that can be used in MDE is substantial, and managing trace-link information can be very complex. In this paper, we contribute to managing the complexity of traceability information in MDE in two ways: firstly, we demonstrate how to identify the different kinds of trace-links that may appear in an end-to-end MDE process; secondly, we describe a rigorous approach to defining semantically rich trace-links between models, where the models themselves may be constructed using diverse modelling languages. The definition of rich trace-links allows us to use tools to maintain and analyse traceability relationships.


Traceability Semantics Classifications Identification 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aizenbud-Reshef N., Nolan B., Rubin J., Shaham-Gafni Y.: Model traceability. IBM Syst. J. 45(3), 515–526 (2006)CrossRefGoogle Scholar
  2. 2.
    Aizenbud-Reshef, N., Paige, R., Rubin, J., Shaham-Gafni, Y., Kolovos, D.: Operational semantics for traceability. In: Proceedings of the ECMDA Workshop on Traceability (2005)Google Scholar
  3. 3.
    Alencar, F., Castro, J., Cysneiros, G., Mylopoulos, J.: From early requirements modeled by i* technique to later requirements modeled in precise UML. In: Proceedings of the III Workshop de Engenharia de Requisitos, Rio de Janeiro, Brasil (2000)Google Scholar
  4. 4.
    Alexander, I.: Towards automatic traceability in industrial practice. In: Proceedings of the Workshop on Traceability in Emerging Forms of Software Engineering (2002)Google Scholar
  5. 5.
    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)CrossRefGoogle Scholar
  6. 6.
    Asuncion, H., François, F., Taylor, R.: An end-to-end industrial software traceability tool. In: ESEC-FSE, pp. 115–124. ACM, New York (2007)Google Scholar
  7. 7.
    Atran S.: Cognitive Foundations of Natural History. Cambridge University Press, Cambridge (1993)Google Scholar
  8. 8.
    Nentwich C., Capra L., Emmerich W., Finkelstein A.: XLinkit: a consistency checking and smart link generation service. ACM Trans. Internet Technol. 2(2), 151–185 (2002)CrossRefGoogle Scholar
  9. 9.
    Chan, Z.E., Paige, R.F.: Designing a domain-specific contract language. In: ECMDA. LNCS, vol. 3748. Springer, Berlin (2005)Google Scholar
  10. 10.
    Cleland-Huang, J., Change, C., Wise, J.: Supporting event-based traceability with high-level recognition of change events. In: COMPSAC. Springer, Berlin (2002)Google Scholar
  11. 11.
    Cysneiros, G., Zisman, A., Spanoudakis, G.: A traceability approach for i* and uml models. In: Proceedings of the Workshop on Software Engineering for Large-Scale Multi-Agent Systems (2003)Google Scholar
  12. 12.
    Dick, J.: Rich traceability. In: Proceedings of the Workshop on Traceability in Emerging Forms of Software Engineering (2002)Google Scholar
  13. 13.
    Kolovos, D.S., Paige, R.F., Polack, F.: On the evolution of OCL for capturing structural constraints in modelling languages. In: Proceedings of the Dagstuhl Workshop on Rigorous Methods for Software Construction and Analysis (2007)Google Scholar
  14. 14.
    Egyed, A., Gruenbacher, P.: Automatic requirements traceability. In: ASE. ACM, New York (2003)Google Scholar
  15. 15.
    Espinoza, A., Alarcón, P., Garbajosa, J.: Analyzing and systematizing current traceability schemas. In: SEW. IEEE, USA (2006)Google Scholar
  16. 16.
    Didonet Del Fabro M., Valduriez P.: Towards the efficient development of model transformations using model weaving and matching transformations. Softw. Syst. Model. 8(3), 305–324 (2009)CrossRefGoogle Scholar
  17. 17.
    Eclipse Foundation. Eclipse model-to-model transformation. Last accessed: June 2009
  18. 18.
    Giese, H., Wagner, R.: Incremental model synchronization with triple graph grammars. In: MoDELS. LNCS, vol. 4199. Springer, Berlin (2006)Google Scholar
  19. 19.
    Gotel, O., Finkelstein, A.: An analysis of the requirements traceability problem. In: RE. ACM, New York (1994)Google Scholar
  20. 20.
    Gotel, O., Finkelstein, A.: Contribution structures (requirements artifacts). In: RE. ACM,New York (1995)Google Scholar
  21. 21.
    Grau, G., Cares, C., Franch, X., Navarrete, F.J.: A comparative analysis of i* agent-oriented modelling techniques. In: SEKE, pp. 657–663 (2006)Google Scholar
  22. 22.
    IEEE. IEEE Standard Glossary of Software Engineering Terminology. IEEE Standard 610.12-1990 (2004)Google Scholar
  23. 23.
    Jouault, F.: Loosely coupled traceability for ATL. In: Proc. ECMDA Workshop on Traceability (2005)Google Scholar
  24. 24.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I., Valduriez, P.: ATL: a QVT-like transformation language. In: OOPSLA Companion, pp. 719–720 (2006)Google Scholar
  25. 25.
    Kolovos, D.S., Paige, R.F.: Extensible Platform for Specification of Integrated Languages for mOdel maNagement (Epsilon).
  26. 26.
    Kolovos, D.S., Paige, R.F., Polack, F.: On-demand merging of traceability links with models. In: Proceedings of the ECMDA Workshop on Traceability (2006)Google Scholar
  27. 27.
    Kolovos, D.S., Paige, R.F., Polack, F.: Detecting and repairing inconsistencies across heterogeneous models. In: ICST. ACM, New York (2008)Google Scholar
  28. 28.
    Kolovos, D.S., Paige, R.F., Polack, F.: The Epsilon Transformation Language. In: ICMT. LNCS, vol. 5063. Springer, Berlin (2008)Google Scholar
  29. 29.
    Kurtev, I., Dee, M., Goknil, A., van den Berg, K.: Traceability-based change management in operational mappings. In: Proceedings of the ECMDA Workshop on Traceability (June 2007)Google Scholar
  30. 30.
    Limon, A., Garbajosa, J.: The need for a unifying traceability scheme. In: Proceedings of the ECMDA Workshop on Traceability (2005)Google Scholar
  31. 31.
    Mäder, P., Gotel, O., Philippow, I.: Enabling automated traceability maintenance through the upkeep of traceability relations. In: ECMDA. LNCS, vol. 5562. Springer, Berlin (2009)Google Scholar
  32. 32.
    Malone J.: The Science of Linguistics in the Art of Translation. State of New York University Press, New York (1988)Google Scholar
  33. 33.
    Mussulman, L., White, D.: Human factors analysis and classification system. (2004)
  34. 34.
    Drivalos, N., Kolovos, D.S., Paige, R., Fernandes, K.: Engineering a domain-specific language for software traceability. In: Software Language Engineering. LNCS, vol. 5452. Springer, Berlin (2008)Google Scholar
  35. 35.
  36. 36.
    Object Management Group. UML 2.0 OCL specification. OMG Document. (2003)
  37. 37.
    Object Management Group. UML 2.0 infrastructure specification. OMG Document. (2004)
  38. 38.
    Object Management Group. MOF models to text transformation language; final adopted specification. OMG Document 08-01-16, (2006)
  39. 39.
    Object Management Group. MOF QVT draft specification. OMG Document ptc/2007/07/07, (2007)
  40. 40.
    Oldevik, J., Neple, T., Gronmo, R., Aagedal, J., Berre, A.: Toward standardised model-to-text transformations. In: ECMDA. LNCS, vol. 3748. Springer, Berlin (2005)Google Scholar
  41. 41.
    Olsen, G., Oldevik, J.: Scenarios of traceability in model-to-text transformations. In: ECMDA. LNCS, vol. 4530. Springer, Berlin (2007)Google Scholar
  42. 42.
    Paige, R.F., Olsen, G.K., Kolovos, D.S., Zschaler, S., Power, C.: Building model-driven engineering traceability classifications. In: Proc. ECMDA Workshop on Traceability (2008)Google Scholar
  43. 43.
    Power, C., Petrie, H., Swallow, D., Paige, R.F.: Pre-requirements traceability in universally accessible e-learning systems (under review) (2009)Google Scholar
  44. 44.
    Ramesh B., Jarke M.: Toward reference models of requirements traceability. IEEE Trans. Softw. Eng. 27(1), 58–93 (2001)CrossRefGoogle Scholar
  45. 45.
    Rose, L.M., Paige, R.F., Kolovos, D.S., Polack, F.: The Epsilon Generation Language. In: ECMDA. LNCS, vol. 5095. Springer, Berlin (2008)Google Scholar
  46. 46.
    Rummler, A., Grammel, B., Pohl, C.: Improving traceability in model-driven development of business applications. In: Proceedings of the ECMDA Workshop on Traceability (2007)Google Scholar
  47. 47.
    Schmidt D.C.: Guest editor’s introduction: model-driven engineering. IEEE Comput. 39(2), 25–31 (2006)Google Scholar
  48. 48.
    Sousa, A., Kulesza, U., Rummler, A., Anquetil, N., Mitschke, R., Moreira, A., Amaral, V., Araújo, J.: A model-driven traceability framework to software product line development. In: Proceedings of the ECMDA Workshop on Traceability (2008)Google Scholar
  49. 49.
    Spanoudakis, G., Zisman, A.: Software traceability: a roadmap. In: Handbook of Software Engineering and Knowledge Engineering, vol. III. World Scientific Publishing, Singapore (2005)Google Scholar
  50. 50.
    Strens, A., Sugden, R.: Change analysis: a step towards meeting the challenge of changing requirements. In: Proceedings of the Workshop on Engineering Computer-Based Systems (1996)Google Scholar
  51. 51.
    Tisi, M., Jouault, F., Fraternali, P., Ceri, S., Bézivin, J.: On the use of higher-order model transformations. In: ECMDA. LNCS, vol. 5562. Springer, Berlin (2009)Google Scholar
  52. 52.
    Vojtisek, D.: Traceability MDK for KerMeta. Last accessed: June 2009
  53. 53.
    Walderhaug, S., Johansen, U., Stav, E., Aagedal, J.: Towards a generic solution for traceability in MDD. In: Proceedings of the ECMDA Workshop on Traceability (2006)Google Scholar
  54. 54.
    Yu, E.: Towards modeling and reasoning support for early-phase requirements engineering. In: RE. ACM, New York (1997)Google Scholar
  55. 55.
    Zirn, C., Nastase, V., Strube, M.: Distinguishing between instances and classes in the wikipedia taxonomy. In: ESWC (2008)Google Scholar
  56. 56.
    Zschaler, S., Kolovos, D.S., Drivalos, N., Paige, R.F., Rashid, A.: Domain-specific metamodelling languages for software language engineering. In: Software Language Engineering, LNCS. Springer, Berlin (2009)Google Scholar

Copyright information

© Springer-Verlag 2010

Authors and Affiliations

  • Richard F. Paige
    • 1
    Email author
  • Nikolaos Drivalos
    • 1
  • Dimitrios S. Kolovos
    • 1
  • Kiran J. Fernandes
    • 1
  • Christopher Power
    • 1
  • Goran K. Olsen
    • 2
  • Steffen Zschaler
    • 3
  1. 1.University of YorkYorkUK
  2. 2.SINTEFOsloNorway
  3. 3.Lancaster UniversityLancasterUK

Personalised recommendations