PROYECTO FIN DE CARRERA

Título: Generación de Interfaces Gráficos de Usuario aplicaciones con entrada de datos XML

Autor: Rubén Martínez Martín

Fecha: Agosto 2004

Ø     Introducción y descripción general

Ø     Características de la aplicación

Ø       Tecnologías utilizadas

Ø       Links

 

INTRODUCCIÓN Y DESCRIPCIÓN GENERAL

Este proyecto se enmarca dentro de RTF (Real Time Framework), proyecto desarrollado por el Departamento de Ingeniería de Sistemas y Automática de la E.S.I de Bilbao, que proporciona un entorno para la generación de software de control distribuido de tiempo real. La metodología seleccionada en RTF ha sido la de integrar un conjunto de herramientas de ayuda al diseñador en las distintas fases del ciclo de vida. Dicha integración se ha realizado utilizando tecnologías XML. Es decir las aplicaciones incluidas en RTF consumen y generan datos XML.

Este proyecto pretende dotar a los usuarios de un interfaz gráfico que les permita editar los datos se forma intuitiva y sin necesidad de ningún conocimiento de XML. Los modelos a editar están todos relacionados con el diseño de sistemas de control en tiempo real pero enfocados desde diferentes puntos de vista (especialista en tiempo real, ingeniero de control, ingeniero de proceso, ingeniero de software). Por lo tanto cada usuario puede necesitar un tipo de gráfico distinto e incluso un mismo usuario puede necesitar distintos tipos de gráfico en distintos momentos.

Será por tanto tarea de este proyecto realizar un interfaz gráfico que permite editar los datos expresados en el lenguaje XML.


Flujo de información

Flujo de información en aplicaciones RTF.

Debido a la diversidad modelos de datos existentes habrá que adaptar el GUI a los diversos modelos de datos. Esto hace que el proyecto de divida en dos partes diferenciadas:

Se crearán distintos GUIs, cada uno con un determinado aspecto gráfico y comportamiento, si bien todos ellos están relacionados con el diseño de sistemas de control distribuido en tiempo real. Todos tienen una arquitectura similar (componentes con relaciones entre ellos), siendo distinto en cada caso las propiedades de los componentes y relaciones.

Se crearán distintos GUIs cada uno con un determinado aspecto gráfico y comportamiento, si bien todos ellos están relacionados con el diseño de sistemas de control distribuido en tiempo real. Todos tienen una arquitectura similar (componentes con relaciones entre ellos), siendo distinto en cada caso las propiedades de los componentes y relaciones.

Se creará un entorno de funcionamiento que permitirá seleccionar en cada caso los datos que se quieren editar/visualizar (documento XML) y el GUI con el que se va a realizar dicha edición/visualización. Este entorno será genérico y por lo tanto válido para cualquier GUI que se cree durante la realización de este proyecto o en proyectos futuros.


Entorno generico

Entorno genérico y proceso de carga de un editor (datos + GUI).

CARACTERISTICAS DE LA APLICACION

La solución desarrollada se basa en la tecnología SVG, SVG (Scalable Vector Graphics) es un lenguaje XML que permite expresar gráficos 2D de forma textual Debido a su naturaleza orientada al Web, SVG además de ser visualizado como parte de una página Web, puede incluir animaciones y es interactivo, esto le permite responder a acciones del usuario. Las respuestas generadas son capaces de modificar el documento SVG.

Por ser un lenguaje XML, SVG se beneficia de todas las características propias de la tecnología XML como son la validación de los datos mediante schemas o la transformación entre documentos XML mediante hojas de estilo XSLT. Esto implica que a partir de datos expresados en XML se puede aplicar una hoja de estilo y obtener otro documento XML que será una que será una representación gráfica en SVG.

De esta forma vemos que es posible editar datos XML mediante la siguiente secuencia:

  1. A partir de los datos XML obtenemos un gráfico SVG mediante la aplicación de una hoja de estilo a los datos.
  2. Mediante un script modificamos el contenido del gráfico SVG.
  3. Mediante la aplicación de una nueva hoja de estilo al gráfico SVG modificado obtenemos unos datos XML, distintos de los datos de partida.

Todo este proceso se ilustra en la siguiente figura:


Ejemplo proceso edicion

Ejemplo proceso de edición (datos + GUI).

TECNOLOGIAS UTILIZADAS

Para el desarrollo del presente proyecto se han empleado las siguientes tecnologías:

·         SVG Scalable Vector Graphics Gráficos Vectoriales en 2D expresados en lenguaje XML. Standard desarrollado por el WORLD WIDE WEB CONSORTIUM (W3C). “Scalable Vector Graphics (SVG) 1.1 Specification. W3C Recommendation” 14 de Enero de 2003 http://www.w3.org/Graphics/SVG/

·         Java Máquina virtual de java J2RE v1.4.0_02. http://java.sun.com

LINKS

Para descargar la aplicación, manuales, componentes necesarios:

·         Introducción a SVG

·         Java JVM: J2 RE 1.4.0_02

·         Adove SVGViewer

·        Descargar Editor XML

·       Manual de instalación del editorXML

 


 Volver al inicio