A comparison of quality flaws and technical debt in model transformation specifications

The quality of model transformations (MT) has high impact on model-driven engineering (MDE) software development approaches, because of the central role played by transformations in MDE for refining, migrating, refactoring and other operations on models. For programming languages, a popular paradigm...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:The Journal of systems and software 2020-11, Vol.169, p.110684, Article 110684
Hauptverfasser: Kolahdouz-Rahimi, Shekoufeh, Lano, Kevin, Sharbaf, Mohammadreza, Karimi, Meysam, Alfraihi, Hessa
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:The quality of model transformations (MT) has high impact on model-driven engineering (MDE) software development approaches, because of the central role played by transformations in MDE for refining, migrating, refactoring and other operations on models. For programming languages, a popular paradigm for code quality is the concept of technical debt (TD), which uses the analogy that quality flaws in code are a debt burden carried by the software, which must either be ‘redeemed’ by expending specific effort to remove its flaws, or be tolerated, with ongoing additional costs to maintenance due to the flaws. Whilst the analysis and management of quality flaws and TD in programming languages has been investigated in depth over several years, less research on the topic has been carried out for model transformations. In this paper we investigate the characteristics of quality flaws and technical debt in model transformation languages, based upon systematic analysis of over 100 transformation cases in four leading MT languages. Based on quality flaw indicators for TD, we identify significant differences in the level and kinds of technical debt in different MT languages, and we propose ways in which TD in MT can be reduced and managed. •Provides a survey of quality flaws and technical debt in four MT languages.•Analyses the level and differences of technical debt in these languages.•Identifies the factors which may lead to technical debt in MT.•Analyses how technical debt changes over MT evolution.•Identifies refactoring techniques to reduce TD in MT.
ISSN:0164-1212
1873-1228
DOI:10.1016/j.jss.2020.110684