dc.description.abstract | El proceso de desarrollo de Aplicaciones Enriquecidas de Internet es cada vez más exigente pues es necesario cumplir con requerimientos como lo son interfaces de usuario vistosas y provistas de diversas funcionalidades, así como el uso de combinaciones de lenguajes de programación, lo cual origina que las aplicaciones se dividan en numerosos archivos y al encontrarse tan particionadas se vuelven más complejas de realizar.
Por el motivo expuesto en el párrafo anterior, el objetivo de la investigación es la generación de Aplicaciones Enriquecidas de Internet modeladas bajo el patrón arquitectónico MVC usando el estándar IFML, el cual abstrae la complejidad de las interfaces de usuario interactivas mediante el modelado del flujo de interacción de la aplicación, y conjuntándolo con el modelado del dominio, el cual se ve representado como una variación al diagrama de clases del también estándar UML.
El generador de aplicaciones propuesto obtiene esqueletos de RIAs en las principales combinaciones de lenguajes de programación actualmente empleadas para su desarrollo, las cuales son JavaServer Faces, estándar de Oracle para el desarrollo de interfaces de usuario del lado del servidor, enriquecido con PrimeFaces y la combinación de PHP, ampliamente utilizado en el mercado, junto con jQuery, dichas aplicaciones acatan las características estipuladas por el usuario en cuanto a distribución de su contenido, temas, y navegabilidad de acuerdo a los modelos IFML y UML dados también por el usuario.
Para la construcción de la herramienta, la metodología en espiral dirigió el proceso de desarrollo; como fuente del modelo navegacional en IFML se empleó la herramienta WebRatio, la cual proporciona una descripción de sus modelos en lenguaje XML; para la obtención de los diagramas de clases UML se utilizó su descripción de acuerdo a la especificación del estándar XMI, y por último, como instrumento para el reconocimiento de lenguajes se usó ANTLR4, el cual es un potente generador de analizadores sintácticos ampliamente utilizado para construir lenguajes, herramientas y marcos de trabajo. | es |