by Markus Riedl-Ehrenleitner
Abstract:
In model-driven engineering, design models raise the level of abstraction and allow for efficient designing without considering implementation details. Still, it is crucial that design models and source code are in sync. Unfortunately, both development artifacts do evolve not only frequently, but also concurrently which likely causes them to drift apart over time. Even though technologies such as model-to-code transformations are commonly employed to keep design models and source code synchronized, those technologies typically still require unguided, manual adaptations. Hence, they do not effectively prevent inconsistencies from being introduced. In this paper, we present a novel approach for checking consistency between design models and source code. The approach detects inconsistencies instantly and informs developers about a project's consistency status live during development. We developed an efficient and fully automated consistency checking framework and also provide a set of consistency rules for UML and Java projects. The framework was evaluated in an empirical study with 10 mostly industrial projects. The results showed that our approach is technically feasible and also highly scalable.
Reference:
Model-and-Code Consistency Checking (Markus Riedl-Ehrenleitner), Master's thesis, Johannes Kepler University (JKU), Linz, Austria, 2013.
Bibtex Entry:
@MastersThesis{Riedl-Ehrenleitner2013,
author = {Markus Riedl-Ehrenleitner},
title = {Model-and-Code Consistency Checking},
school = {Johannes Kepler University (JKU), Linz, Austria},
year = {2013},
abstract = {In model-driven engineering, design models raise the level of abstraction
and allow for efficient designing without considering implementation
details. Still, it is crucial that design models and source code
are in sync. Unfortunately, both development artifacts do evolve
not only frequently, but also concurrently which likely causes them
to drift apart over time. Even though technologies such as model-to-code
transformations are commonly employed to keep design models and source
code synchronized, those technologies typically still require unguided,
manual adaptations. Hence, they do not effectively prevent inconsistencies
from being introduced. In this paper, we present a novel approach
for checking consistency between design models and source code. The
approach detects inconsistencies instantly and informs developers
about a project's consistency status live during development. We
developed an efficient and fully automated consistency checking framework
and also provide a set of consistency rules for UML and Java projects.
The framework was evaluated in an empirical study with 10 mostly
industrial projects. The results showed that our approach is technically
feasible and also highly scalable.},
file = {:MSc Theses\\2013 Riedl Markus\\Rield - Model-and-Code Consistency Checking-preprint.pdf:PDF},
owner = {AK117794},
timestamp = {2015.09.22},
}