SEET: Symbolic Execution of ETL Transformations

被引:4
作者
Azizi, Banafsheh [1 ]
Zamani, Bahman [1 ]
Kolahdouz-Rahimi, Shekoufeh [1 ]
机构
[1] Univ Isfahan, Dept Software Engn, MDSE Res Grp, Esfahan, Iran
关键词
Model-Driven Engineering (MDE); Epsilon Transformation Language (ETL); Verification of model transformations; Metamodel footprint; Symbolic execution; MODEL TRANSFORMATION;
D O I
10.1016/j.jss.2020.110675
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Model transformations are known as the main pillar of model-driven approaches. A model transformation is a program, written in a transformation language, to convert a model into another model or code. Similar to any other program, model transformations need to be verified. The problem is that some transformation errors, e.g., logical errors, can only be detected via execution. Our focus in this research is on the Epsilon Transformation Language (ETL), one of the most extensively used model transformation languages. Lack of approaches to detecting logical errors in ETL transformations is a gap which needs to be addressed. In this paper, we present an approach to symbolic execution of ETL transformations and detecting logical errors. The approach uses a constraint solver to assess the satisfiability of a path condition and generates a symbolic metamodel footprint which can be used to detect errors. The approach is corroborated by a tool that is integrated with Eclipse. To evaluate the approach, the precision and recall are calculated for two well-known case studies. The scalability is evaluated via nine experiments. The usefulness and usability aspects are evaluated in a subjective manner. The results show the improvement in the field of verifying ETL transformations. (C) 2020 Elsevier Inc. All rights reserved.
引用
收藏
页数:34
相关论文
共 49 条
[1]   A survey of approaches for verifying model transformations [J].
Ab Rahim, Lukman ;
Whittle, Jon .
SOFTWARE AND SYSTEMS MODELING, 2015, 14 (02) :1003-1028
[2]   Symbolic Execution of High-Level Transformations [J].
Al-Sibahi, Ahmad Salim ;
Dimovski, Aleksandar S. ;
Wasowski, Andrzej .
PROCEEDINGS OF THE 2016 ACM SIGPLAN INTERNATIONAL CONFERENCE ON SOFTWARE LANGUAGE ENGINEERING (SLE'16), 2016, :207-220
[3]  
Alhwikem F., 2016, P 13 WORKSHOP MODEL, V1713, P54
[4]   Automatic Generation of Ecore Models for Testing ATL Transformations [J].
Almendros-Jimenez, Jesus M. ;
Becerra-Teron, Antonio .
MODEL AND DATA ENGINEERING, 2016, 9893 :16-30
[5]  
[Anonymous], 2007, P 22 IEEE ACM INT C
[6]  
[Anonymous], 2018, LOGIC ERROR DEFINITI
[7]  
Azizi B, 2017, PROCEEDINGS OF THE 2017 7TH INTERNATIONAL CONFERENCE ON COMPUTER AND KNOWLEDGE ENGINEERING (ICCKE), P154, DOI 10.1109/ICCKE.2017.8167945
[8]   A Survey of Symbolic Execution Techniques [J].
Baldoni, Roberto ;
Coppa, Emilio ;
D'Elia, Daniele Cono ;
Demetrescu, Camil ;
Finocchi, Irene .
ACM COMPUTING SURVEYS, 2018, 51 (03) :1-39
[9]   VERIFYING AND VALIDATING SOFTWARE REQUIREMENTS AND DESIGN SPECIFICATIONS [J].
BOEHM, BW .
IEEE SOFTWARE, 1984, 1 (01) :75-88
[10]  
Boolean Algebra, 2018, BOOLEAN ALGEBRA 2 LA