INGENIERÍA DE INFORMACIÓN Y APLICACIONES

Slides:



Advertisements
Presentaciones similares
Sesión 5 Herramientas de creación de DSL gráficos (GMF)
Advertisements

 Curso básico de Dreamweaver MX (1)  Qué es Dreamweaver MX  Dreamweaver MX es un software fácil de usar que permite crear páginas web profesionales.
Universidad Fermin Toro. Sistema de aprendizaje interactivo a Distancia. Barquisimeto-Estado Lara Participantes.  Rubén Viteznik (Capitán)  Carmen Mendoza.
¿Que es Yii ? Framework para PHP de alta performance basado en componentes web para desarrollar aplicaciones web de gran escala. Yii es un framework que.
CMS ABIERTO Y CMS CERRADO MARÍA CAMILA MUÑOZ U TATIANA ARIAS CHAPARRO U CAROLINA FIGUEROA U
Carrera de Ingeniería en Electrónica en Redes y Comunicación de Datos “DESARROLLO DE UN SISTEMA DE INFORMACIÓN INTERACTIVO BASADO EN WEB 3.0” GRETA CAROLINA.
Ofelia Cervantes Redes Dinámicas 1. Ofelia Cervantes Redes dinámicas en Gephi REDES DINÁMICAS: se van construyendo y visualizando en tiempo real Pasos.
WIKI MARCELA NAVARRETE 5to A. ¿Q UÉ ES UNA WIKI ? Una wiki, es un sitio web cuyas páginas web son de creación de contenido de forma colaborativa.sitio.
Ciclope Weather Web Services ● Que tenemos – – RSS: (No Web.
Museo Tecnológico. Bienvenidos al Museo Tecnológico BIENVENIDOS Información.
Ingeniería del Software Diseñó de Software Universidad de los Andes Demián Gutierrez Abril 2009.
COMUNICACIÓN Y TIC Ángela Espinosa Hayler Peñaranda.
Computación e Informática Contabilidad Ing. Miguel Ángel Ramos Frías Word 2013.
BASE DE DATOS EN LA WEB POR- OSIRYS MARCIAGA JESUS NIETO.
WEB APLICATION LIGA F7 MAJADAHONDA.
Tendencias de Construcción Web
El Lenguaje de Modelación Unificado
¿Qué es y para qué nos sirve BootStrap?
Visual ITP y Web ITP Raquel Sánchez Díaz Universidad de Salamanca.
PERIODO 1 – CLASE 2.
Potente herramienta para el desarrollo de aplicaciones móviles
DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA
Tema DISEÑO E IMPLANTACIÓN DE UNA SOLUCIÓN INFORMÁTICA INTEGRADA QUE APOYE AL DESARROLLO DEL PENSAMIENTO CRÍTICO EN LA CARRERA DE INGENIERÍA EN SISTEMAS.
AREA ACADÉMICA: INFORMÁTICA II TEMA: CREACIÓN DE PÁGINAS WEB MTRA
CMS Un sistema de gestión de contenidos (en inglés: Content Management System, más conocido por sus siglas CMS) es un programa informático que permite.
LOS DIFERENTES LENGUAJES DE PROGRAMACION PARA LA WEB
FECHA ÚLTIMA REVISIÓN: 13/12/11
Introducción a Javascript
Programación Orientada a Eventos
PARCIAL 2.
LENGUAJE DE PROGRAMACIÓN Y SOFTWARE PROPIETARIO
ELABORAS PRESENTACIONES ELECTRONICAS
Tópicos de bases de datos
Conceptos y definición básicos
ATLAS Transformation Language Introducción y comparativa con QVT
Miguel García Ruiz Jackeline Giraldo Urrea
CARRERA DE INGENIERÍA EN SISTEMAS E INFORMÁTICA
Diseño y Edición de Paginas web
EDWIN SANTIAGO YACELGA MALDONADO SANGOLQUÍ – ECUADOR 2016
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Software Se conoce como software al equipamiento lógico o soporte lógico de un sistema informático, que comprende el conjunto de los componentes lógicos.
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
MDA (Model Driven Architecture)
Ecosistema abierto para la representación espacial de sistemas de información IDESAN, caso de uso aplicado a la gestión sanitaria en la Conselleria de.
¿Qué es PREZI?.
PREZI.
Tema 1 El entorno de desarrollo de C#
INTRODUCCIÓN A JAVA.
Ingeniería del Software
Prezi.
FUNDAMENTOS DE PROGRAMACION EN ENTORNO WEB. Rodrigo Cabello Ing. Informático Director de proyectos Think – Ideas in Motion FUNDAMENTOS.
Implementación de aplicaciones
Page 1. Page 2 Los lineamientos básicos que debe contener las paginas HTML.
Programación Orientada a Objetos. ¿Qué es un ordenador? “Un sistema digital con tecnología microelectrónica capaz de procesar información a partir de.
Java Enterprise edition
Servidor de Reportes basado en Tecnología Java y XML
PROYECTO DE GRADUACIÓN
Prepa Yucatán Mons. Luis Miguel cantón Marín Nombre de editores gratuitos de HTML, CSS y JavaScript Timna Jiménez Pérez.
Lenguajes del lado del cliente
Tecnología Informática Unidad 1: Introducción a la informática Tecnología Informática Unidad 1: Introducción a la informática.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Diseño y Programación Orientados a Objetos
AUTOR: SALGADO ESCOBAR STALIN SEBASTIAN DIRECTOR: ING. JOSE SANCHO
PROYECTO DE GRADUACIÓN
Agenda Presentación de la empresa Business Document
AUTOR: MIGUEL GARZON DIRECTOR: ING. DARWIN ALULEMA Msc. SANGOLQUÍ 2019
INTRODUCCIÓN A UML.  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
PROYECTO DE GRADUACIÓN
Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Copyright 2019 Luis Fernando Muñoz Pantoja Ingeniero de Sistemas Derechos reservados UML.
Transcripción de la presentación:

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

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

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.

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.

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.

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:

Plantilla.html

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.

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

Metamodelo File -> New -> Ecore Modeling Proyect

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

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

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

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

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 .

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.

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:

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.

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

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

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.

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.