Models from code or code as a model?

Antonio Garcia-Dominguez, Dimitrios S. Kolovos

Research output: Contribution to conferencePaper

Abstract

Many model-driven engineering workflows take the existing
code of a system as an input. Some of these include validation and verification,
software modernisation or knowledge extraction. Current approaches
take the code and produce a standalone model, instead of treating
the code itself as a model and navigating through it on demand. For
very large codebases this can be quite expensive to produce, and the
resulting model can be too large to suit the simplest monolithic filebased
stores. In this work we propose reusing a model that is already
incrementally built for us and supports fast lookups: the internal indices
maintained by our integrated development environments for code analysis
and refactoring. In particular, we show an Epsilon driver that exposes
the Eclipse JDT indices of one or more Java projects as a model, and
compare its performance and usability against MoDisco for validating
Java code with regards to a partial UML model.
Original languageEnglish
Publication statusPublished - 2 Oct 2016
Event16th International Workshop in OCL and Textual Modeling, - Saint Malo, France
Duration: 2 Oct 20162 Oct 2016
http://oclworkshop.github.io/2016/

Workshop

Workshop16th International Workshop in OCL and Textual Modeling,
Abbreviated titleOCL
CountryFrance
CitySaint Malo
Period2/10/162/10/16
Internet address

Fingerprint

Modernization

Cite this

Garcia-Dominguez, A., & Kolovos, D. S. (2016). Models from code or code as a model?. Paper presented at 16th International Workshop in OCL and Textual Modeling, Saint Malo, France.
Garcia-Dominguez, Antonio ; Kolovos, Dimitrios S. / Models from code or code as a model?. Paper presented at 16th International Workshop in OCL and Textual Modeling, Saint Malo, France.
@conference{8c3a9e689da2494db42d30b85ef74e14,
title = "Models from code or code as a model?",
abstract = "Many model-driven engineering workflows take the existingcode of a system as an input. Some of these include validation and verification,software modernisation or knowledge extraction. Current approachestake the code and produce a standalone model, instead of treatingthe code itself as a model and navigating through it on demand. Forvery large codebases this can be quite expensive to produce, and theresulting model can be too large to suit the simplest monolithic filebasedstores. In this work we propose reusing a model that is alreadyincrementally built for us and supports fast lookups: the internal indicesmaintained by our integrated development environments for code analysisand refactoring. In particular, we show an Epsilon driver that exposesthe Eclipse JDT indices of one or more Java projects as a model, andcompare its performance and usability against MoDisco for validatingJava code with regards to a partial UML model.",
author = "Antonio Garcia-Dominguez and Kolovos, {Dimitrios S.}",
year = "2016",
month = "10",
day = "2",
language = "English",
note = "16th International Workshop in OCL and Textual Modeling,, OCL ; Conference date: 02-10-2016 Through 02-10-2016",
url = "http://oclworkshop.github.io/2016/",

}

Garcia-Dominguez, A & Kolovos, DS 2016, 'Models from code or code as a model?' Paper presented at 16th International Workshop in OCL and Textual Modeling, Saint Malo, France, 2/10/16 - 2/10/16, .

Models from code or code as a model? / Garcia-Dominguez, Antonio; Kolovos, Dimitrios S.

2016. Paper presented at 16th International Workshop in OCL and Textual Modeling, Saint Malo, France.

Research output: Contribution to conferencePaper

TY - CONF

T1 - Models from code or code as a model?

AU - Garcia-Dominguez, Antonio

AU - Kolovos, Dimitrios S.

PY - 2016/10/2

Y1 - 2016/10/2

N2 - Many model-driven engineering workflows take the existingcode of a system as an input. Some of these include validation and verification,software modernisation or knowledge extraction. Current approachestake the code and produce a standalone model, instead of treatingthe code itself as a model and navigating through it on demand. Forvery large codebases this can be quite expensive to produce, and theresulting model can be too large to suit the simplest monolithic filebasedstores. In this work we propose reusing a model that is alreadyincrementally built for us and supports fast lookups: the internal indicesmaintained by our integrated development environments for code analysisand refactoring. In particular, we show an Epsilon driver that exposesthe Eclipse JDT indices of one or more Java projects as a model, andcompare its performance and usability against MoDisco for validatingJava code with regards to a partial UML model.

AB - Many model-driven engineering workflows take the existingcode of a system as an input. Some of these include validation and verification,software modernisation or knowledge extraction. Current approachestake the code and produce a standalone model, instead of treatingthe code itself as a model and navigating through it on demand. Forvery large codebases this can be quite expensive to produce, and theresulting model can be too large to suit the simplest monolithic filebasedstores. In this work we propose reusing a model that is alreadyincrementally built for us and supports fast lookups: the internal indicesmaintained by our integrated development environments for code analysisand refactoring. In particular, we show an Epsilon driver that exposesthe Eclipse JDT indices of one or more Java projects as a model, andcompare its performance and usability against MoDisco for validatingJava code with regards to a partial UML model.

M3 - Paper

ER -

Garcia-Dominguez A, Kolovos DS. Models from code or code as a model?. 2016. Paper presented at 16th International Workshop in OCL and Textual Modeling, Saint Malo, France.