Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

Managing complexity and variability of a model-based embedded software product line

Abstract

This paper presents a framework for model-based product lines of embedded systems. We show how to integrate model-based product line techniques into a consistent framework that can deal with large product lines as they are common in industry. The framework demonstrates the strengths of model-based techniques like abstraction, support for customised representations, and a high degree of automation. In particular, we provide the following contributions: (1) to shift existing product lines towards a model-based approach, we support the (semi-) automated extraction of models from existing requirement, test, and implementation artefacts; (2) to cope with the complexity of artefacts and their interrelations in industrial product lines, we support the generation of context-specific views. These views support developers, e.g., in analysing complex dependencies between different artefacts; (3) finally, we support automated product derivation based on an integrated hardware abstraction layer. Most of the presented concepts have been inspired by challenges arising in the industrial application of product line techniques in the model-based engineering of embedded systems. We report on experiences gathered during the application of the techniques to a prototypical product line (on a rapid prototyping platform in the university lab) and to industrial sample cases (at the industry partner).

This is a preview of subscription content, log in to check access.

References

  1. 1

    Agrawal A, Simon G, Karsai G (2004) Semantic translation of simulink/stateflow models to hybrid automata using graph transformations. Electron Notes Theor Comput Sci 109: 43–56

  2. 2

    AUTOSAR: AUTOSAR AUTomotive Open System ARchitecture. http://www.autosar.org/

  3. 3

    Biehl M, DeJiu C, Törngren M (2010) Integrating safety analysis into the model-based development toolchain of automotive embedded systems. In: LCTES ’10. ACM, New York, pp 125–132

  4. 4

    Botterweck G, Polzer A, Kowalewski S (2009) Interactive configuration of embedded systems product lines. In: MAPLE 2009. CEUR Workshop Proceedings, vol 557, San Francisco, pp 29–35. ISSN 1613-0073

  5. 5

    Botterweck G, Polzer A, Kowalewski S (2009) Using higher-order transformations to derive variability mechanism for embedded systems. In: ACESMB 2009. Denver

  6. 6

    Clements P, Northrop LM (2002) Software product lines: practices and patterns. The SEI series in software engineering. Addison- Wesley, Boston

  7. 7

    Czarnecki K, Antkiewicz M (2005) Mapping features to models: a template approach based on superimposed variants. In: GPCE’05

  8. 8

    Dhungana D, Gruenbacher P, Rabiser R (2007) Decisionking: a flexible and extensible tool for integrated variability modeling. In: First international workshop on variability modelling of software-intensive Systems. Limerick, pp 119–128

  9. 9

    Eclipse-Foundation: ATL (ATLAS Transformation Language). http://www.eclipse.org/m2m/atl/

  10. 10

    Eclipse-Foundation: EMF - Eclipse Modelling Framework. http://www.eclipse.org/modeling/emf/

  11. 11

    Eclipse-Foundation: Epsilon. http://www.eclipse.org/gmt/epsilon/

  12. 12

    Eclipse-Foundation: GMF—Graphical Modelling Framework. http://www.eclipse.org/modeling/gmf/

  13. 13

    Eclipse-Foundation: Xtext—a programming language framework. http://www.eclipse.org/Xtext/

  14. 14

    Heidenreich F, Kopcsek J, Wende C (2008) Featuremapper: mapping features to models. In: ICSE Companion ’08. ACM, pp 943–944

  15. 15

    IBM-Corporation: IBM Rational DOORS. http://www-01.ibm.com/software/awdtools/doors/

  16. 16

    IRISA-Campus de Beaulieu: OpenEmbeDD. http://openembedd.org/

  17. 17

    Kang K, Cohen S, Hess J, Novak W, Peterson S (1990) Feature oriented domain analysis (FODA) feasibility study. SEI Technical Report CMU/SEI-90-TR-21, ADA 235785, Software Engineering Institute, Pittsburgh

  18. 18

    Merschen D, Polzer A, Botterweck G, Kowalewski S (2011) Experiences of applying model-based analysis to support the development of automotive software product lines. In: VAMOS 11. Namur

  19. 19

    Object Management Group (OMG)(2010) Object Constraint Language, version 2.2. http://www.omg.org/spec/OCL/2.2

  20. 20

    openarchitectureware.org—official open architecture ware homepage. http://www.openarchitectureware.org/

  21. 21

    Pohl K, Boeckle G, van der Linden F (2005) Software product line engineering : foundations, principles, and techniques. Springer, New York

  22. 22

    Polzer A, Botterweck G, Wangerin I, Kowalewski S (2009) Variabilität im modellbasierten Engineering von eingebetteten Systemen. In: 7. workshop automotive software engineering. In: Lecture notes in informatics (LNI), vol P-154. Gesellschaft für Informatik (GI), pp 2702–2719

  23. 23

    Polzer A, Kowalewski S, Botterweck G (2009) Applying software product line techniques in model-based embedded systems engineering. In: MOMPES 2009, IEEE Computer Society, Santa Cruz, pp 2–10

  24. 24

    Polzer A, Merschen D, Thomas J, Hedenetz B, Botterweck G, Kowalewski S (2010) View-supported rollout and evolution of model-based ecu applications. In: MOMPES 2010. Antwerp, Belgium, pp 37–44

  25. 25

    Software Engineering Institute (2008) SPL Hall of Fame. Web site. http://www.sei.cmu.edu/productlines/; http://splc.net/fame.html

  26. 26

    Stahl T, Voelter M (2006) Model-driven software development: technology, engineering, management. Wiley, Chichester

  27. 27

    Voelter M, Groher I (2007) Product line implementation using aspect-oriented and model-driven software development. In: SPLC 2007. Kyoto

Download references

Author information

Correspondence to Andreas Polzer.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Polzer, A., Merschen, D., Botterweck, G. et al. Managing complexity and variability of a model-based embedded software product line. Innovations Syst Softw Eng 8, 35–49 (2012). https://doi.org/10.1007/s11334-011-0174-z

Download citation

Keywords

  • Model transformation
  • Software product lines
  • Variability modelling
  • Complexity
  • Traceability