DSMCompare: domain-specific model differencing for graphical domain-specific languages

被引:5
作者
Zadahmad, Manouchehr [1 ]
Syriani, Eugene [1 ]
Alam, Omar [2 ]
Guerra, Esther [3 ]
de Lara, Juan [3 ]
机构
[1] Univ Montreal, Montreal, PQ, Canada
[2] Trent Univ, Peterborough, ON, Canada
[3] Univ Autonoma Madrid, Madrid, Spain
关键词
Model-driven engineering; Model differencing; Domain-specific languages; Graphical concrete syntax; TRANSFORMATION; EVOLUTION; TOOLS;
D O I
10.1007/s10270-021-00971-1
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
During the development of a software project, different developers collaborate on creating and changing models. These models evolve and need to be versioned. Over the past several years, progress has been made in offering dedicated support for model versioning that improves on what is being supported by text-based version control systems. However, there is still need to understand model differences in terms of the semantics of the modeling language, and to visualize the changes using its concrete syntax. To address these issues, we propose a comprehensive approach-called DSMCompare-that considers both the abstract and the concrete syntax of a domain-specific language (DSL) when expressing model differences, and which supports defining domain-specific semantics for specific difference patterns. The approach is based on the automatic extension of the DSL to enable the representation of changes and on the automatic adaptation of its graphical concrete syntax to visualize the differences. In addition, we allow for the definition of semantic differencing rules to capture recurrent domain-specific difference patterns. Since these rules can be conflicting with each other, we introduce algorithms for conflict resolution and rule scheduling. To demonstrate the applicability and effectiveness of our approach, we report on evaluations based on synthetic models and on version histories of models developed by third parties.
引用
收藏
页码:2067 / 2096
页数:30
相关论文
共 61 条
[1]   A survey on modeling and model-driven engineering practices in the embedded software industry [J].
Akdur, Deniz ;
Garousi, Vahid ;
Demirors, Onur .
JOURNAL OF SYSTEMS ARCHITECTURE, 2018, 91 :62-82
[2]   A 2/3-approximation algorithm for vertex-weighted matching [J].
Al-Herz, Ahmed ;
Pothen, Alex .
DISCRETE APPLIED MATHEMATICS, 2022, 308 :46-67
[3]  
Altmanninger K., 2008, 1 INT WORKSH MOD COE
[4]   SURVEY PAPER A survey on model versioning approaches [J].
Altmanninger, Kerstin ;
Seidl, Martina ;
Wimmer, Manuel .
INTERNATIONAL JOURNAL OF WEB INFORMATION SYSTEMS, 2009, 5 (03) :271-+
[5]  
[Anonymous], CDO MODEL REPOSITORY
[6]  
[Anonymous], 2014, P INT WORKSH REV VAR, DOI DOI 10.1145/2647908.2655965
[7]  
Arendt T, 2010, LECT NOTES COMPUT SC, V6394, P121
[8]   Metamodel clone detection with SAMOS [J].
Babur, Onder ;
Cleophas, Loek ;
van den Brand, Mark .
JOURNAL OF COMPUTER LANGUAGES, 2019, 51 :57-74
[9]  
Basciani F., 2014, P 2 INT WORKSHOP MOD, V1242, P66
[10]   Formal foundation of consistent EMF model transformations by algebraic graph transformation [J].
Biermann, Enrico ;
Ermel, Claudia ;
Taentzer, Gabriele .
SOFTWARE AND SYSTEMS MODELING, 2012, 11 (02) :227-250