Skip to main content
Book cover

ICSOFT

ICSOFT 2015: Software Technologies pp 19–41Cite as

Filtered Model-Driven Product Line Engineering with SuperMod: The Home Automation Case

  • Conference paper
  • First Online:

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 586))

Abstract

Software Product Line Engineering promises to increase the productivity of software development. In the literature, a plan-driven process has been established that is divided up into domain and application engineering. We argue that the strictly sequential order of its process activities implies several disadvantages such as increased complexity, late customer feedback, and duplicate maintenance. SuperMod is a novel model-driven tool based upon a filtered editing model oriented towards version control. The tool provides integrated support for domain and application engineering, offering an iterative and incremental style of development. In this paper, we apply SuperMod to a well-known case study, the Home Automation System product line. We learn that the tool supports a broad variety of iterative and incremental development processes, ranging from phase-structured to feature-driven. Furthermore, it can mitigate the disadvantages of the traditional software product line development process.

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

Notes

  1. 1.

    Our notion of partial feature configuration only implies that there exist unbound features. This differs from the concept of staged configurations (as introduced, e.g., in [4]), which need to be specified in a top-down way, introducing parent-child selection constraints.

  2. 2.

    Graphical Modeling Framework, http://www.eclipse.org/modeling/gmp/.

  3. 3.

    Equivalently, we could have applied the positive realization and committed it against positively bound features; however, this would have required three additional code generation increments.

  4. 4.

    http://btn1x4.inf.uni-bayreuth.de/supermod/update.

  5. 5.

    http://btn1x4.inf.uni-bayreuth.de/supermod/screencasts.

