Skip to main content

Linking Feature Models to Code Artifacts Using Executable Acceptance Tests

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6287))

Abstract

A feature model is a representation of the requirements in a given system abstracted at the feature level. Linking conceptual requirements in feature models to actual implementation artifacts provides for many advantages such as increased program comprehension, implementation completeness assessment, impact analysis, and reuse opportunities. However, in practice, as systems evolve, traceability links between the model and the code artifacts may become broken or outdated. In this paper, we contribute an approach to provide traceability links in a way that ensures consistency between the feature model and the code artifacts, enables the evolution of variability in the feature model, and supports the product derivation process. We do that by using executable acceptance tests as a direct traceability link between feature models and code artifacts. We evaluate our approach and present a brief overview of the tool support we provide.

This research is supported by iCore – Alberta Innovates Technology Futures.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. André, F.: Feature Model DSL Homepage (2009), http://featuremodeldsl.codeplex.com/ (accessed February 10, 2010)

  2. Antoniol, G., Canfora, G., Casazza, G., De Lucia, A., Merlo, E.: Recovering traceability links between code and documentation. IEEE Transactions on Software Engineering 28(10), 970–983 (2002)

    Article  Google Scholar 

  3. Berg, K., Bishop, J., Muthig, D.: Tracing Software Product Line Variability — From Problem to Solution Space. Presented at 2005 annual research conference of the South African institute of computer scientists and information technologists on IT research in developing countries, White River, South Africa (2005)

    Google Scholar 

  4. CaliberRM, http://www.borland.com/us/products/caliber/index.html (accessed March 1, 2010)

  5. Cho, H., Lee, K., Kang, K.C.: Feature Relation and Dependency Management: An Aspect-Oriented Approach. In: Proceedings of the 2008 12th international Software Product Line Conference, pp. 3–11. IEEE Computer Society, Washington (2008)

    Chapter  Google Scholar 

  6. Cleland-Huang, J., Zemont, G., Lukasik, W.: A Heterogeneous Solution for Improving the Return on Investment of Requirements Traceability. In: Proceedings of the Requirements Engineering Conference, 12th IEEE international, September 06-10. RE, pp. 230–239. IEEE Computer Society, Washington (2004)

    Google Scholar 

  7. DOORS, http://www-01.ibm.com/software/awdtools/doors/ (accessed March 1, 2010)

  8. Fey, D., Fajta, R., Boros, A.: Feature Modeling: A Meta-Model to Enhance Usability and Usefulness. In: Chastek, G.J. (ed.) SPLC 2002. LNCS, vol. 2379, pp. 198–216. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  9. Filho, I.M., Oliveira, T.C., Lucena, C.J.P.: A proposal for the incorporation of the features model into the UML language. In: Proceedings of the 4th International Conference on Enterprise Information Systems (ICEIS 2002), Ciudad Real, Spain (2002)

    Google Scholar 

  10. FIT, http://fit.c2.com (accessed November March 1, 2010)

  11. Fuchs, N.E.: Specifications are (Preferably) Executable. IEE/BCS Software Engineering Journal 7(5), 323–334 (1992)

    Article  Google Scholar 

  12. Ghanam, Y., Maurer, F.: Extreme Product Line Engineering – Refactoring for Variability: A Test-Driven Approach. In: The 11th International Conference on Agile Processes and eXtreme Programming (XP 2010), Trondheim, Norway (2010)

    Google Scholar 

  13. Gotel, O., Finkelstein, A.: An Analysis of the Requirements Traceability Problem. In: 1st International Conference on Requirements Eng., pp. 94–101 (1994)

    Google Scholar 

  14. GreenPepper, http://www.greenpeppersoftware.com (accessed March 1, 2010)

  15. Huang, J.C.: Just enough requirement traceability. In: Proceedings of the 30th Annual International Computer Software and Applications, Chicago, pp. 41–42 (September 2006)

    Google Scholar 

  16. Kang, K.C., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: FORM: A feature-oriented reuse method with domain specific reference architectures. Annals of Software Engineering 5, 143–168 (1998)

    Article  Google Scholar 

  17. Kaner, C.: Cem Kaner on Scenario Testing: The Power of ‘What-If...’ and Nine Ways to Fuel Your Imagination. Better Software 5(5), 16–22 (2003)

    Google Scholar 

  18. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, A.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-021, Software Engineering Institute, Carnegie Mellon University, Pittsburgh (1990)

    Google Scholar 

  19. Kerievsky, J.: Storytesting, http://industrialxp.org/storytesting.html (accessed March 1, 2010)

  20. Manifesto for Agile Software Development, http://www.agilemanifesto.org/ (accessed May 13, 2010)

  21. Marchetto, A.: http://selab.fbk.eu/swat/slide/2_Fitnesse.ppt (accessed March 10, 2010)

  22. Melnik, G., Maurer, F., Chiasson, M.: Executable Acceptance Tests for Communicating Business Requirements: Customer Perspective. In: Proc. Agile 2006 Conf., pp. 35–46. IEEE CS Press, Los Alamitos (2006)

    Google Scholar 

  23. Park, S.S., Maurer, F.: The benefits and challenges of executable acceptance testing. In: APOS 2008: Proceedings of the 2008 international workshop on Scrutinizing agile practices or shoot-out at the agile corral, pp. 19–22 (2008)

    Google Scholar 

  24. Parra, C., Blanc, X., Duchien, L.: Context Awareness for Dynamic Service-Oriented Product Lines. In: Proceedings of 13th International Software Product Line Conference (SPLC), San Francisco, CA, USA (2009)

    Google Scholar 

  25. Pashov, I.: Feature Based Method for Supporting Architecture Refactoring and Maintenance of Long-Life Software Systems. PhD Thesis, Technical University Ilmenau (2004)

    Google Scholar 

  26. Perry, W.: Effective Methods for Software Testing, 2/e. John Wiley & Sons, New York (2000)

    Google Scholar 

  27. Pure::Systems, http://www.pure-systems.com/DOORS.102+M54a708de802.0.html (accessed March 1, 2010)

  28. Ramesh, B., Jarke, M.: Toward Reference Models for Requirements Traceability. IEEE Transactions on Software Engineering 27(1), 58–93 (2001)

    Article  Google Scholar 

  29. Riebisch, M.: Supporting Evolutionary Development by Feature Models and Traceability Links. In: Proceedings of the 11th IEEE International Conference and Workshop on Engineering of Computer-Based Systems, ECBS, May 24-27, p. 370. IEEE Computer Society, Washington (2004)

    Google Scholar 

  30. Riebisch, M.: Towards a more precise definition of feature models. In: Riebisch, M., Coplien, J.O. (eds.) Modelling Variability for Object-Oriented Product Lines (2003) (Position Paper)

    Google Scholar 

  31. Tun, T.T., Boucher, Q., Classen, A., Hubaux, A., Heymans, P.: Relating Requirements and Feature Configurations: A Systematic Approach. In: International Software Product Line Conference (SPLC 2009) (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ghanam, Y., Maurer, F. (2010). Linking Feature Models to Code Artifacts Using Executable Acceptance Tests. In: Bosch, J., Lee, J. (eds) Software Product Lines: Going Beyond. SPLC 2010. Lecture Notes in Computer Science, vol 6287. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15579-6_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-15579-6_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-15578-9

  • Online ISBN: 978-3-642-15579-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics