network DSL Roberto García Carvajal Lola Martínez Jurado

network DSL Roberto García Carvajal Lola Martínez Jurado índice - Introducción - Objetivos - Proceso de desarrollo - Metamodelo - Restricciones -

5 downloads 104 Views 4MB Size

Recommend Stories


SOBRE EL CONCEPTO. Roberto García Jurado*
©ITAM Derechos Reservados. La reproducción total o parcial de este artículo se podrá hacer si el ITAM otorga la autorización previamente por escrito.

Jurado de Ciudadanos o Jurado Popular
Derecho Procesal mexicano. Poder judicial. Procedimientos penales. Leyes mexicanas. Juicios. Delitos

NOTA DE ACEPTACION DIRECTOR DE PROYECTO JURADO JURADO
NOTA DE ACEPTACION ____________________________ ____________________________ ____________________________ ____________________________ _______________

Story Transcript

network DSL

Roberto García Carvajal Lola Martínez Jurado

índice

- Introducción - Objetivos - Proceso de desarrollo - Metamodelo - Restricciones - Herramientas - Plugin -Referencias

introducción

Existen consultoras que se dedican a montar y mantener equipamiento informático de pequeñas empresas y despachos. Podríamos crear una herramienta simple con la que mantener sus configuraciones de red y poder modificarlas y exportarlas en cualquier momento.

objetivos

El objetivo es crear un DSL visual que permita la creación sencilla de esquemas de red y que proporcione como salida los ficheros de configuración de los sistemas que la componen de manera que el usuario pueda utilizar estos ficheros directamente para configurar los equipos físicos.

proceso de desarrollo

● para la realización de la herramienta se ha seguido un esquema cíclico. ● varias generaciones de los diferentes elementos del proyecto:

proceso de desarrollo

● el editor gráfico se ha completado al final del proceso: ○ Introducción de iconos e imágenes. ○ Introducción de restricciones.

proceso de desarrollo : paso 1 - generación del metamodelo

● A través de Eclipse >> EMF ● Utilización del editor de metamodelos ECORE ● Metamodelo sencillo pero con todos los componentes ○ EClass ○ EEnum ○ EReference ○ Inheritance

proceso de desarrollo : paso 1 - generación del metamodelo

proceso de desarrollo : paso 1 - generación del metamodelo

● Validación del metamodelo

proceso de desarrollo : generación del editor gráfico

● Inicialmente se utiliza GMF

● Utilización de EUGENIA

proceso de desarrollo : EUGENIA

● Herramienta para construir el editor gráfico. ● Genera automáticamente los modelos .gmfgraph .gmftool .gmfmap ● Instalación: http://eclipse. org/epsilon/download/

proceso de desarrollo : EUGENIA

proceso de desarrollo : EUGENIA

● Este proceso instalará EUGENIA y las dependencias EPSILON

proceso de desarrollo : EMFATIC

● Necesitamos además instalar Emfatic que es un editor de textos de modelos ECore. ● Necesario para la generación automática del editor gráfico. http://download.eclipse.org/emfatic/update/ ● También es necesario el GMF Tooling Experimental SDK para usar las figuras .svg http://www.eclipse. org/modeling/gmp/downloads/?project=gmftooling

proceso de desarrollo : EMFATIC

● Eclipse: Help-> Install new software

proceso de desarrollo : GMF Tooling SDK

● Descomprimir el archivo descargado ● Eclipse: Help-> Install new software

proceso de desarrollo : generación de modelo EMFatic

● A partir del metamodelo ECore generamos el código en Emfatic que presenta el mismo modelo pero añade información adicional. ● El resultado será un nuevo fichero con extensión: .emf

proceso de desarrollo : generación de modelo EMFatic

proceso de desarrollo : generación de modelo EMFatic

networDLS.emf

proceso de desarrollo : anotación EUGENIA

● El siguiente paso es utilizar las anotaciones GMF para decirle al modelo como se deben mostrar los elementos. @gmf package networkdsl; @gmf.diagram(model.extension="networkdsl", diagram. extension="netdiagram", foo="bar") class Red { val PC[+] PCRed; ref Router[+] RouterRed; }

proceso de desarrollo : anotación EUGENIA @gmf Se aplica a EPackage y marca que se esperan anotaciones GMF relacionadas con sus elementos. @gmf.diagram Indica el objeto raíz del metamodelo. Admite propiedades como: diagram.extension - model.extension @gmf.node Se aplica a las EClass para que aparezcan en el diagrama como un nodo. borde.color - border.style - svg.uri - figure

proceso de desarrollo : svg

● Importamos las imágenes que queremos para nuestro editor

proceso de desarrollo : generación del editor

Cuando está completo el .emf directamente generamos el editor.

proceso de desarrollo : proyecto diagram

Se han generado todos los proyectos necesarios. Ya tenemos el editor. Solamente hay que ejecutarlo como app

proceso de desarrollo : transformación m2t

Para realizar la transformación m2t hemos usado Acceleo.

plugin: despliegue del editor como plugin

● Utilizamos el wizard

plugin: despliegue del editor como plugin

● Se generan los .jar para que los usuarios puedan instalarlo.

Referencias

● http://eclipse. org/epsilon/doc/articles/eugenia-gmftutorial/ ● http://www.eclipse.org/forums/index. php/t/457805/ ● http://sistemas.uniandes.edu. co/~isis4712/dokuwiki/doku.php? id=tut_eugenia

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.