References

  1. Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Boston (2001)

    Google Scholar 

  2. Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Carnegie-Mellon University, Software Engineering Institute (1990)

    Google Scholar 

  3. Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations. Principles and Techniques, Berlin (2005)

    Book  MATH  Google Scholar 

  4. Czarnecki, K., Kim, C.H.P.: Cardinality-based feature modeling and constraints: a progress report. In: International Workshop on Software Factories at OOPSLA 2005, San Diego, California, USA. ACM (2005)

    Google Scholar 

  5. Chacon, S.: Pro Git, 1st edn. Apress, Berkely (2009)

    Book  Google Scholar 

  6. Collins-Sussman, B., Fitzpatrick, B.W., Pilato, C.M.: Version Control with Subversion. O’Reilly, Sebastopol (2004)

    Google Scholar 

  7. Völter, M., Stahl, T., Bettin, J., Haase, A., Helsen, S.: Model-Driven Software Development: Technology, Engineering Management. Wiley, New York (2006)

    Google Scholar 

  8. OMG: UML Superstructure. Object Management Group, Needham, MA. formal/2011-08-06th edn. (2011)

    Google Scholar 

  9. Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF Eclipse Modeling Framework. The Eclipse Series, 2nd edn. Addison-Wesley, Upper Saddle River (2009)

    Google Scholar 

  10. Altmanninger, K., Seidl, M., Wimmer, M.: A survey on model versioning approaches. Int. J. Web Inf. Syst. (IJWIS) 5, 271–304 (2009)

    Article  Google Scholar 

  11. Gomaa, H.: Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison-Wesley, Boston (2004)

    Google Scholar 

  12. Schwägerl, F., Buchmann, T., Uhrig, S., Westfechtel, B.: Towards the integration of model-driven engineering, software product line engineering, and software configuration management. In: Hammoudi, S., Pires, L.F., Desfray, P., Filipe, J. (eds.) Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2015), Angers, France, pp. 5–18. SCITEPRESS (2015)

    Google Scholar 

  13. Schwägerl, F., Buchmann, T., Westfechtel, B.: SuperMod - A model-driven tool that combines version control and software product line engineering. In: ICSOFT-PT 2015 - Proceedings of the 10th International Conference on Software Paradigm Trends, Colmar, Alsace, France, pp.5–18. SCITEPRESS (2015)

    Google Scholar 

  14. Kästner, C., Trujillo, S., Apel, S.: Visualizing software product line variabilities in source code. In: Proceedings of the 2nd International SPLC Workshop on Visualisation in Software Product Line Engineering (ViSPLE), pp. 303–313 (2008)

    Google Scholar 

  15. Buchmann, T., Schwägerl, F.: FAMILE: tool support for evolving model-driven product lines. In: Störrle, H., Botterweck, G., Bourdells, M., Kolovos, D., Paige, R., Roubtsova, E., Rubin, J., Tolvanen, J.P. (eds.) Joint Proceedings of Co-Located Events at the 8th European Conference on Modelling Foundations and Applications. CEUR WS, Building 321, DK-2800 Kongens Lyngby, pp.59–62. Technical University of Denmark (DTU) (2012)

    Google Scholar 

  16. Heidenreich, F., Kopcsek, J., Wende, C.: FeatureMapper: mapping features to Models. In: Companion Proceedings of the 30th International Conference on Software Engineering (ICSE 2008), pp. 943–944. ACM, New York (2008)

    Google Scholar 

  17. Apel, S., Kästner, C.: An overview of feature-oriented software development. J. Object Technol. 8, 49–84 (2009)

    Article  Google Scholar 

  18. Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling step-wise refinement. In: Proceedings of the 25th International Conference on Software Engineering, ICSE 2003, pp. 187–197. IEEE Computer Society, Washington, DC (2003)

    Google Scholar 

  19. Jayaraman, P., Whittle, J., Elkhodary, A.M., Gomaa, H.: Model composition in product lines and feature interaction detection using critical pair analysis. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 151–165. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  20. Zschaler, S., Sánchez, P., Santos, J., Alférez, M., Rashid, A., Fuentes, L., Moreira, A., Araújo, J., Kulesza, U.: VML* – A family of languages for variability management in software product lines. In: van den Brand, M., Gašević, D., Gray, J. (eds.) SLE 2009. LNCS, vol. 5969, pp. 82–102. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  21. Völter, M., Groher, I.: Product line implementation using aspect-oriented and model-driven software development. In: Proceedings of the 11th International Software Product Line Conference, SPLC 2007, pp. 233–242. IEEE Computer Society, Washington, DC (2007)

    Google Scholar 

  22. Westfechtel, B., Munch, B.P., Conradi, R.: A layered architecture for uniform version management. IEEE Trans. Softw. Eng. 27, 1111–1133 (2001)

    Article  Google Scholar 

  23. Buchmann, T.: Valkyrie: A UML-based model-driven environment for model-driven software engineering. In: Hammoudi, S., van Sinderen, M., Cordeiro, J. (eds.) Proceedings of the 7th International Conference on Software Paradigm Trends (ICSOFT 2012), pp.147–157. SCITEPRESS (2012)

    Google Scholar 

  24. Gamma, E., Helm, R., Johnson, R., Vlissides, J.M.: Design Patterns: Elements of Reusable Object-Oriented Software, 1st edn. Addison-Wesley Longman, Amsterdam (1995)

    Google Scholar 

  25. Laguna, M.A., Crespo, Y.: A systematic mapping study on software product line evolution: From legacy system reengineering to product line refactoring. Sci. Comput. Program. 78, 1010–1034 (2013)

    Article  Google Scholar 

  26. Lopez-Herrejon, R.E., Batory, D.: A standard problem for evaluating product-line methodologies. In: Dannenberg, R.B. (ed.) GCSE 2001. LNCS, vol. 2186, pp. 10–24. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  27. Ghanam, Y., Maurer, F.: Extreme product line engineering – refactoring for variability: a test-driven approach. In: Sillitti, A., Martin, A., Wang, X., Whitworth, E. (eds.) XP 2010. LNBIP, vol. 48, pp. 43–57. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  28. Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley Professional, Reading (2004)

    Google Scholar 

  29. Walkingshaw, E., Ostermann, K.: Projectional editing of variational software. In: Generative Programming: Concepts and Experiences, GPCE 2014, Vasteras, Sweden, 15–16 September 2014, pp. 29–38 (2014)

    Google Scholar 

  30. Buchmann, T., Schwägerl, F.: Ensuring well-formedness of configured domain models in model-driven product lines based on negative variability. In: Proceedings of the 4th International Workshop on Feature-Oriented Software Development, FOSD 2012, pp. 37–44. ACM, New York (2012)

    Google Scholar 

  31. Cetina, C., Giner, P., Fons, J., Pelechano, V.: Autonomic computing through reuse of variability models at runtime: The case of smart homes. Computer 42, 37–43 (2009)

    Article  Google Scholar 

Download references

Acknowledgements

The authors give thanks to Marco Dmitrow for adapting the HAS case study in a master project and for valuable input for the improvement of SuperMod.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Felix Schwägerl .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Schwägerl, F., Buchmann, T., Westfechtel, B. (2016). Filtered Model-Driven Product Line Engineering with SuperMod: The Home Automation Case. In: Lorenz, P., Cardoso, J., Maciaszek, L., van Sinderen, M. (eds) Software Technologies. ICSOFT 2015. Communications in Computer and Information Science, vol 586. Springer, Cham. https://doi.org/10.1007/978-3-319-30142-6_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-30142-6_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-30141-9

  • Online ISBN: 978-3-319-30142-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics