Transformación de modelos mediante gramáticas de grafos Sergio Segura Rueda Metodologías y Técnicas en Proyectos Software para la Web Programa de Doctorado. Curso 2006/2007 Dpto. de Lenguajes y Sistemas Informáticos Universidad de Sevilla
La ruta Introducción Transformación de modelos Gramáticas de grafos Transformación de grafos Caso de estudio Conclusiones
La ruta Introducción Transformación de modelos Gramáticas de grafos Transformación de grafos Caso de estudio Conclusiones
Introducción
Introducción Model Driven Development Independencia de la plataforma. Alta separación de conceptos. Alto nivel de abstracción. Mayor calidad y productividad. Rápida adaptación a los cambios.
Introducción Model Driven Development M2M M2M M2M M2C M2C CIM PIM PSM Computation Independent Model CIM M2M Platform Independent Model PIM M2M M2M Platform Specific Model PSM Platform Specific Model PSM M2C M2C Code Code
La ruta Introducción Transformación de modelos Gramáticas de grafos Transformación de grafos Caso de estudio Conclusiones
Transformación de modelos QVT Source Metamodel Transformation Definition Target Metamodel Trasnformation Engine Source Model Target Model VIATRA framework, Tefkat, GReAT, ATL, UMLX, AToM3, BOTL, MOLA, AGG, AMW, MTL, Kermeta, Moment, C-SAW, Andro-MDA, SmartQVT, openArchitectureWare, Fujaba, MTF, XMF-Mosaic, OptimalJ, MetaEditþ, ArcStyler, Codagen Architect, Enterprise Architect (Sparx) …
La ruta Introducción Transformación de modelos Gramáticas de grafos Transformación de grafos Caso de estudio Conclusiones
Gramáticas de Grafos Grámatica de Chomsky Reglas: S aBc Bdef Secuencia de derivaciones SaBcabdefc Usadas desde hace 30 años para la generación, manipulación, reconocimiento y evaluación de grafos. Modelos Grafos (dirigidos, etiquetados, etc.) Permite definir transformaciones de forma natural, intuitiva y visual. Fundamentos teóricos maduros y sólidos. Herramientas: Fujaba, AGG System, GReAT, VIATRA2, etc.
La ruta Introducción Transformación de modelos Gramáticas de grafos Transformación de grafos Caso de estudio Conclusiones
Transformación de grafos Regla de transformación Aplicación de la regla a un grafo de entrada Información necesaria para la aplicación de la regla + + L R If (condiciones de aplicación) G H
Transformación de grafos Algunos ejemplos
Transformación de grafos Algunas aplicaciones en la ISW… Especificación del comportamiento de un sistema. Especificación de lenguajes visuales. Transformación de modelos.
Transformación de grafos Algunas aplicaciones en la ISW… Especificación del comportamiento de un sistema. Especificación de lenguajes visuales. Transformación de modelos.
La ruta Introducción Transformación de modelos Gramáticas de grafos Transformación de grafos Caso de estudio Conclusiones
Caso de estudio N. Koch et al. Model transformations from requirements to web system design. ICWE. 2006.
Caso de estudio M.J. Escalona and N. Koch. Metamodeling the requirements of Web Systems. WEBIST. 2006. WebRE: Web Requirement Engineering metamodel
UWE: UML-based Web Engineering metamodel Caso de estudio N. Koch and A. Kraus. The expressive power of uml-based web engineering. IWWOST02. 2002. UWE: UML-based Web Engineering metamodel
GRAPH TRANSFORMATIONS Caso de estudio GRAPH TRANSFORMATIONS
Caso de estudio AGG
Caso de estudio Regla QVT: Search TO Query
Caso de estudio Regla de Transformación 1 Search TO Query
Parameters of the Search TO Navigation Attributes Caso de estudio Regla de Transformación 2 Parameters of the Search TO Navigation Attributes
Result of the Search TO Index, Links and Navigation Class Caso de estudio Regla de Transformación 3 Result of the Search TO Index, Links and Navigation Class
Caso de estudio Aplicación de las reglas
La ruta Introducción Transformación de modelos Gramáticas de grafos Transformación de grafos Caso de estudio Conclusiones
Conclusiones A diferencia del resto de propuestas para transformación de modelos las gramáticas de grafos aportan: Madurez. Fundamentos teóricos. Herramientas. Pruebas de su validez en múltiples contextos. Posible inconveniente en ciertas áreas de aplicación Rendimiento.
¡Gracias! Sergio Segura segura@lsi.us.es Programa de Doctorado ETSI Informatica, Universidad de Sevilla, Spain
Caso de estudio UserTransaction TO Process