Skip to main content

Abstract

The Software Product Lines (SPLs) paradigm promises faster development cycles and increased quality by systematically reusing software assets. This paradigm considers a family of systems, each of which can be obtained by a selection of features in a variability model. Though essential, providing Quality Assurance (QA) techniques for SPLs has long been perceived as a very difficult challenge due to the combinatorics induced by variability and for which very few techniques were available. Recently, important progress has been made by the model-checking and testing communities to address this QA challenge, in a very disparate way though. We present our vision for a unified framework combining model-checking and testing approaches applied to behavioural models of SPLs. Our vision relies on Featured Transition Systems (FTSs), an extension of transition systems supporting variability. This vision is also based on model-driven technologies to support practical SPL modelling and orchestrate various QA scenarios. We illustrate one of such scenarios on a vending machine SPL.

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ali, S., Hemmati, H., Holt, N., Arisholm, E., Briand, L.: Model Transformations as a Strategy to Automate Model-Based Testing-A Tool and Industrial Case Studies. Simula Research Laboratory, Technical Report, pp. 1–28 (January 2010)

    Google Scholar 

  2. Asirelli, P., ter Beek, M.H., Fantechi, A., Gnesi, S., Mazzanti, F.: Design and validation of variability in product lines. In: Proceedings of the 2nd International Workshop on Product Line Approaches in Software Engineering, PLEASE 2011, pp. 25–30. ACM, New York (2011)

    Google Scholar 

  3. Asirelli, P., ter Beek, M.H., Gnesi, S., Fantechi, A.: Formal description of variability in product families. In: Proceedings of the 2011 15th International Software Product Line Conference, SPLC 2011, pp. 130–139. IEEE Computer Society, Washington, DC (2011)

    Chapter  Google Scholar 

  4. Baier, C., Katoen, J.P.: Principles of Model Checking. MIT Press (2007)

    Google Scholar 

  5. Blom, J., Hessel, A., Jonsson, B., Pettersson, P.: Specifying and Generating Test Cases Using Observer Automata. In: Grabowski, J., Nielsen, B. (eds.) FATES 2004. LNCS, vol. 3395, pp. 125–139. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  6. Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press (1999)

    Google Scholar 

  7. Classen, A., Heymans, P., Schobbens, P., Legay, A.: Symbolic model checking of software product lines. In: Proceedings 33rd International Conference on Software Engineering (ICSE 2011). ACM Press, New York (2011)

    Google Scholar 

  8. Classen, A.: Modelling and Model Checking Variability-Intensive Systems. Ph.D. thesis, PReCISE Research Center, Faculty of Computer Science, University of Namur, FUNDP (2011)

    Google Scholar 

  9. Classen, A., Heymans, P., Schobbens, P., Legay, A., Raskin, J.: Model checking lots of systems: efficient verification of temporal properties in software product lines. In: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, ICSE 2010, vol. 1, pp. 335–344. ACM, New York (2010)

    Chapter  Google Scholar 

  10. Cordy, M., Classen, A., Heymans, P., Schobbens, P.Y., Legay, A.: Managing evolution in software product lines: A model-checking perspective. In: Proceedings of VaMoS 2012, pp. 183–191. ACM (2012)

    Google Scholar 

  11. Cordy, M., Classen, A., Perrouin, G., Heymans, P., Schobbens, P.Y., Legay, A.: Simulation relation for software product lines: Foundations for scalable model-checking. In: Proceedings of the 34th International Conference on Software Engineering, ICSE 2012. IEEE (to appear, 2012)

    Google Scholar 

  12. Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approach Based on Superimposed Variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  13. Ebert, C., Jones, C.: Embedded software: Facts, figures, and future. Computer 42(4), 42–52 (2009)

    Article  Google Scholar 

  14. Engström, E., Runeson, P.: Software product line testing-a systematic mapping study. Information and Software Technology 53(1), 2–13 (2010)

    Article  Google Scholar 

  15. Fantechi, A., Gnesi, S.: A behavioural model for product families. In: Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC-FSE 2007, pp. 521–524. ACM, New York (2007)

    Google Scholar 

  16. Fantechi, A., Gnesi, S.: Formal modeling for product families engineering. In: Proceedings of the 2008 12th International Software Product Line Conference, pp. 193–202. IEEE Computer Society, Washington, DC (2008)

    Chapter  Google Scholar 

  17. Fischbein, D., Uchitel, S., Braberman, V.: A foundation for behavioural conformance in software product line architectures. In: Proceedings of the ISSTA 2006 Workshop on Role of Software Architecture for Testing and Analysis, ROSATEA 2006, pp. 39–48. ACM, New York (2006)

    Chapter  Google Scholar 

  18. Gogolla, M., Parisi Presicce, F.: State diagrams in UML: A formal semantics using graph transformations. In: Proceedings PSMT, pp. 55–72 (1998)

    Google Scholar 

  19. Gruler, A., Leucker, M., Scheidemann, K.: Calculating and modeling common parts of software product lines. In: Proceedings of the 2008 12th International Software Product Line Conference, SPLC 2008, pp. 203–212. IEEE Computer Society, Washington, DC (2008)

    Chapter  Google Scholar 

  20. Gruler, A., Leucker, M., Scheidemann, K.: Modeling and Model Checking Software Product Lines. In: Barthe, G., de Boer, F.S. (eds.) FMOODS 2008. LNCS, vol. 5051, pp. 113–131. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  21. Hessel, A., Larsen, K.G., Mikucionis, M., Nielsen, B., Pettersson, P., Skou, A.: Testing Real-Time Systems Using UPPAAL. In: Hierons, R.M., Bowen, J.P., Harman, M. (eds.) FORTEST. LNCS, vol. 4949, pp. 77–117. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  22. Holt, N.E., Arisholm, E., Briand, L.: Technical report 2009-06: An eclipse plug-in for the flattening of concurrency and hierarchy in uml state machines. Tech. Rep. 2009-06, Simula Research Laboratory AS (2009)

    Google Scholar 

  23. Kalnins, A., Barzdins, J., Celms, E.: Model Transformation Language MOLA. In: Aßmann, U., Aksit, M., Rensink, A. (eds.) MDAFA 2003. LNCS, vol. 3599, pp. 62–76. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  24. Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Spencer Peterson, A.: Feature-Oriented domain analysis (FODA) feasibility study. Tech. rep., Software Engineering Institute, Carnegie Mellon University (1990)

    Google Scholar 

  25. Lauenroth, K., Pohl, K., Toehning, S.: Model checking of domain artifacts in product line engineering. In: Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering, ASE 2009, pp. 269–280. IEEE Computer Society, Washington, DC (2009)

    Chapter  Google Scholar 

  26. Li, H.C., Krishnamurthi, S., Fisler, K.: Interfaces for modular feature verification. In: Proceedings of the 17th IEEE International Conference on Automated Software Engineering, ASE 2002, pp. 195–204. IEEE Computer Society, Washington, DC (2002)

    Chapter  Google Scholar 

  27. Mathur, A.: Foundations of software testing. Pearson Education (2008)

    Google Scholar 

  28. Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving Executability into Object-Oriented Meta-languages. In: Briand, L., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  29. Myers, G.: The art of software testing. Wiley (1979)

    Google Scholar 

  30. OMG: OMG Unified Modeling Language TM ( OMG UML ), Superstructure. Tech. Rep. OMG (August 2011), http://www.omg.org/spec/UML/

  31. Oster, S., Wöbbeke, A., Engels, G., Schürr, A.: Model-based software product lines testing survey. In: Zander, J., Schieferdecker, I., Mosterman, P.J. (eds.) Model-Based Testing for Embedded Systems. Computational Analysis, Synthesis, and Design of Dynamic Systems, pp. 339–382. CRC Press (September 2011)

    Google Scholar 

  32. Oster, S., Zink, M., Lochau, M., Grechanik, M.: Pairwise feature-interaction testing for spls: potentials and limitations. In: Proceedings of the 15th International Software Product Line Conference, SPLC 2011, vol. 2, pp. 6:1–6:8. ACM, New York (2011)

    Google Scholar 

  33. Oster, S., Zorcic, I., Markert, F., Lochau, M.: MoSo-PoLiTe: tool support for pairwise and model-based software product line testing. In: Proceedings of the 5th Workshop on Variability Modeling of Software-Intensive Systems, VaMoS 2011, pp. 79–82. ACM, New York (2011)

    Chapter  Google Scholar 

  34. Perrouin, G., Oster, S., Sen, S., Klein, J., Baudry, B., le Traon, Y.: Pairwise testing for software product lines: Comparison of two approaches. Software Quality Journal, 1–39 (August 2011)

    Google Scholar 

  35. Pohl, K., Böckle, G., Van Der Linden, F.: Software product line engineering: foundations, principles, and techniques. Springer-Verlag New York Inc. (2005)

    Google Scholar 

  36. Schobbens, P.Y., Heymans, P., Trigaux, J.C., Bontemps, Y.: Generic semantics of feature diagrams. Computer Networks 51(2), 456–479 (2007)

    Article  MATH  Google Scholar 

  37. Thüm, T., Apel, S., Kästner, C., Kuhlemann, M., Schaefer, I., Saake, G.: Analysis Strategies for Software Product Lines. Tech. Rep. FIN-004-2012, School of Computer Science, University of Magdeburg, Germany (April 2012)

    Google Scholar 

  38. Tretmans, J.: Model Based Testing with Labelled Transition Systems. In: Hierons, R.M., Bowen, J.P., Harman, M. (eds.) FORTEST. LNCS, vol. 4949, pp. 1–38. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  39. Utting, M., Legeard, B.: Practical model-based testing: a tools approach. Morgan Kaufmann (2007)

    Google Scholar 

  40. Wasowski, A.: Flattening statecharts without explosions. SIGPLAN Not. 39(7), 257–266 (2004)

    Article  Google Scholar 

  41. Weißleder, S.: Test models and coverage criteria for automatic model-based test generation with UML state machines. Ph.D. thesis, Humboldt-Universität zu Berlin (2010)

    Google Scholar 

  42. Ziadi, T., Jézéquel, J.M.: Product Line Engineering with the UML: Deriving Products. In: Pohl, K. (ed.) Software Product Lines, pp. 557–586. Springer (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Devroey, X. et al. (2012). A Vision for Behavioural Model-Driven Validation of Software Product Lines. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change. ISoLA 2012. Lecture Notes in Computer Science, vol 7609. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-34026-0_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-34026-0_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-34025-3

  • Online ISBN: 978-3-642-34026-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics