cluster mysql replica
ESCUELA POLITECNICA SUPERIOR
TRABAJO FIN DE GRADO
Entorno de Pruebas de Generadores de
Código Automático
José Carretero Arias
Tutor: Jesús Sánchez Cuadrado
Mayo-Junio 2013
[ENTORNO DE VALIDACIÓN DE GENERADORES DE CÓDIGO
AUTOMÁTICO] Mayo-Junio de 2013
PALABRAS CLAVE
A continuación se muestra el listado de palabras clave que se consideran másrelevantes para este documento:
Desarrollo de Software Dirigido por Modelos
Generación de código automática
Lenguaje específico de dominio
Pruebas de generadores de código
Generador de documentación
KEYWORDS
Below is a list of keywords which are considered most relevant to this
document:
Model-driven engineering
Automatic Code Generation
Domain-Specific Language
Code generator testing
Documentation generator
UNIVERSIDAD AUTÓNOMA DE MADRID
Página i
[ENTORNO DE VALIDACIÓN DE GENERADORES DE CÓDIGO
AUTOMÁTICO] Mayo-Junio de 2013
RESUMEN
El presente documento constituye la memoria del proyecto realizado como
trabajo de fin de grado. El proyecto tiene como objetivo el desarrollo de un entorno de
pruebas de generadores de código automático,así como también la implementación de
un generador de documentación que permita de manera automática documentar
generadores de código en forma gráfica.
Este proyecto surge en el contexto de unas prácticas realizadas en la empresa
CAF Signalling, en las que se desarrollaron dos generadores de código para máquinas
de estado, utilizando el paradigma conocido como de Software Dirigido por Modelos.Durante su realización se observó la necesidad de probar los generadores de código
realizados y posteriormente documentarlos.
Para llevar a cabo las pruebas sobre los generadores se optó por la creación de
un entorno de validación que fuera genérico para realizar pruebas sobre cualquier tipo
de generador. A lo largo del documento se detallan las técnicas y soluciones adoptadas
para resolverla necesidad observada.
En primer lugar, y tras introducir el contexto en el que se desarrolla el proyecto,
la motivación del mismo y el estado del arte, se explica el diseño de un lenguaje
específico de dominio ideado para dar solución al problema y se detallan los tres
componentes básicos que lo componen: el metamodelo, una sintaxis textual que permita
escribir especificaciones y,finalmente, un intérprete para realizar las pruebas
especificadas. Todo ello se desarrolla con la ayuda de las tecnologías Xtext, que como se
verá es un framework especializado en la creación de lenguajes específicos de dominio,
y EMF, especializado en metamodelado, y gracias al cual se hace posible la creación de
herramientas genéricas como el entorno de validación.
A continuación, se expone el diseñoy desarrollo del generador de
documentación. Se han creado dos algoritmos para recorrer un generador de código
escrito con Acceleo y extraer una representación gráfica de los mismos para la
herramienta Graphviz.
Finalmente se muestran las pruebas realizadas y los resultados obtenidos tras
aplicar ambos prototipos de herramienta en un proyecto real.
UNIVERSIDAD AUTÓNOMA DE MADRID
Páginaii
[ENTORNO DE VALIDACIÓN DE GENERADORES DE CÓDIGO
AUTOMÁTICO] Mayo-Junio de 2013
ABSTRACT
This document reports on the work done as Final Degree Project. The project aims at
developing a test environment for automatic code generators as well as implementing a
documentation generator which automatically document code generators in a graphical
form.
The project comes within thecontext of an internship carried out in the company CAF
Signalling, in which two code generators for state machines were developed using the
Model-Driven Software Engineering paradigm. During their implementation it was
observed the need to test the code generators made and subsequently documenting.
The approach for testing the generators has been the creation of a validation
environment that is...
Regístrate para leer el documento completo.