Abstract
In Model-Driven Software Development, models are automatically processed to support the creation, build, and execution of systems. A large variety of dedicated model-transformation languages exists, promising to efficiently realize the automated processing of models. To investigate the actual benefit of using such specialized languages, we performed a large-scale controlled experiment in which over 78 subjects solve 231 individual tasks using three languages. The experiment sheds light on commonalities and differences between model transformation languages (ATL, QVT-O) and on benefits of using them in common development tasks (comprehension, change, and creation) against a modern general-purpose language (Xtend). Our results show no statistically significant benefit of using a dedicated transformation language over a modern general-purpose language. However, we were able to identify several aspects of transformation programming where domain-specific transformation languages do appear to help, including copying objects, context identification, and conditioning the computation on types.
Original language | English |
---|---|
Title of host publication | Proceedings of the 2018 ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/SIGSOFT FSE 2018, Lake Buena Vista, FL, USA, November 04-09, 2018 |
Number of pages | 11 |
Publisher | Association for Computing Machinery |
Publication date | 2018 |
Pages | 445-455 |
ISBN (Print) | 978-1-4503-5573-5 |
DOIs | |
Publication status | Published - 2018 |
Keywords
- Model-Driven Software Development
- Model Transformation Languages
- ATL
- QVT-O
- General-Purpose Languages
- Transformation Programming
- Domain-Specific Languages
- Comprehension Tasks
- Change Tasks
- Copying Objects