Skip to main content
Log in

A model-driven traceability framework for software product lines

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

Abstract

Software product line (SPL) engineering is a recent approach to software development where a set of software products are derived for a well defined target application domain, from a common set of core assets using analogous means of production (for instance, through Model Driven Engineering). Therefore, such family of products are built from reuse, instead of developed individually from scratch. SPL promise to lower the costs of development, increase the quality of software, give clients more flexibility and reduce time to market. These benefits come with a set of new problems and turn some older problems possibly more complex. One of these problems is traceability management. In the European AMPLE project we are creating a common traceability framework across the various activities of the SPL development. We identified four orthogonal traceability dimensions in SPL development, one of which is an extension of what is often considered as “traceability of variability”. This constitutes one of the two contributions of this paper. The second contribution is the specification of a metamodel for a repository of traceability links in the context of SPL and the implementation of a respective traceability framework. This framework enables fundamental traceability management operations, such as trace import and export, modification, query and visualization. The power of our framework is highlighted with an example scenario.

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. Ajila, S., Kaba, B.A.: Using traceability mechanisms to support software product line evolution. In: Zhang, D., Grégoire, E., DeGroot, D. (eds.) Proceedings of the 2004 IEEE International Conference on Information Reuse and Integration, IRI, pp. 157–162. IEEE Systems, Man, and Cybernetics Society (2004)

  3. Almeida, J.P., van Eck, P., Iacob, M.-E.: Requirements traceability and transformation conformance in model-driven development. In: Proceedings of the 10th International Enterprise Distributed Object Computing Conference (EDOC), pp. 355–366. Washington, DC, USA (2006)

  4. Amar, B., Leblanc, H., Coulette, B.: A traceability engine dedicated to model transformation for software engineering. In: Oldevik, J., Olsen, G.K., Neple, T., Paige, R. (eds.) ECMDA Traceability Workshop (ECMDA-TW) 2008 Proceedings (2008)

  5. Asuncion, H.U., François, F., Taylor, R.N.: An end-to-end industrial software traceability tool. In: ESEC-FSE ’07: Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering, pp. 115–124. ACM, New York, NY, USA (2007)

  6. Bayer, J., Widen, T.: Introducing traceability to product lines. In: van der Linden, F. (ed.) Proceedings of the 4th Int. Workshop on Software Product-Family Engineering (PFE), vol. 2290 of Lecture Notes in Computer Science, pp. 409–416. Bilbao (Spain), October (2001)

  7. Berg, K., Bishop, J., Muthig, D.: Tracing software product line variability: from problem to solution space. In: SAICSIT’05: Proceedings of the 2005 Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists on IT Research in Developing Countries, pp. 182–191. South African Institute for Computer Scientists and Information Technologists, Republic of South Africa (2005)

  8. Berge, C.: Graphes et hypergraphes. Dunod (1970)

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

  10. Cleland-Huang, J., Chang, C.K., Sethi, G., Javvaji, K., Hu H., Xia, J.: Automating speculative queries through event-based requirements traceability. In: Proceedings of the 10th Int. Conference on Requirements Engineering (RE), pp. 289–298. Essen (Germany), September (2002)

  11. Collins-Sussman, B., Fitzpatrick, B.W., Pilato, C.M.: Version Control with Subversion. O’Reilly & Associates, Inc., For version 1.6 (2006)

  12. Dart, S.: Concepts in configuration management systems. In: Proceedings of the 3rd International Workshop on Software Configuration Management, pp. 1–18. ACM Press, New York, NY, USA (1991)

  13. Dömges R., Pohl K.: Adapting traceability environments to project-specific needs. Commun. ACM 41(12), 54–62 (1998)

    Article  Google Scholar 

  14. http://www.eclipse.org/. Last accessed: 05/04/2009

  15. Ecore: Eclipse modeling framework project: Meta model. http://www.eclipse.org/modeling/emf/?project=emf. Last accessed: 04/20/2009

  16. Egyed A.: A scenario-driven approach to trace dependency analysis. IEEE Trans. Softw. Eng. 29(2), 116–132 (2003)

    Article  Google Scholar 

  17. Egyed, A., Grünbacher, P.: Automating requirements traceability: beyond the record & replay paradigm. In: ASE, pp. 163–171. IEEE Computer Society (2002)

  18. Ellson J., Gansner E., Koutsofios L., North S.C., Woodhull G.: Graphviz – open source graph drawing tools. Lect. Notes Comput. Sci. 2265, 483–484 (2002)

    Article  Google Scholar 

  19. Elmqvist, N., Do, T.N., Goodell, H., Henry, N., Fekete, J.-D.: ZAME: interactive large-scale graph visualization. In: Proceedings of the IEEE Pacific Visualization Symposium 2008, pp. 215–222. IEEE Press, March (2008)

  20. Falleri, J.-R., Huchard, M., Nebut, C.: Towards a traceability framework for model transformations in kermeta. In: Aagedal, J., Neple, T., Oldevik, J. (eds.) ECMDA Traceability Workshop (ECMDA-TW) 2006 Proceedings, pp. 31–40 (2006)

  21. Fekete, J.-D., van Wijk, J.J., Stasko, J.T., North, C.: Information Visualization: Human-Centered Issues and Perspectives, vol. 4950 of Lecture Notes in Computer Science, chapter The Value of Information Visualization, pp. 1–18. Springer, New York (2008)

  22. Galvao, I., Goknil, A.: Survey of traceability approaches in model-driven engineering. In: EDOC ’07: Proceedings of the 11th IEEE International Enterprise Distributed Object Computing Conference, p. 313. IEEE Computer Society, Washington, DC, USA (2007)

  23. Harary F.: Graph theory. Addison-Wesley, Reading (1969)

    Google Scholar 

  24. Hartigan J.A.: Clustering Algorithms. Wiley, New York (1975)

    MATH  Google Scholar 

  25. Heer, J.: The prefuse visualization toolkit. http://prefuse.org/

  26. Hunt, T.: Vertical and horizontal requirements relationships. Last accessed: 04/22/2009, (2007)

  27. Jirapanthong, W., Zisman, A.: Supporting product line development through traceability. In: Proceedings of the 12th Asia-Pacific Software Engineering Conference (APSEC), pp. 506–514. Taipei, Taiwan (2005)

  28. Jirapanthong W., Zisman A.: Xtraque: traceability for product line systems. J. Softw. Syst. Model. 8(1), 117–144 (2007)

    Article  Google Scholar 

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

  30. Kang K.C., Kim S., Lee J., Kim K., Shin E., Huh M.-H.: FORM: a feature-oriented reuse method with domain-specific reference architectures. Ann. Softw. Eng. 5, 143–168 (1998)

    Article  Google Scholar 

  31. Khan, S.S., Greenwood, P., Garcia, A., Rashid, A.: On the interplay of requirements dependencies and architecture evolution: an exploratory study. In: Proceedings of the 20th International Conference on Advanced Information Systems Engineering, CAiSE 2008. Springer Verlag, June 16–20, 2008 (to appear)

  32. Krueger, C.W.: Variation management for software production lines. In: SPLC 2: Proceedings of the Second International Conference on Software Product Lines, pp. 37–48, London, UK. Springer-Verlag (2002)

  33. Limón, A.E., Garbajosa, J.: The need for a unifying traceability scheme. In: Oldevik, J., Aagedal, J. (eds.) ECMDA Traceability Workshop (ECMDA-TW) 2005 Proceedings, pp. 47–56 (2005)

  34. Marcus, A., Xie, X., Poshyvanyk, D.: When and how to visualize traceability links? In: TEFSE ’05: Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering, pp. 56–61. ACM, New York, NY, USA (2005)

  35. Megginson, D.: Xml performance and size. Last accessed: 04/23/2009, May (2005)

  36. Microsoft. Visual sourcesafe. http://msdn.microsoft.com/en-us/vstudio/aa700907.aspx. Last accessed: 04/23/2009

  37. Mitschke, R., Eichberg, M.: Supporting the evolution of software product lines. In: Oldevik, J., Olsen, G.K., Neple, T., Paige, R. (eds.) ECMDA Traceability Workshop (ECMDA-TW) 2008 Proceedings, pp. 87–96 (2008)

  38. Mohan, K., Ramesh, B.: Managing variability with traceability in product and service families. In: Proceedings of the 35th Hawaii International Conference on System Sciences, pp. 1309–1317 (2002)

  39. Mohan K., Ramesh B.: Tracing variations in software product families. Commun. ACM 50(12), 68–73 (2007)

    Article  Google Scholar 

  40. Mohan K., Xu P., Ramesh B.: Improving the change-management process. Commun. ACM 51(5), 59–64 (2008)

    Article  Google Scholar 

  41. Moon, M., Chae, H.S.: A metamodel approach to architecture variability in a product line. In: Proceedings of the Reuse of Off-the-Shelf Components, 9th International Conference on Software Reuse, vol. 4039 of LNCS, pp. 115–126. Springer-Verlag (2006)

  42. OMG. Meta object facility, mof 2.0. http://www.omg.org/spec/mof/2.0/. OMG (2006)

  43. Paige, R.F., Olsen, G.K., Kolovos, D.S., Zschaler, S., Power, C.: Building model-driven engineering traceability classifications. In: Oldevik, J., Olsen, G.K., Neple, T., Paige, R. (eds.) ECMDA Traceability Workshop (ECMDA-TW) 2008 Proceedings, pp. 49–58 (2008)

  44. Pfleeger, S.L., Bohner, S.A.: A framework for software maintenance metrics. In: Proceedings of the Conference on Software Maintenance, pp. 320–327 (1990)

  45. Pohl K., Böckle G., van der Linden F.: Software Product Line Engineering – Foundations, Principles, and Techniques. Springer Verlag, Heidelberg (2005)

    MATH  Google Scholar 

  46. ModelWare Project. Traceability metamodel and system solution. http://www.modelware-ist.org, ModelWare Project, Deliverable D1.6 (2006)

  47. Ramesh B.: Factors influencing requirements traceability practice. Commun. ACM 41(12), 37–44 (1998)

    Article  Google Scholar 

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

    Article  Google Scholar 

  49. Riebisch, M.: Supporting evolutionary development by feature models and traceability links. In: Proceedings of the 11th International Conference on Engineering of Computer-Based Systems (ECBS), pp. 370–377, Brno (Czech Republic), May (2004)

  50. Sousa, A., Kulesza, U., Rummler, A., Anquetil, N., Mitschke, R., Moreira, A., Amaral, V., Araujo, J.: A model-driven traceability framework to software product line development. In: Oldevik, J., Olsen, G.K., Neple, T., Paige, R. (eds.) ECMDA Traceability Workshop (ECMDA-TW) 2008 Proceedings, pp. 97–109 (2008)

  51. http://subclipse.tigris.org/. Last consulted on: 05/0/2009

  52. Svahnberg M., Bosch J.: Evolution in software product lines: two cases. J. Softw. Maint. 11(6), 391–422 (1999)

    Article  Google Scholar 

  53. JUNG Framework Development Team. Java universal network/graph framework. http://jung.sourceforge.net/ (2008)

  54. Venn J.: On the diagrammatic and mechanical representation of propositions and reasonings. Dublin Philos. Mag. J. Sci. 9(59), 1–18 (1880)

    Google Scholar 

  55. Walderhaug, S., Johansen, U., Stav, E., Aagedal, J.: Towards a generic solution for traceability in mdd. In: Aagedal, J., Neple, T., Oldevik, J. (eds.) ECMDA Traceability Workshop (ECMDA-TW) 2006 Proceedings (2006)

  56. Wieringa, R.: Traceability and modularity in software design. In: Proceedings of the 9th International Workshop on Software Specification and Design, pp. 87–95 (1998)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nicolas Anquetil.

Additional information

Communicated by Prof. Richard Paige.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Anquetil, N., Kulesza, U., Mitschke, R. et al. A model-driven traceability framework for software product lines. Softw Syst Model 9, 427–451 (2010). https://doi.org/10.1007/s10270-009-0120-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-009-0120-9

Keywords

Navigation