Skip to main content

Evaluating the Multi-variant Model Transformation of UML Class Diagrams to Java Models

  • Conference paper
  • First Online:
Model-Driven Engineering and Software Development (MODELSWARD 2019)

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

  • 676 Accesses

Abstract

When the two disciplines, software product line engineering (SPLE) and model-driven software engineering (MDSE), come together multi-variant model transformations (MVMTs) are almost indispensable tool support.

Variability annotations are boolean expressions used in annotative SPL engineering (SPLE) for expressing in which products model elements are visible. Developing the SPL in a model-driven way requires various model representations, e.g., Java models for generating the source code. Although model transformations are the key essence of MDSE and can be used to generate these representations from already existing (model) artifacts, they suffer from not being able to handle the variability annotations automatically. Thus, the developer is forced to annotate target models manually contradicting the goal of both disciplines, MDSE and SPLE, to increase productivity. Recently, approaches have been proposed to solve the problem using, e.g., traces, to propagate annotations without changing the transformation itself. In this paper we utilize a generic framework allowing to evaluate whether the target model of arbitrary (reuse-based) MVMTs was annotated correctly. In particular, for two different product lines we illuminate the transformation of UML class diagrams to Java models from which we finally can generate source code. On the one hand, we examine the quality of different post-processing annotation propagation strategies, on the other hand, the scalability of the framework itself.

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

Institutional subscriptions

Notes

  1. 1.

    http://btn1x4.inf.uni-bayreuth.de/mvmt/uml2java.

