Migrating Automotive Product Lines: A Case Study

  • Michalis FamelisEmail author
  • Levi Lúcio
  • Gehan Selim
  • Alessio Di Sandro
  • Rick Salay
  • Marsha Chechik
  • James R. Cordy
  • Juergen Dingel
  • Hans Vangheluwe
  • Ramesh S.
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9152)


Software Product Lines (SPL) are widely used to manage variability in the automotive industry. In a rapidly changing industrial environment, model transformations are necessary to aid in automating the evolution of SPLs. However, existing transformation technologies are not well-suited to handling industrial-grade variability in software artifacts. We present a case study where we “lift” a previously developed migration transformation so that it becomes applicable to realistic industrial product lines. Our experience indicates that it is both feasible and scalable to lift transformations for industrial SPLs.


Product Line Model Transformation General Motor Graph Transformation Software Product Line 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
  2. 2.
  3. 3.
    Acher, M., Collet, P., Lahire, P., France, R.: Comparing approaches to implement feature model composition. In: Kühne, T., Selic, B., Gervais, M.-P., Terrier, F. (eds.) ECMFA 2010. LNCS, vol. 6138, pp. 3–19. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  4. 4.
    Apel, S., Kästner, C.: An overview of feature-oriented software development. J. Object Technol. 8(5), 49–84 (2009)CrossRefGoogle Scholar
  5. 5.
    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: advanced concepts and tools for in-place EMF model transformations. In: Proceedings of MODELS 2010, pp. 121–135 (2010)Google Scholar
  6. 6.
    Barroca, B., Lúcio, L., Amaral, V., Félix, R., Sousa, V.: DSLTrans: a turing incomplete transformation language. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 296–305. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  7. 7.
    Borba, P., Teixeira, L., Gheyi, R.: A theory of software product line refinement. J. Theor. CS 455, 2–30 (2012)MathSciNetGoogle Scholar
  8. 8.
    Classen, A., Heymans, P., Schobbens, P.Y., Legay, A., Raskin, J.F.: Model checking lots of systems: efficient verification of temporal properties in software product lines. In: Proceedings of ICSE 2010, pp. 335–344 (2010)Google Scholar
  9. 9.
    Classen, A., Heymans, P., Tun, T.T., Nuseibeh, B.: Towards safer composition. In: Proceedings of ICSE’2009, Companion Volume, pp. 227–230 (2009)Google Scholar
  10. 10.
    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) CrossRefGoogle Scholar
  11. 11.
    Czarnecki, K., Helsen, S.: Staged configuration using feature models. In: Nord, R.L. (ed.) SPLC 2004. LNCS, vol. 3154, pp. 266–283. Springer, Heidelberg (2004) CrossRefGoogle Scholar
  12. 12.
    de Moura, L., Bjørner, N.S.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  13. 13.
    Flores, R., Krueger, Ch., Clements, P.: Second-generation product line engineering: a case study at general motors. In: Capilla, R., Bosch, J., Kang, K.C. (eds.) Systems and Software Variability Management, pp. 223–250. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  14. 14.
    Garcés, K., Parra, C., Arboleda, H., Yie, A., Casallas, R.: Variability management in a model-driven software product line. Rev. Av. en sistemas e Informática 4(2), 3–12 (2007)Google Scholar
  15. 15.
    Gronback, R.: Eclipse Modeling Project. Addison Wesley, New York (2009)Google Scholar
  16. 16.
    Haugen, Ø., Moller-Pedersen, B., Oldevik, J, Olsen, G.K., Svendsen, A.: Adding standardized variability to domain specific languages. In: Proceedings of SPLC 2008, pp. 139–148 (2008)Google Scholar
  17. 17.
    Kästner, C., Apel, S.: Integrating compositional and annotative approaches for product line engineering. In: Proceedings of McGPLE Workshop at GPCE 2008, pp. 35–40 (2008)Google Scholar
  18. 18.
    Kästner, C., Apel, S., Thüm, T., Saake, G.: Type checking annotation-based product lines. ACM TOSEM 21(3), 14 (2012)CrossRefGoogle Scholar
  19. 19.
    Kästner, C., von Rhein, A., Erdweg, S., Pusch, J., Apel, S., Rendel, T., Ostermann, K.: Toward variability-aware testing. In: Proceedings of FOSD 2012, pp. 1–8 (2012)Google Scholar
  20. 20.
    Lúcio, L., Barroca, B., Amaral, V.: A technique for automatic validation of model transformations. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010, Part I. LNCS, vol. 6394, pp. 136–150. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  21. 21.
    Lúcio, L., Oakes, B.J., Vangheluwe, H.: A Technique for Symbolically Verifying Properties of Graph-Based Model Transformations. Technical report SOCS-TR-2014.1, McGill University (2014).
  22. 22.
    Neves, L., Teixeira, L., Sena, D., Alves, V., Kulezsa, U., Borba, P.: Investigating the safe evolution of software product lines. ACM SIGPLAN Not. 47(3), 33–42 (2011)Google Scholar
  23. 23.
    Nudelman, E., Leyton-Brown, K., Hoos, H., Devkar, A., Shoham, Y.: Understanding random SAT: beyond the clauses-to-variables ratio. In: Proceedings of CP 2004, pp. 438–452 (2004)Google Scholar
  24. 24.
    Pretschner, A., Broy, M., Kruger, I.H., Stauner, T.: Software engineering for automotive systems: a roadmap. In: Proceedings of FOSE 2007, pp. 55–71 (2007)Google Scholar
  25. 25.
    Rubin, J., Chechik, M.: Combining related products into product lines. In: de Lara, J., Zisman, A. (eds.) Fundamental Approaches to Software Engineering. LNCS, vol. 7212, pp. 285–300. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  26. 26.
    Salay, R., Famelis, M., Rubin, J., Di Sandro, A., Chechik, M.: Lifting model transformations to product lines. In: Proceedings of ICSE 2014, pp. 117–128 (2014)Google Scholar
  27. 27.
    Schulze, S. Thüm, T., Kuhlemann, M., Saake, G.: Variant-preserving refactoring in feature-oriented software product lines. In: Proceedings of VAMOS 2012, pp. 73–81 (2012)Google Scholar
  28. 28.
    Seidl, C., Heidenreich, F., Aßmann, U.: Co-evolution of models and feature mapping in software product lines. In: Proceedings of SPLC 2012, pp. 76–85 (2012)Google Scholar
  29. 29.
    Selim, G.M.K., Lúcio, L., Cordy, J.R., Dingel, J., Oakes, B.J.: Specification and verification of graph-based model transformation properties. In: Giese, H., König, B. (eds.) ICGT 2014. LNCS, vol. 8571, pp. 113–129. Springer, Heidelberg (2014) Google Scholar
  30. 30.
    Selim, G.M.K., Wang, S., Cordy, J.R., Dingel, J.: Model transformations for migrating legacy models: an industrial case study. In: Vallecillo, A., Tolvanen, J.-P., Kindler, E., Störrle, H., Kolovos, D. (eds.) ECMFA 2012. LNCS, vol. 7349, pp. 90–101. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  31. 31.
    Thüm, T., Apel, S., Kästner, C., Kuhlemann, M., Schaefer, I., Saake, G.: Analysis strategies for software product lines. School of Computer Science, University of Magdeburg, Technical report FIN-004-2012, (2012)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Michalis Famelis
    • 1
    Email author
  • Levi Lúcio
    • 2
  • Gehan Selim
    • 3
  • Alessio Di Sandro
    • 1
  • Rick Salay
    • 1
  • Marsha Chechik
    • 1
  • James R. Cordy
    • 3
  • Juergen Dingel
    • 3
  • Hans Vangheluwe
    • 2
  • Ramesh S.
    • 4
  1. 1.University of TorontoTorontoCanada
  2. 2.McGill UniversityMontrealCanada
  3. 3.Queens UniversityKingstonCanada
  4. 4.General MotorsWarrenUSA

Personalised recommendations