La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

INGENIERÍA DE INFORMACIÓN Y APLICACIONES

Presentaciones similares


Presentación del tema: "INGENIERÍA DE INFORMACIÓN Y APLICACIONES"— Transcripción de la presentación:

1 INGENIERÍA DE INFORMACIÓN Y APLICACIONES
Desarrollo de editores gráficos con Sirius y transformaciones M2T con Acceleo INGENIERÍA DE INFORMACIÓN Y APLICACIONES Carmen Moreno Muñoz

2 Índice Introducción Objetivos Plantilla de la Pagina Web Metamodelo
Desarrollo del DSL visual usando MDE Transformaciones M2T Conclusiones

3 Introducción Los lenguajes específicos de dominio (DSL) son herramientas para abordar problemas concretos. Los DSL pueden ser textuales o visuales, en nuestro caso será un DSL visual. Vamos a desarrollar nuestro DSL visual utilizando el enfoque model- driven.

4 Introducción Creación de un editor gráfico (DSL) para páginas web sobre un portal de alojamientos y un generador de código en base a un modelo utilizando Acceleo: Realizar el diseño de la página web con la ayuda de la librería Bootstrap. Realizar el metamodelo bajo la plataforma de Eclipse. Desarrollar el editor gráfico con Sirius (DSL visual). Realizar la transformación M2T con Acceleo.

5 Objetivos El objetivo principal de este proyecto es crear un DSL visual que permita al usuario crear páginas web de forma ágil y sencilla, mediante un IDE que sea amigable para usuarios sin experiencia previa en informática. Las páginas web generadas serán anuncios de alojamientos, enfocado en el sector turístico tan importante en la provincial de Cádiz.

6 Página Web Realización de una plantilla HTML para las páginas web generadas. Descargar los plugins JavaScript de Bootstrap y usar la librería jQuery. Realizar el diseño de la pagina web Implementar el fichero .html de nuestra pagina web:

7 Plantilla.html

8 Metamodelo Diseño del Metamodelo:
Metamodelado: Análisis, diseño y construcción de los metamodelos necesarios para la realización de la pagina web. Metamodelo: conjunto de conceptos del dominio a modelar (metaclases) y las relaciones entre ellos (metasociaciones). Creación de un proyecto Ecore Modeling bajo la plataforma de Eclipse: Utilizando el editor de metamodelos que ofrece EMF (Eclipse Modeling Framework ) y Ecore Tools. Nos permite generar automáticamente clases de implementación en Java para los elementos de nuestros metamodelos.

9 Metamodelo Pasos a seguir para crear nuestro metamodelo:
Crear un proyecto EMF. Diseñar el metamodelo con Ecore. Validar el metamodelo

10 Metamodelo File -> New -> Ecore Modeling Proyect

11 Metamodelo Para crear el metamodelo utilizaremos los elementos Ecore de la paleta de componentes. Para definir sus características utilizaremos la vista de Propiedades.

12 Metamodelo Edición del metamodelo desde el fichero .ecore (tree-editor) Validación de nuestro metamodelo

13 Desarrollo del DSL visual usando MDE
Pasos a seguir para crear nuestro editor de modelos: Elaborar y validar un metamodelo con Ecore (realizado en las transparencias anteriores. Generar clases Java de soporte al metamodelo. Desplegar editor: Plug-in de Eclipse: Eclipse PDE Aplicación independiente: Eclipse RCP

14 Desarrollo del DSL visual usando MDE
Usaremos un editor basado en árbol para desarrollar nuestro DSL. Permite: Creación de instancias de elementos de nuestro lenguaje Asociación de elementos Utilizaremos nuestro DSL en un entorno de diseño: lanzar un nuevo eclipse mediante Run As->Eclipse application

15 Desarrollo del DSL visual usando MDE
Creamos un nuevo Proyecto Eclipse Sirius basado en nuestro modelo: File->New->Modeling Project. Pulsamos sobre nuestro proyecto con el botón derecho y elegimos New->Other. Seleccionamos AlojamientoEMP Model dentro de Example EMF Model Creation .

16 Desarrollo del DSL visual usando MDE
EMF crea un modelo basado en el nuestro que contiene una instancia de WebPage (nuestra clase principal). Creación de nodos de todos los elementos de nuestro modelo. Asociación de elementos de nuestro modelo. Representación en árbol. Validación de los datos introducidos.

17 Desarrollo del DSL visual usando MDE
Creación de un diagrama que permita a los usuarios finales visualizar y editar la pagina web de forma sencilla. Entorno de especificación: Entorno para el usuario final, Runtime:

18 Transformación M2T Transformación de modelo a texto con Acceleo:
Perfectamente integrado en Eclipse, incluyendo todas las características habituales (coloreado sintaxis, quick fixes, etc.) a la hora de escribir las reglas de transformación. Permite crear fácilmente la generación del plugin que lanza la transformación desde el propio archivo conteniendo el modelo origen. Existe una nueva perspectiva en Eclipse que incluye: Patrones de generación de código. “Interprete” de transformaciones Acceleo. Reglas de transformación sobreescritas en tiempo de ejecución.

19 Transformación M2T Creación de un nuevo proyecto Acceleo:

20 Transformación M2T Desarrollo de la transformación mediante el fichero .mtl: Fichero generado por Acceleo .html:

21 Conclusiones Sirius: Es una alternativa real, rápida, ecónomica y estable para la creación de DSLs gráficos, pero la documentación es muy limitada. Especificadores/Desarrolladores: Usuarios finales: Reduce el coste y la complejidad de la resolución de los problemas. No es necesario ser un experto en GMF. El desarrollo es dinámico e iterativo. Consiguen herramientas adaptadas a sus necesidades y procedimientos de trabajo. Fácil de usar. Obtienen una experiencia común, bajo un mismo marco de trabajo, utilizando DSLs diferentes o diferentes representaciones de un mismo metamodelo.

22 Conclusiones Acceleo: Especificadores/Desarrolladores:
Es un sistema muy reciente y potente de generación de código. Soporta cualquier tipo de modelo EMF: UML + Perfiles, Ecore, DSLs, etc Especificadores/Desarrolladores: Fácil de usar por su lenguaje sencillo. Permite modificar el código generado automáticamente y mantener los cambios, incluso después de regenerarlo. Versátil: Permite generar cualquier tipo de código.


Descargar ppt "INGENIERÍA DE INFORMACIÓN Y APLICACIONES"

Presentaciones similares


Anuncios Google