MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLO
This paper presents an example of how Model-Driven Engineering (MDE) can be applied to the development of tools for reverse engineering and program comprehension. The tool CodeCrawler was selected as an example; in particular, the polymetric view feature was computed using MDE techniques. To this en...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Universidad de Tarapacá
2010-04-01
|
Series: | Ingeniare : Revista Chilena de Ingeniería |
Subjects: | |
Online Access: | http://www.scielo.cl/scielo.php?script=sci_arttext&pid=S0718-33052010000100009 |
id |
doaj-e9d68b15d9c24e5196b0e56426953c09 |
---|---|
record_format |
Article |
spelling |
doaj-e9d68b15d9c24e5196b0e56426953c092020-11-24T23:47:36ZengUniversidad de TarapacáIngeniare : Revista Chilena de Ingeniería0718-32910718-33052010-04-011817683MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLOEugenio G Scalise PJean-Marie FavreNancy ZambranoThis paper presents an example of how Model-Driven Engineering (MDE) can be applied to the development of tools for reverse engineering and program comprehension. The tool CodeCrawler was selected as an example; in particular, the polymetric view feature was computed using MDE techniques. To this end, two metamodels were proposed (source and target) and meta-level transformations that were used to deduce the information of a polymetric view associated to any software project (source code). The technologies selected to develop the example were those related with the Eclipse Modeling Project, specifically the ATL and the KM3 languages. The approach used in this paper to obtain the implementation can be used to develop all the features of a MDE-oriented software comprehension tool, obtaining a domain-oriented implementation.<br>En este artículo se presenta un ejemplo que describe cómo la Ingeniería Dirigida por Modelos (IDM) puede ser aplicada al desarrollo de herramientas para la ingeniería reversa y comprensión de programas. Se seleccionó como caso de estudio la herramienta CodeCrawler, específicamente la funcionalidad denominada polymetric view, desarrollada mediante tecnologías y técnicas de la IDM. Para ello, se emplearon dos metamodelos (entrada y salida) y transformaciones a nivel de los metamodelos que permiten generar la información de un polymetric view asociado a un proyecto de software, utilizando la información extraída del código fuente. Las tecnologías utilizadas para el desarrollo del ejemplo, las relacionadas con el Eclipse Modeling Project, específicamente el lenguaje de transformación ATL y el lenguaje KM3. El enfoque seguido para obtener la implementación resultante puede ser utilizado para desarrollar una herramienta de ingeniería reversa y comprensión de software mediante técnicas de la IDM, incorporando el vocabulario del dominio en la implementación.http://www.scielo.cl/scielo.php?script=sci_arttext&pid=S0718-33052010000100009Ingeniería dirigida por modelosingeniería reversacomprensión de programasmodelosmetamodelostransformaciones entre metamodelosCodeCrawlerATLKM3Model-driven engineeringMDEreverse engineeringprogram comprehensionmodelsmetamodelstransformations between metamodelsCodeCrawlerATLKM3 |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Eugenio G Scalise P Jean-Marie Favre Nancy Zambrano |
spellingShingle |
Eugenio G Scalise P Jean-Marie Favre Nancy Zambrano MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLO Ingeniare : Revista Chilena de Ingeniería Ingeniería dirigida por modelos ingeniería reversa comprensión de programas modelos metamodelos transformaciones entre metamodelos CodeCrawler ATL KM3 Model-driven engineering MDE reverse engineering program comprehension models metamodels transformations between metamodels CodeCrawler ATL KM3 |
author_facet |
Eugenio G Scalise P Jean-Marie Favre Nancy Zambrano |
author_sort |
Eugenio G Scalise P |
title |
MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLO |
title_short |
MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLO |
title_full |
MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLO |
title_fullStr |
MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLO |
title_full_unstemmed |
MODEL-DRIVEN REVERSE ENGINEERING AND PROGRAM COMPREHENSION: AN EXAMPLE INGENIERÍA REVERSA Y COMPRENSIÓN DE PROGRAMAS DIRIGIDA POR MODELOS: UN EJEMPLO |
title_sort |
model-driven reverse engineering and program comprehension: an example ingeniería reversa y comprensión de programas dirigida por modelos: un ejemplo |
publisher |
Universidad de Tarapacá |
series |
Ingeniare : Revista Chilena de Ingeniería |
issn |
0718-3291 0718-3305 |
publishDate |
2010-04-01 |
description |
This paper presents an example of how Model-Driven Engineering (MDE) can be applied to the development of tools for reverse engineering and program comprehension. The tool CodeCrawler was selected as an example; in particular, the polymetric view feature was computed using MDE techniques. To this end, two metamodels were proposed (source and target) and meta-level transformations that were used to deduce the information of a polymetric view associated to any software project (source code). The technologies selected to develop the example were those related with the Eclipse Modeling Project, specifically the ATL and the KM3 languages. The approach used in this paper to obtain the implementation can be used to develop all the features of a MDE-oriented software comprehension tool, obtaining a domain-oriented implementation.<br>En este artículo se presenta un ejemplo que describe cómo la Ingeniería Dirigida por Modelos (IDM) puede ser aplicada al desarrollo de herramientas para la ingeniería reversa y comprensión de programas. Se seleccionó como caso de estudio la herramienta CodeCrawler, específicamente la funcionalidad denominada polymetric view, desarrollada mediante tecnologías y técnicas de la IDM. Para ello, se emplearon dos metamodelos (entrada y salida) y transformaciones a nivel de los metamodelos que permiten generar la información de un polymetric view asociado a un proyecto de software, utilizando la información extraída del código fuente. Las tecnologías utilizadas para el desarrollo del ejemplo, las relacionadas con el Eclipse Modeling Project, específicamente el lenguaje de transformación ATL y el lenguaje KM3. El enfoque seguido para obtener la implementación resultante puede ser utilizado para desarrollar una herramienta de ingeniería reversa y comprensión de software mediante técnicas de la IDM, incorporando el vocabulario del dominio en la implementación. |
topic |
Ingeniería dirigida por modelos ingeniería reversa comprensión de programas modelos metamodelos transformaciones entre metamodelos CodeCrawler ATL KM3 Model-driven engineering MDE reverse engineering program comprehension models metamodels transformations between metamodels CodeCrawler ATL KM3 |
url |
http://www.scielo.cl/scielo.php?script=sci_arttext&pid=S0718-33052010000100009 |
work_keys_str_mv |
AT eugeniogscalisep modeldrivenreverseengineeringandprogramcomprehensionanexampleingenieriareversaycomprensiondeprogramasdirigidapormodelosunejemplo AT jeanmariefavre modeldrivenreverseengineeringandprogramcomprehensionanexampleingenieriareversaycomprensiondeprogramasdirigidapormodelosunejemplo AT nancyzambrano modeldrivenreverseengineeringandprogramcomprehensionanexampleingenieriareversaycomprensiondeprogramasdirigidapormodelosunejemplo |
_version_ |
1725489076615774208 |