References

  1. Anjorin, A., Buchmann, T., Westfechtel, B.: The families to persons case. In: Proceedings of the 10th Transformation Tool Contest (TTC 2017), Co-located with the 2017 Software Technologies: Applications and Foundations (STAF 2017), Marburg, Germany, 21 July 2017, pp. 27–34 (2017). http://ceur-ws.org/Vol-2026/paper2.pdf

  2. Apel, S., Janda, F., Trujillo, S., Kästner, C.: Model superimposition in software product lines. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 4–19. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02408-5_2

    Chapter  Google Scholar 

  3. Brun, C., Pierantonio, A.: Model differences in the eclipse modelling framework. UPGRADE IX(2), 29–34 (2008)

    Google Scholar 

  4. Bruneliere, H., Cabot, J., Jouault, F., Madiot, F.: MoDisco: a generic and extensible framework for model driven reverse engineering. In: Proceedings of the IEEE/ACM International Conference on Automated Software Engineering, ASE 2010, pp. 173–174. ACM, New York (2010). https://doi.org/10.1145/1858996.1859032

  5. Buchmann, T.: BXtend - a framework for (Bidirectional) incremental model transformations. In: Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2018, Funchal, Madeira - Portugal, 22–24 January 2018, pp. 336–345 (2018). https://doi.org/10.5220/0006563503360345

  6. Buchmann, T., Greiner, S.: Bidirectional model transformations using a handcrafted triple graph transformation system. In: Software Technologies, 11th International Joint Conference, ICSOFT 2016, Lisbon, Portugal, 24–26 July 2016, Revised Selected Papers, pp. 201–220 (2016). https://doi.org/10.1007/978-3-319-62569-0_10

  7. Buchmann, T., Greiner, S.: Managing variability in models and derived artefacts in model-driven software product lines. In: Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2018, Funchal, Madeira - Portugal, 22–24 January 2018, pp. 326–335 (2018). https://doi.org/10.5220/0006563403260335

  8. Buchmann, T., Schwägerl, F.: Ensuring well-formedness of configured domain models in model-driven product lines based on negative variability. In: 4th International Workshop on Feature-Oriented Software Development, FOSD 2012, Dresden, Germany, 24–25 September 2012, pp. 37–44 (2012). https://doi.org/10.1145/2377816.2377822

  9. Buchmann, T., Schwägerl, F.: FAMILE: tool support for evolving model-driven product lines. In: Joint Proceedings of Co-located Events at 8th ECMFA, CEUR WS, Lyngby, Denmark, pp. 59–62, July 2012. http://btn1x4.inf.uni-bayreuth.de/publications/ECMFA-Buchmann2012.pdf

  10. Czarnecki, K., Antkiewicz, M., Kim, C.H.P., Lau, S., Pietroszek, K.: Model-driven software product lines. In: Companion to the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2005, San Diego, CA, USA, 16–20 October 2005, pp. 126–127 (2005). https://doi.org/10.1145/1094855.1094896

  11. Famelis, M., et al.: Migrating automotive product lines: a case study. In: Theory and Practice of Model Transformations - 8th International Conference, ICMT 2015, Held as Part of STAF 2015, Proceedings, L’Aquila, Italy, 20–21 July 2015, pp. 82–97 (2015). https://doi.org/10.1007/978-3-319-21155-8_7

  12. Greiner, S., Westfechtel, B.: On determining variability annotations in partially annotated models. In: Proceedings of the 13th International Workshop on Variability Modelling of Software-Intensive Systems, VAMOS 2019, Leuven, Belgium, 6–8 February 2019. https://doi.org/10.1145/3302333.3302341

  13. Greiner, S., Westfechtel, B.: Generating multi-variant java source code using generic aspects. In: Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2018, Funchal, Madeira - Portugal, 22–24 January 2018, pp. 36–47 (2018). https://doi.org/10.5220/0006536700360047

  14. Greiner, S., Westfechtel, B.: Improving trace-based propagation of feature annotations in model transformations. In: Proceedings of MODELS 2018 Workshops: ModComp, MRT, OCL, FlexMDE, EXE, COMMitMDE, MDETools, GEMOC, MORSE, MDE4IoT, MDEbug, MoDeVVa, ME, MULTI, HuFaMo, AMMoRe, PAINS Co-located with ACM/IEEE 21st International Conference on Model Driven Engineering Languages and Systems (MODELS 2018), Copenhagen, Denmark, 14 October 2018, pp. 584–593 (2018). http://ceur-ws.org/Vol-2245/me_paper_2.pdf

  15. Greiner, S., Westfechtel, B.: Generic framework for evaluating commutativity of multi-variant model transformations. In: Proceedings of the 7th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2019, Prague, Czech Republic, 20–22 February 2019, pp. 155–166 (2019). https://doi.org/10.5220/0007585701550166

  16. Heidenreich, F., Kopcsek, J., Wende, C.: FeatureMapper: Mapping features to models. In: Companion Proceedings of 30th ICSE, pp. 943–944. ACM, Leipzi, May 2008. https://doi.org/10.1145/1370175.1370199

  17. ikv++ technologies: medini QVT. ikv++ technologies (2018). http://projects.ikv.de/qvt

  18. Johansen, M.F., Haugen, Ø., Fleurey, F.: An algorithm for generating t-wise covering arrays from large feature models. In: 16th International Software Product Line Conference, SPLC 2012, Salvador, Brazil , 2–7 September 2012, vol. 1, pp. 46–55 (2012). https://doi.org/10.1145/2362536.2362547

  19. Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1–2), 31–39 (2008). https://doi.org/10.1016/j.scico.2007.08.002

    Article  MathSciNet  MATH  Google Scholar 

  20. Kaltenecker, C., Grebhahn, A., Siegmund, N., Guo, J., Apel, S.: Distance-based sampling of software configuration spaces. In: Proceedings of the 41st International Conference on Software Engineering, pp. 1084–1094. ICSE 2019. IEEE Press, Piscataway (2019). https://doi.org/10.1109/ICSE.2019.00112

  21. 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, November 1990

    Google Scholar 

  22. Kiczales, G.: Aspect-oriented programming. In: Proceedings of the 27th International Conference on Software Engineering, ICSE 2005, St. Louis, MO, USA, p. 730. ACM, New York (2005). ISBN: 1-58113-963-2. https://doi.org/10.1145/1062455.1062640

  23. Klatt, B.: Xpand: a closer look at the model2text transformation language. Language 10(16), 2008 (2007)

    Google Scholar 

  24. de Lara, J., Guerra, E., Chechik, M., Salay, R.: Model transformation product lines. In: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2018, Copenhagen, Denmark, 14–19 October 2018, pp. 67–77 (2018). https://doi.org/10.1145/3239372.3239377

  25. Leblebici, E., Anjorin, A., Schürr, A.: Developing emoflon with emoflon. In: Theory and Practice of Model Transformations - 7th International Conference, ICMT 2014, Held as Part of STAF 2014, . Proceedings, York, UK, 21–22 July 2014, pp. 138–145 (2014). https://doi.org/10.1007/978-3-319-08789-4_10

  26. Lopez-Herrejon, R.E., Batory, D.: A standard problem for evaluating product-line methodologies. In: Bosch, J. (ed.) GCSE 2001. LNCS, vol. 2186, pp. 10–24. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44800-4_2

    Chapter  Google Scholar 

  27. Marijan, D., Gotlieb, A., Sen, S., Hervieu, A.: Practical pairwise testing for software product lines. In: 17th International Software Product Line Conference, SPLC 2013, Tokyo, Japan, 26–30 August 2013, pp. 227–235 (2013). https://doi.org/10.1145/2491627.2491646

  28. Object Management Group, Needham, MA: Unified Modeling Language (UML), formal/17-12-05 edn. March 2017

    Google Scholar 

  29. Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering: Foundations Principles and Techniques. Springer, Berlin (2005). https://link.springer.com/book/10.1007%2F3-540-28901-1

    Book  Google Scholar 

  30. Salay, R., Famelis, M., Rubin, J., Sandro, A.D., Chechik, M.: Lifting model transformations to product lines. In: 36th International Conference on Software Engineering, ICSE 2014, Hyderabad, India, 31 May–07 June 2014, pp. 117–128 (2014). https://doi.org/10.1145/2568225.2568267

  31. Schürr, A.: Specification of graph translators with triple graph grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1995). https://doi.org/10.1007/3-540-59071-4_45

    Chapter  Google Scholar 

  32. Schwägerl, F., Buchmann, T., Westfechtel, B.: Multi-variant model transformations - a problem statement. In: ENASE 2016 - Proceedings of the 11th International Conference on Evaluation of Novel Approaches to Software Engineering, Rome, Italy 27–28, April 2016, pp. 203–209 (2016). https://doi.org/10.5220/0005878702030209

  33. Sijtema, M.: Introducing variability rules in atl for managing variability in mde-based product lines. In: Proceedings of MtATL, vol. 10, pp. 39–49 (2010)

    Google Scholar 

  34. Stahl, T., Völter, M., Bettin, J., Haase, A., Helsen, S.: Model-Driven Software Development - Technology, Engineering, Management. Pitman, London (2006). http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0470025700.html

    Google Scholar 

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

    Google Scholar 

  36. Strüber, D., Rubin, J., Arendt, T., Chechik, M., Taentzer, G., Plöger, J.: Variability-based model transformation: formal foundation and application. Formal Aspects Comput. 30(1), 133–162 (2018). https://doi.org/10.1007/s00165-017-0441-3

    Article  MathSciNet  MATH  Google Scholar 

  37. Strüber, D., Peldzsus, S., Jürjens, J.: Taming multi-variability of software product line transformations. In: Russo, A., Schürr, A. (eds.) FASE 2018. LNCS, vol. 10802, pp. 337–355. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-89363-1_19

    Chapter  Google Scholar 

  38. Strüber, D., Schulz, S.: A tool environment for managing families of model transformation rules. In: Echahed, R., Minas, M. (eds.) ICGT 2016. LNCS, vol. 9761, pp. 89–101. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-40530-8_6

    Chapter  Google Scholar 

  39. Taentzer, G., Salay, R., Strüber, D., Chechik, M.: Transformations of software product lines: A generalizing framework based on category theory. In: 20th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2017, Austin, TX, USA, 17–22 September 2017, pp. 101–111 (2017). https://doi.org/10.1109/MODELS.2017.22

  40. Taentzer, G., Salay, R., Strüber, D., Chechik, M.: Transformation of software product lines. In: Tichy, M., Bodden, E., Kuhrmann, M., Wagner, S., Steghöfer, J.P. (eds.) Software Engineering und Software Management 2018, pp. 51–52. Gesellschaft für Informatik, Bonn (2018)

    Google Scholar 

  41. Wagelaar, D., Iovino, L., Ruscio, D.D., Pierantonio, A.: Translational semantics of a co-evolution specific language with the EMF transformation virtual machine. In: Theory and Practice of Model Transformations - 5th International Conference, ICMT 2012, Proceedings, Prague, Czech Republic, 28–29 May 2012, pp. 192–207 (2012). https://doi.org/10.1007/978-3-642-30476-7_13

  42. Westfechtel, B., Greiner, S.: From single- to multi-variant model transformations: trace-based propagation of variability annotations. In: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2018, Copenhagen, Denmark, 14–19 October 2018, pp. 46–56 (2018). https://doi.org/10.1145/3239372.3239414

  43. Willink, E.D.: The micromapping model of computation; the foundation for optimized execution of eclipse qvtc/qvtr/umlx. In: Theory and Practice of Model Transformation - 10th International Conference, ICMT 2017, Held as Part of STAF 2017, Proceedings, Marburg, Germany, 17–18 July 2017, pp. 51–65 (2017). https://doi.org/10.1007/978-3-319-61473-1_4

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sandra Greiner .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Greiner, S., Westfechtel, B. (2020). Evaluating the Multi-variant Model Transformation of UML Class Diagrams to Java Models. In: Hammoudi, S., Pires, L., Selić, B. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2019. Communications in Computer and Information Science, vol 1161. Springer, Cham. https://doi.org/10.1007/978-3-030-37873-8_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-37873-8_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-37872-1

  • Online ISBN: 978-3-030-37873-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics