On the Power of Abstraction: a Model-Driven Co-evolution Approach of Software Code

被引:6
|
作者
Khelladi, Djamel Eddine [1 ]
Combemale, Benoit [2 ]
Acher, Mathieu [3 ]
Barais, Olivier [3 ]
机构
[1] Univ Rennes, IRISA, CNRS, Rennes, France
[2] Univ Toulouse & Inria Rennes, Rennes, France
[3] Univ Rennes, INRIA, IRISA, Rennes, France
关键词
METAMODELS;
D O I
10.1145/3377816.3381727
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Model-driven software engineering fosters abstraction through the use of models and then automation by transforming them into various artefacts, in particular to code, for example: 1) from architectural models to code, 2) from metamodels to API code (with EMF in Eclipse), 3) from entity models to front-end and back-end code in Web stack application (with JHispter), etc. In all these examples, the generated code is usually enriched by developers with additional code implementing advanced functionalities (e.g., checkers, recommenders, etc.) to build a full coherent system. When the system must evolve, so are the models to re-generate the code. As a result, the developers' enriched code may be impacted and thus need to co-evolve accordingly. Many approaches support the co-evolution of various artifacts, but not the co-evolution of code. This paper sheds light on this issue and envisions to fill this gap. We formulate the hypothesis that the code co-evolution can be driven by the model changes by means of change propagation. To investigate this hypothesis, we implemented a prototype for the case of metamodels and their accompanying code in EMF Eclipse. As a preliminary evaluation, we considered the case of the OCL Pivot metamodel evolution and its code co-evolution in two projects from version 3.2.2 to 3.4.4. Preliminary results confirms our hypothesis that model-driven evolution changes can effectively drive the code co-evolution. On 562 impacts in two projects' code by 221 metamodel changes, our approach was able to reach the average of 89% and 92,5% respectively of precision and recall.
引用
收藏
页码:85 / 88
页数:4
相关论文
共 50 条
  • [41] A model-driven approach for engineering trust and reputation into software services
    Moyano, Francisco
    Fernandez-Gago, Carmen
    Lopez, Javier
    [J]. JOURNAL OF NETWORK AND COMPUTER APPLICATIONS, 2016, 69 : 134 - 151
  • [42] A Generic Solution for Syntax-Driven Model Co-evolution
    van den Brand, Mark
    Protic, Zvezdan
    Verhoeff, Tom
    [J]. OBJECTS, MODELS, COMPONENTS, PATTERNS, TOOLS 2011, 2011, 6705 : 36 - 51
  • [43] Model-Driven Test Code Generation
    Perez Lamancha, Beatriz
    Reales, Pedro
    Polo, Macario
    Caivano, Danilo
    [J]. EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, ENASE 2011, 2013, 275 : 155 - 168
  • [44] SaaS Dynamic Evolution Based on Model-Driven Software Product Lines
    Mohamed, Fatma
    Abu-Matar, Mohammad
    Mizouni, Rabeb
    Al-Qutayri, Mahmoud
    Al Mahmoud, Zaid
    [J]. 2014 IEEE 6TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING TECHNOLOGY AND SCIENCE (CLOUDCOM), 2014, : 292 - 299
  • [45] Comparison of model-driven architecture and software factories in the context of Model-Driven Development
    Demir, Ahmet
    [J]. Joint Meeting of the Fourth Workshop on Model-Based Development of Computer-Based Systems and Third International Workshop on Model-Based Methodologies for Pervasive and Embedded Software, Proceedings, 2006, : 75 - 83
  • [46] Automatic Ada code generation using a model-driven engineering approach
    Alonso, Diego
    Vicente-Chicote, Cristina
    Sanchez, Pedro
    Alvarez, Barbara
    Losilla, Fernando
    [J]. RELIABLE SOFTWARE TECHNOLOGIES - ADA- EUROPE 2007, PROCEEDINGS, 2007, 4498 : 168 - +
  • [47] The Model-Driven (R)evolution
    Soley, Richard Mark
    [J]. ON THE MOVE TO MEANINGFUL INTERNET SYSTEMS: OTM 2013 WORKSHOPS, 2013, 8186 : XXI - XXII
  • [48] Developing configurable extensible code generators for model-driven development approach
    Barat, Souvik
    Kulkarni, Vinay
    [J]. 22ND INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING & KNOWLEDGE ENGINEERING (SEKE 2010), 2010, : 577 - 582
  • [49] A Model Based Testing Approach for Model-Driven Development and Software Product Lines
    Perez Lamancha, Beatriz
    Polo Usaola, Macario
    Piattini Velthius, Mario
    [J]. EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, 2011, 230 : 193 - +
  • [50] Co-evolution of the genetic code and ribozyme replication
    Stevenson, DS
    [J]. JOURNAL OF THEORETICAL BIOLOGY, 2002, 217 (02) : 235 - 253