Advertisement

Supporting Variability Exploration and Resolution During Model Migration

  • Davide Di Ruscio
  • Juergen Etzlstorfer
  • Ludovico Iovino
  • Alfonso Pierantonio
  • Wieland Schwinger
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9764)

Abstract

In Model-Driven Engineering (MDE) metamodels are pivotal entities that underpin the definition of models. Similarly to any software artifact, metamodels evolve over time due to evolutionary pressure. However, whenever a metamodel is modified, related models may become invalid and adaptations are required to restore their validity. Generally, when adapting a model in response to metamodel changes, more than one migration strategy is possible. Unfortunately, inspecting all of them, which greatly overlap one with another, can be prone to errors. In this paper, we present an approach supporting the identification of variability during model migration and selection of migration alternatives by generating an intensional and thus concise representation of all migration alternatives by including also an explicit visualization of conflicting solutions.

Keywords

Feature Model Migration Action Software Product Line Model Migration Migration Strategy 
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.

References

  1. 1.
    Batory, D.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 7–20. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  2. 2.
    Bézivin, J., Jouault, F., Rosenthal, P., Valduriez, P.: Modeling in the large and modeling in the small. In: Aßmann, U., Akşit, M., Rensink, A. (eds.) MDAFA 2003. LNCS, vol. 3599, pp. 33–46. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Cicchetti, A., Di Ruscio, D., Pierantonio, A.: Managing dependent changes in coupled evolution. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 35–51. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  4. 4.
    Cicchetti, A., Di Ruscio, D., Eramo, R., Pierantonio, A.: Automating co-evolution in model-driven engineering. In: Proceedings of EDOC, pp. 222–231. IEEE (2008)Google Scholar
  5. 5.
    Dam, H.K., Egyed, A., Winikoff, M., Reder, A., Lopez-Herrejon, R.E.: Consistent merging of model versions. J. Syst. Softw. 112, 137–155 (2015)CrossRefGoogle Scholar
  6. 6.
    Di Ruscio, D., Iovino, L., Pierantonio, A.: Coupled evolution in model-driven engineering. IEEE Softw. 29(6), 78–84 (2012)CrossRefzbMATHGoogle Scholar
  7. 7.
    Di Ruscio, D., Iovino, L., Pierantonio, A.: Evolutionary togetherness: how to manage coupled evolution in metamodeling ecosystems. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2012. LNCS, vol. 7562, pp. 20–37. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  8. 8.
    Di Ruscio, D., Paige, R.F., Pierantonio, A.: Guest editorial to the special issue on success stories in model driven engineering. Sci. Comput. Program. 89, 69–70 (2014)CrossRefGoogle Scholar
  9. 9.
    Egyed, A., Letier, E., Finkelstein, A.: Generating and evaluating choices for fixing inconsistencies in UML design models. In: 23rd IEEE/ACM International Conference on Automated Software Engineering, pp. 99–108, September 2008Google Scholar
  10. 10.
    Famelis, M., Salay, R., Chechik, M.: Partial models: towards modeling and reasoning with uncertainty. In: Proceedings of ICSE, pp. 573–583, June 2012Google Scholar
  11. 11.
    Font, J., Arcega, L., Haugen, O., Cetina, C.: Addressing metamodel revisions in model-based software product lines. In: Proceedings of the 2015 ACM SIGPLAN International Conference on GPCE, pp. 161–170. ACM (2015)Google Scholar
  12. 12.
    Garcés, K., Jouault, F., Cointe, P., Bézivin, J.: Managing model adaptation by precise detection of metamodel changes. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 34–49. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  13. 13.
    Herrmannsdoerfer, M.: COPE – a workbench for the coupled evolution of metamodels and models. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 286–295. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  14. 14.
    Hutchinson, J., Whittle, J., Rouncefield, M., Kristoffersen, S.: Empirical assessment of MDE in industry. In: Proceedings of the ICSE, pp. 471–480. ACM (2011)Google Scholar
  15. 15.
    Körtgen, A.T.: New strategies to resolve inconsistencies between models of decoupled tools. In: 3rd Workshop on Living with Inconsistencies in Software Development, Bd, vol. 661, pp. 21–31 (2010)Google Scholar
  16. 16.
    Kurtev, I., Bzivin, J., Aksit, M.: Technological spaces: an initial appraisal. In: CoopIS, DOA’2002 Federated Conferences, Industrial Track (2002)Google Scholar
  17. 17.
    Kusel, A., Etzlstorfer, J., Kapsammer, E., Retschitzegger, W., Schwinger, W., Schönböck, J.: Consistent co-evolution of models and transformations. In: Proceedings of the 18th International Conference on Model Driven Engineering Languages and Systems (MODELS). IEEE, Ottawa, Canada (2015)Google Scholar
  18. 18.
    Lientz, B.P., Swanson, E.B.: Software Maintenance Management. Addison-Wesley, Reading (1980)Google Scholar
  19. 19.
    Mantz, F., Taentzer, G., Lamo, Y.: Well-formed model co-evolution with customizable model migration. In: Electronic Communications of the EASST, vol. 58 (2013)Google Scholar
  20. 20.
    Parsons, J., Wand, Y.: Using objects for systems analysis. Commun. ACM 40(12), 104–110 (1997)CrossRefGoogle Scholar
  21. 21.
    Rose, L.M., Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Model migration with epsilon flock. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 184–198. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  22. 22.
    Rose, L.M., Paige, R.F., Kolovos, D.S., Polack, F.A.C.: The epsilon generation language. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 1–16. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  23. 23.
    Salay, R., Chechik, M., Horkoff, J., Di Sandro, A.: Managing requirements uncertainty with partial models. Requirements Eng. 18(2), 107–128 (2013)CrossRefGoogle Scholar
  24. 24.
    Schmidt, D.C.: Guest editor’s introduction: model-driven engineering. Computer 39(2), 25–31 (2006)CrossRefGoogle Scholar
  25. 25.
    Schönböck, J., Kusel, A., Etzlstorfer, J., Kapsammer, E., Schwinger, W., Wimmer, M., Wischenbart, M.: CARE - a constraint-based approach for re-establishing conformance-relationships. In: Proceedings of the APCCM (2014)Google Scholar
  26. 26.
    Strüber, D., Rubin, J., Arendt, T., Chechik, M., Taentzer, G., Plöger, J.: RuleMerger: automatic construction of variability-based model transformation rules. In: Stevens, P., Wasowski, A. (eds.) FASE 2016. LNCS, vol. 9633, pp. 122–140. Springer, Heidelberg (2016). doi: 10.1007/978-3-662-49665-7_8 CrossRefGoogle Scholar
  27. 27.
    Thüm, T., Kästner, C., Benduhn, F., Meinicke, J., Saake, G., Leich, T.: FeatureIDE: an extensible framework for feature-oriented software development. Sci. Comput. Program. 79, 70–85 (2014)CrossRefGoogle Scholar
  28. 28.
    Van Lamsweerde, A.: Goal-oriented requirements engineering: a guided tour. In: Fifth IEEE International Symposium on Requirements Engineering, pp. 249–262. IEEE (2001)Google Scholar
  29. 29.
    Wagelaar, D., Iovino, L., Di Ruscio, D., Pierantonio, A.: Translational semantics of a co-evolution specific language with the EMF transformation virtual machine. In: Hu, Z., de Lara, J. (eds.) ICMT 2012. LNCS, vol. 7307, pp. 192–207. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  30. 30.
    Wieland, K., Langer, P., Seidl, M., Wimmer, M., Kappel, G.: Turning conflicts into collaboration. Comput. Support. Coop. Work 22(2–3), 181–240 (2013)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Davide Di Ruscio
    • 1
  • Juergen Etzlstorfer
    • 2
  • Ludovico Iovino
    • 3
  • Alfonso Pierantonio
    • 1
  • Wieland Schwinger
    • 2
  1. 1.Department of Information Engineering, Computer Science and MathematicsUniversità degli Studi dell’AquilaL’AquilaItaly
  2. 2.Department of Cooperative Information SystemsJohannes Kepler University LinzLinzAustria
  3. 3.Gran Sasso Science InstituteL’AquilaItaly

Personalised recommendations