Navegación

Búsqueda

Búsqueda avanzada

Generación de Documentos con Contenido Variable en DPLfw

Actualmente existen soluciones tecnológicas para la generación de documentos personalizados en cuanto a sus contenidos y apariencia. Sin embargo, todas ellas requieren de amplios conocimientos en lenguajes especializados (XML, XSLT o XPATH entre otros) y no contemplan tareas relacionadas específicamente con el dominio, como es la identificación de la variabilidad en el contenido de los documentos. En este trabajo presentamos DPLfw, un entorno de trabajo basado en modelos para la generación de documentos con contenido variable. DPLfw es una implementación de la propuesta de Líneas de Producto de Documentos, donde la variabilidad en el contenido se representa mediante características, y la generación de documentos se soporta sobre un proceso basado en Líneas de Productos. Este artículo describe la arquitectura de DPLfw, a la vez que muestra su uso en la generación de documentación de usuario.

Desarrollo de puentes tecnológicos para soportar el modelado de interfaces de servicio

Este trabajo presenta el desarrollo de puentes tecnológicos que permiten extraer modelos de Descripciones Abstractas de Servicios a partir de especificaciones WSDL existentes y viceversa. Para ello, se presentan un conjunto de DSLs que se utilizan para la elaboración de algunos modelos intermedios durante el proceso de extracción y las transformaciones de modelos que los conectan, automatizando el proceso. Los modelos obtenidos permiten implementar cualquier proceso de razonamiento acerca de la interfaz de uno o varios servicios utilizando técnicas propias de la Ingeniería Dirigida por Modelos, como transformaciones, validadores, etc. Así, este trabajo proporciona una base tecnológica sobre la que abordar nuevas propuestas metodológicas en el futuro.

Un Método de Generación de Pruebas de Rendimiento para Múltiples Tecnologías desde Modelos UML con Anotaciones MARTE

Obtener el rendimiento esperado de un flujo de trabajo sería más fácil si cada tarea incluyera sus propias especificaciones. Sin embargo, normalmente sólo se dan requisitos globales de rendimiento, obligando a los diseñadores a inferir los requisitos locales a mano. En trabajos anteriores presentamos dos algoritmos que automáticamente inferían restricciones locales de rendimiento a partir de diagramas de actividad Unified Modelling Language anotados mediante el perfil Modelling and Analysis of Real-Time and Embedded Systems. En este trabajo presentamos un método para usar estas anotaciones para generar casos de prueba de rendimiento para múltiples tecnologías, relacionando el modelo de rendimiento con modelos de diseño e implementación. Mostramos cómo se podría aplicar a código Java y a composiciones de servicios mediante tecnologías existentes de código abierto, y estudiamos las tareas a realizar para su implementación y las similitudes y diferencias con otras propuestas.

Añadiendo soporte para la generación de trazas en transformaciones ATL: impacto sobre la calidad

Los benecios que aporta la gestión y el análisis de la información de trazabilidad, hacen que se convierta en una característica deseable en cualquier propuesta de ingeniería software. Más aún si su incorporación se hace de forma autónoma y sin incrementar el trabajo de los desarrolladores. No obstante, la incorporación de trazabilidad a un proyecto software siempre supone unos costes. En el contexto de la ingeniería dirigida por modelos, existen varias propuestas que permiten generar modelos de trazas a partir de transformaciones de modelos. Sin embargo ¾cuál es el coste de este proceso? ¾cómo afecta a la calidad de las transformaciones? En este trabajo tratamos de responder cuantitativamente a estas cuestiones para un caso concreto: el enriquecimiento de transformaciones ATL con capacidades de producción de modelos de trazas que soporta el framework iTrace.

Automatizando el desarrollo de editores gráficos cognitivamente eficaces

Los lenguajes específicos de dominio juegan un papel fundamental en el desarrollo de software dirigido por modelos, en cuanto permiten obtener una mayor expresividad y facilidad de uso respecto a un lenguaje de propósito general. La creación de editores gráficos para trabajar con este tipo de lenguajes no es una tarea trivial, aunque actualmente existen diferentes entornos de desarrollo que proporcionan el soporte para llevar a cabo dicha creación. Mediante el análisis de las principales características de dichos entornos, hemos identificado algunos aspectos de mejora relacionados con la eficacia cognitiva de las notaciones visuales y con la automatizacíon de todo el proceso de desarrollo de un editor gráfico. Por este motivo, en este trabajo introducimos CEViNEdit, una herramienta basada en GMF que proporciona mecanismos que permiten guiar la seleccíon de las variables visuales que componen la notación, evaluar la eficacia cognitiva de dicha seleccíon y automatizar la generación del editor gráfico.

CEViNEdit: mejorando el proceso de creación de editores gráficos cognitivamente eficaces con GMF

Durante los últimos años, el auge de los Lenguajes Específicos de Dominio (visuales) y la complejidad inherente del desarrollo de editores gráficos para estos lenguajes, ha provocado la aparición de propuestas que proporcionan soporte técnico para esta tarea. La mayoría de estas propuestas utilizan como base EMF y GMF, que en efecto ayudan a simplificar y aumentar el nivel de automatización del proceso de desarrollo. Sin embargo, el desarrollo de herramientas sobre EMF y GMF no está exento de problemas, en su mayoría relacionados con la curva de aprendizaje de estas tecnologías, la escasa documentación o la complejidad que implica proporcionar todas las posibilidades de personalización al usuario. Con el fin de aliviar la complejidad intrínseca del enfoque EMF/GMF para el desarrollo de editores gráficos, en este trabajo presentamos CEViNEdit, una herramienta intuitiva que soporta la generación semi-automática de editores gráficos y, al mismo tiempo, la evaluación de la eficacia cognitiva de la notación visual que implementa el editor.