Modelo programable para la serialización y evaluación de modelos heterogéneos en clientes web
- Chavarriaga Bautista, Enrique
- Francisco Jurado Monroy Directeur/trice
- Fernando Rubio Díez Directeur/trice
Université de défendre: Universidad Autónoma de Madrid
Fecha de defensa: 06 juillet 2017
- Manuel Ortega Cantero President
- Juan de Lara Jaramillo Secrétaire
- Ana M. García Serrano Rapporteur
Type: Thèses
Résumé
Los Lenguajes de Dominio Específico (Domain Specific Language, DSL) son lenguajes de programación especializados que ofrecen abstracciones y técnicas de alto nivel para facilitar la comprensión y el funcionamiento de un dominio específico o parte de él. En el caso particular de los DSL definidos mediante gramáticas XML (XML-DSL), se pueden aprovechar las características propias de la especificación XML y de las APIs existentes en multitud de lenguajes de programación, permitiendo que resulten fáciles de manipular, sean extensibles además de combinables con otros lenguajes XML, pudiendo así usarse en diferentes plataformas y sistemas de información. En concreto, la presente Tesis Doctoral se centra en la creación y evaluación de XML-DSLs en clientes web para crear frameworks, componentes y/o aplicaciones web para dar soporte a soluciones de problemas específicos. Las tecnologías web y la diversidad de dispositivos han cambiado el escenario para la creación de sistemas de información. Las aplicaciones web se basan en la creación de páginas web dinámicas, donde lenguajes XML como XSL, SVG y MathML enriquecen el modelo de presentación. La propuesta que se realiza en la presente Tesis Doctoral pretende facilitar la creación de lenguajes XML evaluables en clientes web. Para ello, se plantea un motor de evaluación que implementa un intérprete de XML-DSLs en JavaScript. Este intérprete tiene las facultades de evaluar múltiples programas para múltiples lenguajes en cualquier navegador y dispositivo, con capacidad de coexistencia e intercambio de información entre programas, y capacidad de administración de múltiples fuentes heterogéneas XML/JSON de forma nativa. Asimismo, para facilitar la creación e implementación de estos XML-DSLs se propone un modelo de programación y se implementa un entorno de desarrollo ligero sobre cliente web. Más allá de las representaciones textuales, los DSL pueden tener una representación gráfica. Es así como surge el concepto de Lenguaje Visual de Dominio Específico (Domain Specific Visual Language, DSVL). Hasta el presente, la mayor parte de las propuestas de DSVLs están orientadas a resolver problemas en aplicaciones de escritorio y en Entornos de Desarrollo Integrado. Sin embargo, en clientes web la mayoría de aplicaciones y frameworks están encaminadas a la elaboración de diagramas y modelos gráficos, y a la visualización de información heterogénea en línea, es decir, no hay entornos de modelado visual o herramientas visuales para la creación y evaluación de DSVLs basadas en las tecnologías de un cliente web. En este marco de referencia, en la presente Tesis Doctoral se presenta el concepto de diagrama programable para definir librerías gráficas generadas a partir de SVG, y serializar modelos gráficos y DSVLs con gramática XML sobre una aplicación web. Este diagrama programable tiene la capacidad de asociar fuentes heterogéneas de información XML/JSON, añadir herramientas visuales, usar elementos de programación, asociar herramientas de generación automática de diagramas y proponer mecanismos de recomendación de diagramas. Además, gracias a que la serialización de los modelos gráficos se realiza como un XML-DSL, estos se pueden evaluar y ejecutar directamente en el entorno del cliente web. Para validar las diferentes características y funcionalidades sobre un cliente web de las propuestas realizadas en la presente Tesis Doctoral, se siguió la metodología cualitativa de casos de estudio creando diversos escenarios. La transferencia tecnológica al sector industrial de las diferentes propuestas que se realizan en esta Tesis, ha permitido que la mayoría de estos escenarios hayan sido ampliamente probados y validados, aportando fiabilidad y robustez a las contribuciones presentadas.