A posteriori operation detection in evolving software models

Highlights ► Detection of applications of composite operations in evolving software models. ► Automatic generation of detection rules from executable operation specifications. ► Real-world study showing that 70% of all applied composite operations can be detected. ► Performance analysis showing that detection algorithm scales well for large models.

[1]  Eleni Stroulia,et al.  UMLDiff: an algorithm for object-oriented design differencing , 2005, ASE.

[2]  Tom Mens,et al.  On the Use of Graph Transformations for Model Refactoring , 2005, GTTSE.

[3]  Günter Kniesel,et al.  Static composition of refactorings , 2004, Sci. Comput. Program..

[4]  Dimitrios S. Kolovos,et al.  Establishing Correspondences between Models with the Epsilon Comparison Language , 2009, ECMDA-FA.

[5]  Richard F. Paige,et al.  Different models for model matching: An analysis of approaches to support model differencing , 2009, 2009 ICSE Workshop on Comparison and Versioning of Software Models.

[6]  Eleni Stroulia,et al.  Refactoring Detection based on UMLDiff Change-Facts Queries , 2006, 2006 13th Working Conference on Reverse Engineering.

[7]  Torbjörn Ekman,et al.  Refactoring-aware versioning in Eclipse , 2004, Electron. Notes Theor. Comput. Sci..

[8]  Markus Herrmannsdoerfer,et al.  Towards a generic operation recorder for model evolution , 2010, IWMCP '10.

[9]  Jim Davies,et al.  Science of Computer Programming , 2014 .

[10]  Oscar Nierstrasz,et al.  Finding refactorings via change metrics , 2000, OOPSLA '00.

[11]  Serge Demeyer,et al.  Software Evolution , 2010 .

[12]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[13]  Gabriele Taentzer,et al.  Henshin: advanced concepts and tools for in-place EMF model transformations , 2010, MODELS'10.

[14]  David L. Olson,et al.  Advanced Data Mining Techniques , 2008 .

[15]  Gregor Engels,et al.  Detecting and Resolving Process Model Differences in the Absence of a Change Log , 2008, BPM.

[16]  Tom Mens,et al.  A State-of-the-Art Survey on Software Merging , 2002, IEEE Trans. Software Eng..

[17]  O. Wesendonk,et al.  Merging Model Refactorings-An Empirical Study - , 2010 .

[18]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[19]  Andrew P. Black,et al.  How we refactor, and how we know it , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[20]  Cédric Brun Obeo,et al.  MODEL DIFFERENCES IN THE ECLIPSE MODELING FRAMEWORK , 2008 .

[21]  Jean Bézivin,et al.  On the unification power of models , 2005, Software & Systems Modeling.

[22]  Gerti Kappel,et al.  An Example Is Worth a Thousand Words: Composite Operation Modeling By-Example , 2009, MoDELS.

[23]  Markus Herrmannsdoerfer,et al.  Language Evolution in Practice: The History of GMF , 2009, SLE.

[24]  William F. Opdyke,et al.  Refactoring object-oriented frameworks , 1992 .

[25]  Maik Schmidt,et al.  Constructing difference tools for models using the SiDiff framework , 2008, ICSE Companion '08.

[26]  Romain Robbes Mining a Change-Based Software Repository , 2007, Fourth International Workshop on Mining Software Repositories (MSR'07:ICSE Workshops 2007).

[27]  Tom Mens,et al.  Introduction and Roadmap: History and Challenges of Software Evolution , 2008, Software Evolution.

[28]  Bart Meyers,et al.  A framework for evolution of modelling languages , 2011, Sci. Comput. Program..

[29]  Ernst Lippe,et al.  Operation-based merging , 1992, SDE 5.

[30]  M M Lehman,et al.  Software Evolution , 2002 .

[31]  Erhard Rahm,et al.  Rule-based Generation of Diff Evolution Mappings between Ontology Versions , 2010, ArXiv.

[32]  Ralph E. Johnson,et al.  Effective Software Merging in the Presence of Object-Oriented Refactorings , 2008, IEEE Transactions on Software Engineering.

[33]  Julian R. Ullmann,et al.  An Algorithm for Subgraph Isomorphism , 1976, J. ACM.

[34]  Hans Vangheluwe,et al.  Explicit transformation modeling , 2009, MODELS'09.

[35]  Udo Kelter,et al.  A Generic Difference Algorithm for UML Models , 2005, Software Engineering.

[36]  Ernst Lippe,et al.  Operation-based merging , 1992 .

[37]  Elmar Jürgens,et al.  COPE - Automating Coupled Evolution of Metamodels and Models , 2009, ECOOP.

[38]  Jeffrey G. Gray,et al.  DSMDiff: a differentiation tool for domain-specific models , 2007 .

[39]  Andrew P. Black,et al.  How We Refactor, and How We Know It , 2012, IEEE Trans. Software Eng..

[40]  Augusto Sampaio,et al.  Sound refactorings , 2010, Science of Computer Programming.

[41]  Jean-Marc Jézéquel,et al.  Refactoring UML Models , 2001, UML.

[42]  Stephan Diehl,et al.  Identifying Refactorings from Source-Code Changes , 2006, 21st IEEE/ACM International Conference on Automated Software Engineering (ASE'06).

[43]  Mikael Lindvall in Software Engineering , 2002 .

[44]  Thomas Ruhroth,et al.  Model evolution and refinement , 2012, Sci. Comput. Program..

[45]  Hans Vangheluwe,et al.  Towards Domain-specific Model Editors with Automatic Model Completion , 2010, Simul..

[46]  Sander Vermolen,et al.  Reconstructing Complex Metamodel Evolution , 2011, SLE.

[47]  Krzysztof Czarnecki,et al.  Feature-based survey of model transformation approaches , 2006, IBM Syst. J..

[48]  Jean Bézivin,et al.  Towards a precise definition of the OMG/MDA framework , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

[49]  J. Rodgers,et al.  Thirteen ways to look at the correlation coefficient , 1988 .

[50]  Reiko Heckel,et al.  Graph Transformation in a Nutshell , 2006, FoVMT.

[51]  Allen S. Lee A Scientific Methodology for MIS Case Studies , 1989, MIS Q..

[52]  Ralph E. Johnson,et al.  Automated Detection of Refactorings in Evolving Components , 2006, ECOOP.

[53]  Yang Li,et al.  Comparing State- and Operation-Based Change Tracking on Models , 2010, 2010 14th IEEE International Enterprise Distributed Object Computing Conference.

[54]  Aniruddha S. Gokhale,et al.  Domain-Specific Modeling , 2008, Handbook of Dynamic System Modeling.

[55]  Gerti Kappel,et al.  Adaptable Model Versioning in Action , 2010, Modellierung.