Metamodel driven model migration

Model-integrated computing (MIC) is a methodology for the development of computer-based systems (CBSs). MIC predicates that models are developed according to a particular metamodel (that is, a language representation of the CBS's actual domain). MIC is the integration of models with a way to extract a “meaning” from those models. Using metamodeling, it is possible to model the domain of the CBS and generate a domain-specific modeling environment (DSME) whose ontology is the types of components in the CBS. With this DSME, models of the CBS are constructed and expressed with the ontology of the domain, and then interpreted to produce an executable model. The true value of domain-specific modeling is found not in the DSME, but the models that are created in that DSME. Changes to the physical system can be modeled, and the resulting executable model then is a working version of the CBS. Unfortunately, if the model of the domain—or metamodel—is changed, all models that were defined using that metamodel may require maintenance to have the semantics that represent the CBS correctly. Without ensuring the correctness of the domain models after a change to the domain, the true value of the DSME will be lost. The only way to use instance models based on the original metamodel is to migrate them for use in the modified metamodel. This problem is known as the Model Migration (MM) problem. Current state of the art for Model Migration heavily depends on low-level implementation, and treats the domain models like data files rather than domain-specific models. There are benefits to performing model migration using domain-specific concepts such as mapping objects from one domain to another, and leveraging the existing metamodel structure for designing these mappings. This dissertation extends the state of the art by implementing such a metamodel based model migration language, which is a modeling language in its own right. Furthermore, a model migration language is dependent on two components: the meta-metamodel, and the graph-rewriting language used to perform the actual to reveal a framework that any meta-metamodel and graph-rewriting language would use to perform model migration. This dissertation gives form and function to such a framework, and describes how it can be specialized to yield a particular instance of a framework: a domain evolution tool.

[1]  Elke A. Rundensteiner,et al.  ROVER: flexible yet consistent evolution of relationships , 2001, Data Knowl. Eng..

[2]  David Garlan,et al.  TransformGen: automating the maintenance of structure-oriented environments , 1994, TOPL.

[3]  Andy Schürr,et al.  Programmed Graph Replacement Systems , 1997, Handbook of Graph Grammars.

[4]  李幼升,et al.  Ph , 1989 .

[5]  Oscar Nierstrasz,et al.  CDIF as the Interchange Format between Reengineering Tools , 1998, OOPSLA 1998.

[6]  Frank Marschall,et al.  BOTL - The Bidirectional Object Oriented Transformation Language , 2003 .

[7]  Gabor Karsai,et al.  Metamodeling-rapid design and evolution of domain-specific modeling environments , 1999, Proceedings ECBS'99. IEEE Conference and Workshop on Engineering of Computer-Based Systems.

[8]  Fabrizio Ferrandina,et al.  Simulation of Schema Change using Views , 1995, DEXA.

[9]  Ted J. Biggerstaff,et al.  Control Localization in Domain Specific Translation , 2002, ICSR.

[10]  Uwe A Mann Graph Rewrite Systems For Program Optimization , 2000 .

[11]  Dragan Milicev,et al.  Automatic Model Transformations Using Extended UML Object Diagrams in Modeling Environments , 2002, IEEE Trans. Software Eng..

[12]  Stephen C. Johnson A portable compiler: theory and practice , 1978, POPL.

[13]  Ian Sommerville,et al.  A Model for Versioning of Classes in Object-Oriented Databases , 1992, BNCOD.

[14]  D. Batory,et al.  Domain modeling in engineering computer-based systems , 1995, Proceedings of the 1995 International Symposium and Workshop on Systems Engineering of Computer-Based Systems.

[15]  Richard Lemesle,et al.  Transformation rules based on meta-modeling , 1998, Proceedings Second International Enterprise Distributed Object Computing (Cat. No.98EX244).

[16]  Henry F. Korth,et al.  Schema Versions and Dag Rearrangement Views in Object-oriented Databases , 1988 .

[17]  Yair Wand,et al.  Emancipating instances from the tyranny of classes in information modeling , 2000, TODS.

[18]  Andrew Jones,et al.  Evolution support in large-scale interoperable systems: a metadata driven approach , 2001, Proceedings 12th Australasian Database Conference. ADC 2001.

[19]  John W. Backus,et al.  The syntax and semantics of the proposed international algebraic language of the Zurich ACM-GAMM Conference , 1959, IFIP Congress.

[20]  Manfred Nagl Set theoretic approaches to graph grammars , 1986, Graph-Grammars and Their Application to Computer Science.

[21]  William A. Wulf,et al.  The Design of an Optimizing Compiler , 1975 .

[22]  Philippe Brèche,et al.  Advanced Principles for Changing Schemas of Object Databases , 1996, CAiSE.

[23]  T. Kuhn,et al.  The Structure of Scientific Revolutions , 1963 .

[24]  David H. Akehurst,et al.  Model translation : a UML-based specification technique and active implementation approach , 2000 .

[25]  Nimal Nissanke Introductory logic and sets for computer scientists , 1998 .

[26]  Kendall Scott,et al.  UML distilled - applying the standard object modeling language , 1997 .

[27]  Oege de Moor,et al.  Transformation in intentional programming , 1998, Proceedings. Fifth International Conference on Software Reuse (Cat. No.98TB100203).

[28]  B. I. Silva,et al.  Modeling and Verifying Hybrid Dynamic Systems Using CheckMate , 2001 .

[29]  Panos K. Chrysanthis,et al.  Schema Evolution through Changes to ER Diagrams , 1993, Journal of information science and engineering.

[30]  E. Long,et al.  Increasing Productivity at Saturn , 1998, Computer.

[31]  Svein Erik Bratsberg Unified Class Evolution by Object-Oriented Views , 1992, ER.

[32]  Gabor Karsai,et al.  Model-Integrated Computing , 1997, Computer.

[33]  Charles N. Fischer,et al.  Affix grammar driven code generation , 1985, TOPL.

[34]  Gabor Karsai,et al.  Smart Dust: communicating with a cubic-millimeter computer , 2001 .

[35]  Andy Schürr,et al.  Computing with Graphs and Graph Rewriting , 1999 .

[36]  Markus Tresch,et al.  Meta Object Management and its Application to Database Evolution , 1992, ER.

[37]  Stewart M. Clamen,et al.  Schema evolution and integration , 2005, Distributed and Parallel Databases.

[38]  Jay Banerjee,et al.  Semantics and implementation of schema evolution in object-oriented databases , 1987, SIGMOD '87.

[39]  M. Tamer Özsu,et al.  An axiomatic model of dynamic schema evolution in objectbase systems , 1997, TODS.

[40]  Nick Pittas,et al.  Evolution support in large-scale interoperable systems: a metadata driven approach , 2001, ADC.

[41]  Gabor Karsai,et al.  Generative Programming via Graph Transformations in the Model-Driven Architecture , 2002 .

[42]  A. Schfürr,et al.  Programmed graph replacement systems , 1997 .

[43]  Barbara Lerner,et al.  A model for compound type changes encountered in schema evolution , 2000, TODS.

[44]  Reiko Heckel,et al.  From Trees to Graphs: Defining the Semantics of Diagram Languages with Graph Transformation , 2000, ICALP Satellite Workshops.

[45]  A. Nico Habermann,et al.  Beyond schema evolution to database reorganization , 1990, OOPSLA/ECOOP '90.

[46]  A. Turing On Computable Numbers, with an Application to the Entscheidungsproblem. , 1937 .

[47]  Gabor Karsai,et al.  Meta-level Extension of the Multigraph Architecture , 1998 .

[48]  G. Nordstrom,et al.  Specifying graphical modeling systems using constraint-based meta models , 2000, CACSD. Conference Proceedings. IEEE International Symposium on Computer-Aided Control System Design (Cat. No.00TH8537).

[49]  Edward A. Lee,et al.  HYVISUAL: A HYBRID SYSTEM VISUAL MODELER , 1998 .

[50]  Andy Evans,et al.  Mapping between Levels in the Metamodel Architecture , 2001, UML.

[51]  Stanley B. Zdonik,et al.  The management of changing types in an object-oriented database , 1986, OOPLSA '86.

[52]  Gabor Karsai,et al.  The new metamodeling generation , 2001, Proceedings. Eighth Annual IEEE International Conference and Workshop On the Engineering of Computer-Based Systems-ECBS 2001.

[53]  Aditya Agrawal,et al.  On the use of Graph Transformations in the Formal Specification of Computer-Based Systems kle , 2003 .

[54]  Gabor Karsai,et al.  MULTIGRAPH: an architecture for model-integrated computing , 1995, Proceedings of First IEEE International Conference on Engineering of Complex Computer Systems. ICECCS'95.

[55]  Ákos Lédeczi,et al.  Towards a paradigm for activity modeling , 2000, Smc 2000 conference proceedings. 2000 ieee international conference on systems, man and cybernetics. 'cybernetics evolving to systems, humans, organizations, and their complex interactions' (cat. no.0.

[56]  Andy Schürr,et al.  Adding Graph Transformation Concepts to UML's Constraint Language OCL , 2001, UNIGRA.

[57]  Gabor Karsai,et al.  Model Reuse with Metamodel-Based Transformations , 2002, ICSR.

[58]  Pravin Varaiya,et al.  Modeling and verification of hybrid systems , 1995, Proceedings of 1995 American Control Conference - ACC'95.

[59]  Stanley B. Zdonik,et al.  The management of changing types in an object-oriented database , 1986, OOPSLA 1986.

[60]  Jonathan Gray,et al.  Applying the CDIF standard in the construction of CASE design tools , 1997, Proceedings of Australian Software Engineering Conference ASWEC 97.

[61]  Sven-Eric Lautemann Schema Versions in Object-Oriented Database Systems , 1997, DASFAA.

[62]  Jacob Stein,et al.  Class modification in the GemStone object-oriented DBMS , 1987, OOPSLA 1987.

[63]  David Notkin,et al.  Gandalf: Software development environments , 1986, IEEE Transactions on Software Engineering.

[64]  Charles N. Fischer,et al.  Retargetable Compiler Code Generation , 1982, CSUR.

[65]  Andy Schürr,et al.  Specification of Graph Translators with Triple Graph Grammars , 1994, WG.

[66]  Dragan Milicev Domain Mapping Using Extended UML Object Diagrams , 2002, IEEE Softw..

[67]  Shamkant B. Navathe,et al.  Schema analysis for database restructuring , 1977, TODS.

[68]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[69]  Amnon Naamad,et al.  The STATEMATE semantics of statecharts , 1996, TSEM.

[70]  Insup Lee,et al.  Distributed simulation of multi-agent hybrid systems , 2002, Proceedings Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. ISIRC 2002.

[71]  Ben Shneiderman,et al.  An architecture for automatic relational database sytem conversion , 1982, TODS.

[72]  Heng-Li Yang Reformulating Semantic Integrity Constraints Precisely , 1995, J. Inf. Sci. Eng..

[73]  Bernhard Rumpe,et al.  Modeling Languages: Syntax, Semantics and All That Stuff, Part I: The Basic Stuff , 2000 .

[74]  Charles Simonyi The Future is Intentional , 1999, Computer.

[75]  Fabrizio Ferrandina,et al.  An Integrated Approach to Schema Evolution for Object Databases , 1996, OOIS.

[76]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[77]  Andreas Rausch,et al.  Using XML/XMI for tool supported evolution of UML models , 2001, Proceedings of the 34th Annual Hawaii International Conference on System Sciences.

[78]  Jean Bézivin,et al.  Tooling the MDA framework: a new software maintenance and evolution scheme proposal , 2002 .

[79]  Sven-Eric Lautemann A propagation mechanism for populated schema versions , 1997, Proceedings 13th International Conference on Data Engineering.

[80]  Jacob Stein,et al.  Class modification in the GemStone object-oriented DBMS , 1987, OOPSLA '87.

[81]  Gabor Karsai,et al.  Interpreter Writing Using Graph Transformations , 2003 .

[82]  Elke A. Rundensteiner,et al.  A transparent object-oriented schema change approach using view evolution , 1995, Proceedings of the Eleventh International Conference on Data Engineering.

[83]  D. Corfield Conceptual mathematics: a first introduction to categories , 2002 .