Commenced in January 2007
Frequency: Monthly
Edition: International
Paper Count: 31532
A Survey of Model Comparison Strategies and Techniques in Model Driven Engineering

Authors: Junaid Rashid, Waqar Mehmood, Muhammad Wasif Nisar

Abstract:

This survey paper shows the recent state of model comparison as it’s applies to Model Driven engineering. In Model Driven Engineering to calculate the difference between the models is a very important and challenging task. There are number of tasks involved in model differencing that firstly starts with identifying and matching the elements of the model. In this paper, we discuss how model matching is accomplished, the strategies, techniques and the types of the model. We also discuss the future direction. We found out that many of the latest model comparison strategies are geared near enabling Meta model and similarity based matching. Therefore model versioning is the most dominant application of the model comparison. Recently to work on comparison for versioning has begun to deteriorate, giving way to different applications. Ultimately there is wide change among the tools in the measure of client exertion needed to perform model comparisons, as some require more push to encourage more sweeping statement and expressive force.

Keywords: Model comparison, model clone detection, model versioning, EMF Model, model diff.

Digital Object Identifier (DOI): doi.org/10.5281/zenodo.1108709

Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1804

References:


[1] D., Paige, Kolovos, R., and Polack, F. (2006). Model comparison: a foundation for model composition and model transformation testing. In IWGIMM, pages 13–20
[2] Pierantonio and Brun, A. (2008). Model differences in the Eclipse modelling framework. The European Journal for the Informatics Professional, pages 29–34.
[3] K., Seidl, Altmanninge, and Wimmer, M. (2009). A survey on model versioning approaches. International Journal of Web Information Systems, 5(3):pages271–304.
[4] Alanen, M. and Porres, I. (2003). Difference and union of models.Springer-Verlag Berlin Heidelberg 2003: pages 2–17.
[5] Koschke, R. (2006). Survey of research on software clones. Information and Software Technology 55 (2013),pages:1165–1199
[6] Cordy, Roy, C., J., and Koschke, R. (2009). Comparison and evaluation of code clone detection techniques and tools: A qualitative approach. Science of Computer Program-Ming, 74(7):pages:470–495
[7] Deissenboeck, F., Hummel, B., Jürgen’s, E., Schatz, B., Wagner, S., Girard, J., and Teuchert, S. (2009). Clone detection in automotive model-based development. In ICSE: pages 603–612.
[8] Deissenboeck, F., Hummel, B., Juergens, E., Pfaehler, M., and Schaetz, B. (2010). Model clone detection in practice. In IWSC, pages 57–64.
[9] Ohst, D., Welle, M., and Kelter, U. (2003). Differences be-tween versions of UML diagrams. ACM SIGSOFT Soft-ware Engineering Notes, 28(5), pages: 227–236.
[10] Dirk Ohst, Michael Welle and UdoKelter,September 1–5, 2003,Differences between Versions of UML Diagrams, IN ESEC/FSE’03:pages:1-10
[11] Selonen, P. and Kettunen, M. (2007).Met model-based inference of inter-model correspondence. In ECSMR: Pages 71–80.
[12] Oliveira, H., Murta, L., and Werner, C. (2005). Odyssey-vcs: a flexible version control system for UML model elements. In SCM:pages 1–16.
[13] Brun, C. and Pierantonio, A. (2008). Model differences in the Eclipse modeling framework. The European Journal for the Informatics Professional: pages 29–34.
[14] Farail, P., Gaufillet, P., Canals, A., Le Camus, C., Sciamma, D., Michel, P., Cregut, X., and Pantel, M. (2006). The top cased project: a toolkit in open source for critical aeronautic systems design. ERTS: pages 1–8, electronic.
[15] Clavel, M., Duran, F., Eker, S., Lincoln, P., Marti-Oliet, N., Meseguer, J., and Quesada, J. (2002). Maude: specification and programming in rewriting logic. Theoretical Computer Science, 285(2): pages: 187–243.
[16] M. Alanen and I. Porres. Difference and Union of Models. In UML 2003 - The Unified Modeling Language, Springer-Verlag, 2003, volume 2863 of LNCS, pages 2–17.
[17] P. Farail, P. Gaufillet, A. Canals, C. L. Camus, D. Sciamma, P. Michel, X. Crgut, and M. Pantel. AFIS 2006 Conference, The TOPCASED project: a Toolkit in Open source for Critical Aeronautic Systems Designpages:1-6
[18] In ERTS06, 2006.Sabrina Fortsch and Bernhard Westfechtel. Differencing and merging of software diagrams - state of the art and challenges. In ICSOFT (SE), pages 90-99.
[19] B. Collins-Sussman, B. Fitzpatrick, and C. Pilato. Inc., 2004, Version Control with Subversion. For Subversion 1.1. O’Reilly & Associates, pages:1-299
[20] R. Reddy, R. France, S. Ghosh, F. Fleurey, and B. Baudry. 2005, Model composition a signature-based approach. In AOM Workshop:pages:1-7
[21] Raghu Reddy, Robert France, Sudipto Ghosh, Franck Fleurey, and Benoit Baudry. October 2005, Model composition - a signature-based approach. In Aspect Oriented Modeling,pages:1-7
[22] Z. Xing and E. Stroulia. 2005, UMLDiff: an algorithm for objectoriented design differencing. In ASE’05. ACM: pages 54–65
[23] S. Nejati, M. Sabetzadeh, M. Chechik, S. Easterbrook, and P. Zave. Matching and merging, AT&T Laboratories–Research: pages:1-10
[24] Lindholm, T., Kangasharju, J., Tarkoma, (2006), Fast and simple xml tree differencing by sequence alignment. In: DocEng '06, ACM pages:75-84
[25] Treude, C., Berlik, S., Wenzel, S., Kelter, (2007), Difference computation of large models. In: ESEC-FSE '07, ACM pages:295-304
[26] Antonio, Cicchetti, Davide, Di Ruscio, Ludovico Iovino, Alfonso Pieantonio (2011). Managing the evolution of data intensive web application by model driven teachniques,Springer-Verlag,pages:1-31
[27] Ali Fatolahi, Stéphane S. Some. (2014), Assessing a Model-Driven Web-Application Engineering Approach. Journal of Software Engineering and Applications, pages:360-370
[28] M. Alanen and I. Porres. Difference and Union of Models. In UML 2003 - The Unified Modeling Language, volume 2863 of LNCS, Springer- Verlag: pages 2–17.
[29] Yuehua Lin, Jeff Gray & Frédéric Jouault DSMDiff: a differentiation tool for domain-specific models,pages:1-30
[30] Cédric Brun, Obeo France.(2008) Comparing and Merging Models with Eclipse An update on EMF Compare.pages:1-36
[31] Nejati, M. Sabetzadeh, M. Chechik, S. Easterbrook, and P. Zave (2007), Matching and merging of state charts specifications. IEEE Computer Society: pages 54–64
[32] Pontisso, N.; French Space Agency, Toulouse; Chemouil, D. TOPCASED Combining Formal Methods with Model-Driven Engineering: pages1-12.
[33] Xing and Eleni Stroulia (2005), UMLDiff: An Algorithm for Object- Oriented Design Differencing Zhenchang.ACM, pages:54-65.
[34] R. Reddy, R. France, S. Ghosh, F. Fleurey, and B. Baudry. (2005) Model composition - a signature-based approach.AOM,pages:1-7.
[35] Kolovos, (2009). Establishing correspondences between models with the epsilon comparison language. In Model Driven Architecture- Foundations and Applications, pages 146–157.
[36] Lin, Y., Gray, J., and Jouault, F. (2007). DSMDiff: a differentiation tool for domain-specific models. European Journal of Information Systems, pages: 349–361.
[37] Kolovos, D., Di Ruscio, D., Pierantonio, A., and Paige, R. (2009). Different models for model matching: An analysis of approaches to support model differencing. In CVSM: pages 1–6.
[38] Mehra, A., Grundy, J., and Hosking, J. (2005). A generic approach to supporting diagram differencing and merging for collaborative design. In ASE, pages: 204–213.
[39] Nguyen, T. (2006). A novel structure-oriented difference approach for software artifacts. In CSAC, volume 1, pages: 197–204.
[40] Van den Brand, M., Protic, Z., and Verhoeff, T. (2010). Generic tool for visualization of model differences. In IWMCP, pages: 66–75.
[41] Gheyi, R., Massoni, T., and Borba, P. (2005). An abstract equivalence notion for object models. Electronic Notes in Theoretical Computer Science, pages:3–21.
[42] Maoz, S., Ringert, J., and Rumpe, B. (2011). A manifesto for semantic model differencing. In ICMSE, MOD-ELS’10, pages: 194–203.
[43] Henry Chesbroug, JIM Spohrer A Research manifesto for Services sciences. In Communication of the ACM, July 2006, vol 49, pages: 35- 40.
[44] Chen, J. and Cui, H. (2004). Translation from adapted UML to promela for corba-based applications. Model Checking Software, pages: 234– 251.
[45] Latella, D., Majzik, I., and Massink, M. (1999). Automatic verification of a behavioural subset of UML state chart diagrams using the SPIN model-checker. Formal Aspects of Computing, pages: 637–664.
[46] Lilius, J. and Paltor, I. (1999). Formalising UML state ma-chines for model checking. UML, pages: 430–444.
[47] Stevens, P. (2009). A simple game-theoretic approach to checkonlyqvt relations. Theory and Practice of Model Transformations, pages:165– 180.
[48] Deissenboeck, F., Hummel, B., Jurgens, E., Schatz, B., Wagner, S., Girard, J., and Teuchert, S. (2009). Clone detection in automotive model-based development. In ICSE, pages:603–612.
[49] Pham, N., Nguyen, H., Nguyen, T., Al-Kofahi, J., and Nguyen, T. (2009). Complete and accurate clone detection in graph-based models. In ICSE, pages: 276–286.
[50] Deissenboeck, F., Hummel, B., Juergens, E., Pfaehler, M., and Schaetz, B. (2010). Model clone detection in park-tice. In IWSC, pages:57–64.
[51] Al-Batran, B., Schatz, B., and Hummel, B. (2011). Seman-tic clone detection for model-based development of embedded systems. Model Driven Engineering Languages and Systems, pages: 258–272.
[52] Alalfi, M. H., Cordy, J. R., Dean, T. R., Stephan, M., and Stevenson, A. (2012). Models are code too: Near-miss clone detection for Simulink models. In ICSM, volume 12.pages:1-10
[53] Liu, H., Ma, Z., Zhang, L., and Shao, W. (2007). Detecting duplications in sequence diagrams based on suffix trees. In APSEC, pages:269–276.
[54] Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., and Zave, P. (2007). Matching and merging of state charts specifications. In ICSE, pages:54–64.
[55] Rho, J. and Wu, C. (1998). An efficient version model of software diagrams. In APSEC, pages:236–243.
[56] Xing, Z. and Stroulia, E. (2005). UMLDiff: an algorithm for objectoriented design differencing. In ASE, pages:54–65.
[57] Girschick, M. (2006). Difference detection and visualization in UML class diagrams. Technical University of Darmstadt Technical Report TUD-CS-2006-5, pages: 1– 15.
[58] Barrett, S., Butler, G., and Chalin, P. (2010). Mirador: a synthesis of model matching strategies. In IWMCP, pages:2–10.
[59] Reddy, R., France, R., Ghosh, S., Fleurey, F., and Baudry, B. (2005). Model Composition - A Signature-Based Approach.pages:1-7
[60] Elrad, T., Aldawud, O., and Bader, A. (2002). Aspect-oriented modeling: Bridging the gap between implementation and design. In Generative Programming and Component Engineering, pages: 189–201.
[61] Berardi, D., Calvanese, D., and De Giacomo, G. (2005). Reasoning on UML class diagrams. Artificial Intelli-gence, pages:70–118.
[62] Maoz, S., Ringert, J., and Rumpe, B. (2011). Cd2alloy: Class diagrams analysis using alloy revisited. Model Driven Engineering Languages and Systems, pages: 592– 607.
[63] Chawathe, S., Rajaraman, A., Garcia-Molina, H., and Widom, J. (1996). Change detection in hierarchically structured information. In ICMD, pages: 493–504.
[64] Kelter, U., Wehren, J., and Niere, J. (2005). A generic difference algorithm for UML models. Software Engineering, pages:105–116.
[65] Altmanninger, K., Kappel, G., Kusel, A., Retschitzegger, W., Seidl, M., Schwinger, W., and Wimmer, M. (2008). AMOR-towards adaptable model versioning. In MCCM, volume 8, pages: 4–50.
[66] Chen, P., Critchlow, M., Garg, A., Van der Westhuizen, C., and van der Hoek, A. (2004). Differencing and merging within an evolving product line architecture. PFE, pages: 269–281.
[67] Rubin, J. and Chechik, M. (2012). Combining related products into product lines. In 15th International Conference on Fundamental Approaches to Software Engineering,pages:1-15
[68] Soto, M. and Munch, J. (2006). Process model difference analysis for supporting process evolution. Software Process Improvement, pages: 123–134.
[69] Soto, M. (2007). Delta-p: Model comparison using seman-tic web standards. Softwaretechnik-Trends, pages:27–31.
[70] Dijkman, R., Dumas, M., Van Dongen, B., Karik, R., and Mendling, J. (2011). Similarity of business process models: Metrics and evaluation. Information Systems, pages:498–516.
[71] Stephan, M., Alafi, M., Stevenson, A., and Cordy, J. (2012).Towards qualitative comparison of simulink model clone detection approaches. In IWSC, pages:84–85.