Abstract
Technological and business changes influence the evolution of software systems. When this happens, the software artifacts may need to be adapted to the changes. This need is rapidly increasing in systems built using the Model-Driven Engineering (MDE) paradigm. An MDE system basically consists of metamodels, terminal models, and transformations. The evolution of a metamodel may render its related terminal models and transformations invalid. This paper proposes a three-step solution that automatically adapts terminal models to their evolving metamodels. The first step computes the equivalences and (simple and complex) changes between a given metamodel, and a former version of the same metamodel. The second step translates the equivalences and differences into an adaptation transformation. This transformation can then be executed in a third step to adapt to the new version any terminal model conforming to the former version. We validate our ideas by implementing a prototype based on the AtlanMod Model Management Architecture (AMMA) platform. We present the accuracy and performance that the prototype delivers on two concrete examples: a Petri Net metamodel from the research literature, and the Netbeans Java metamodel.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Garcés, K., Jouault, F., Cointe, P., Bézivin, J.: Adaptation of models to evolving metamodels. Technical report, INRIA (2008)
Kurtev, I., Bézivin, J., Jouault, F., Valduriez, P.: Model-based DSL frameworks. In: OOPSLA 2006, Portland, OR, USA, October 22-26, pp. 602–616. ACM, New York (2006)
Rahm, E., Bernstein, P.: A survey of approaches to automatic schema matching. The VLDB Journal 10(4), 334–350 (2001)
Do, H.H.: Schema Matching and Mapping-based Data Integration. Ph.D thesis, University of Leipzig (2005)
Ohst, D., Welle, M., Kelter, U.: Differences between versions of UML diagrams. SIGSOFT Softw. Eng. Notes 28(5), 227–236 (2003)
Xing, Z., Stroulia, E.: UMLDiff: an algorithm for object-oriented design differencing. In: ASE 2005, pp. 54–65. ACM, New York (2005)
Girschick, M.: Difference detection and visualization in UML class diagrams. Technical report, TU Darmstadt (2006)
Treude, C., Berlik, S., Wenzel, S., Kelter, U.: Difference computation of large models. In: Crnkovic, I., Bertolino, A. (eds.) ESEC/SIGSOFT FSE, pp. 295–304. ACM, New York (2007)
Sriplakich, P., Blanc, X., Gervais, M.P.: Supporting collaborative development in an open MDA environment. In: ICSM, pp. 244–253. IEEE Computer Society, Los Alamitos (2006)
Wenzel, S., Kelter, U.: Analyzing model evolution. In: Robby (ed.) ICSE, pp. 831–834. ACM, New York (2008)
Eclipse.org: EMF Compare (2008), http://wiki.eclipse.org/index.php/EMF_Compare
Falleri, J.R., Huchard, M., Lafourcade, M., Nebut, C.: Metamodel matching for automatic model transformation generation. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 326–340. Springer, Heidelberg (2008)
Melnik, S., Garcia-Molina, H., Rahm, E.: Similarity flooding: A versatile graph matching algorithm and ist application to schema matching. In: Proc. 18th ICDE, San Jose, CA (2002)
Wachsmuth, G.: Metamodel adaptation and model co-adaptation. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 600–624. Springer, Heidelberg (2007)
Gruschko, B., Kolovos, D., Paige., R.: Towards synchronizing models with evolving metamodels. In: Workshop on Model-Driven Software Evolution, MODSE 2007, Amsterdam, The Netherlands (2007)
Cicchetti, A., Ruscio, D.D., Eramo, R., Pierantonio, A.: Automating co-evolution in model-driven engineering. In: EDOC 2008: Proceedings of the 12th IEEE International EDOC Conference, München, Germany (2008)
Herrmannsdoerfer, M., Benz, S., Juergens, E.: Automatability of coupled evolution of metamodels and models in practice. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 645–659. Springer, Heidelberg (2008)
Vermolen, S.D., Visser, E.: Heterogeneous coupled evolution of software languages. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 630–644. Springer, Heidelberg (2008)
Jouault, F., Bézivin, J.: KM3: a DSL for Metamodel Specification. In: Gorrieri, R., Wehrheim, H. (eds.) FMOODS 2006. LNCS, vol. 4037, pp. 171–185. Springer, Heidelberg (2006)
Didonet del Fabro, M.: Metadata management using model weaving and model transformation. Ph.D thesis, Université de Nantes (2007)
Jouault, F., Kurtev, I.: Transforming models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)
Eclipse.org: The ATL User Manual (2008), http://www.eclipse.org/m2m/atl/doc/ATL_User_Manualv0.7.pdf
OMG: OCL 2.0 Specification, OMG Document formal/2006-05-01 (2006), http://www.omg.org/docs/ptc/05-06-06.pdf
Cohen, W., Ravikumar, P., Fienberg, S.: A comparison of string distance metrics for name-matching tasks. In: Kambhampati, S., Knoblock, C.A. (eds.) Proceedings of Workshop on Information Integration on the Web, IIWeb 2003, Acapulco, Mexico, pp. 73–78 (2003)
University of Princeton: Wordnet: An Electronic Lexical Database, http://wordnet.princeton.edu/
Didonet Del Fabro, M., Bézivin, J., Jouault, F., Breton, E., Gueltas, G.: AMW: A generic model weaver. In: Proceedings of the 1ère Journée sur l’Ingénierie Dirigée par les Modèles (IDM 2005) (2005)
Rijsbergen, C.J.V.: Information Retrieval. Butterworths (1979)
Garcés, K., Jouault, F., Cointe, P., Bézivin, J.: A Domain Specific Language for Expressing Model Matching. In: Proceedings of the 5ère Journée sur l’Ingénierie Dirigée par les Modèles (IDM 2009) (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Garcés, K., Jouault, F., Cointe, P., Bézivin, J. (2009). Managing Model Adaptation by Precise Detection of Metamodel Changes. In: Paige, R.F., Hartman, A., Rensink, A. (eds) Model Driven Architecture - Foundations and Applications. ECMDA-FA 2009. Lecture Notes in Computer Science, vol 5562. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02674-4_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-02674-4_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02673-7
Online ISBN: 978-3-642-02674-4
eBook Packages: Computer ScienceComputer Science (R0)