cambiar a curso:   2019-20   2021-22


Grado en Ingeniería Informática


TRABAJOS FIN DE GRADO
curso: 2020-21

Definición de una transformación de modelos para la construcción de interfaces de usuario abstractas a partir de modelos de tareas


Tecnologías Específicas

Ingeniería del Software
 


Descripcion y Objetivos

El objetivo del trabajo es la definición de un álgebra de modelos para derivar interfaces de usuario abstractas a partir de modelos de tareas. Para llevar a cabo este objetivo, se definen los siguientes sub-objetivos:

  1. Definición de un álgebra para representar un modelo de tareas y el meta-modelo asociado
  2. Definición de un álgebra para representar un modelo de interfaces de usuario abstracto y el meta-modelo asociado
  3. Definición de un morfismo para representar la correspondencia entre los elementos de cada álgebra y el modelo de transformación asociado
  4. Desarrollo de los editores de modelos asociado a cada meta-modelo 
  5. Aplicación en un caso de estudio

Para llevar a cabo este objetivo se proponen las siguientes tareas:

  1. Estudio de los modelos de tareas en HCI.
  2. Estudio de los modelos de interfaces abstractas.
  3. Definición de un álgebra de modelos que tiene por dominio un meta-modelo de tareas y como co-dominio un meta-modelo de interfaz de usuario.
  4. Definición formal de un modelo de transformación derivado del álgebra definida en el punto 3.
  5. Desarrollo de los editores de modelos y de la transformación de modelos

Durante el desarrollo de este trabajo fin de grado se deben adquirir conocimientos avanzados en:

  • Ingeniería del software
  • Definición de álgebras, morfismos e isomorfirmos
  • Arquitecturas software dirigidas por modelos
  • OMG standards (MOF, XMI, etc)
  • Object Constraint Language (OCL)
  • Transformaciones modelo a modelo en Atlas Transformation Language (ATL)
  • Tranformaciones modelo a texto en Acceleo
  • Eclipse Modelling Framework (EMF y GEF)

 

 


Metodología y Competencias

Metodología de trabajo

Dado que el desarrollo del trabajo depende del resultado de las 2 primeras tareas (estudios de los modelos de tareas en HCI y de los modelos de interfaces de usuario abstractas) se opta por un modelo mixto donde estas tareas (1 y 2) se realizan secuencialmente, para luego llevar a cabo el resto utilizando una adaptación de una metodología ágil (por ej. SCRUM) iterativa e incremental para favorecer la evolución de los meta-modelos (3) a partir de la definición de las transformaciones (4) y el desarrollo de los editores (5).

Competencias

  • [IS1] Capacidad para desarrollar, mantener y evaluar servicios y sistemas software que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente, sean asequibles de desarrollar y mantener y cumplan normas de calidad, aplicando las teorías, principios, métodos y prácticas de la Ingeniería del Software
  • [IS3] Capacidad de dar solución a problemas de integración en función de las estrategias, estándares y tecnologías disponibles.
  • [IS4] Capacidad de identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales.
 


Medios a utilizar

  • Ordenador portátil con hardware adecuado para ejecutar la distribución Modeling Tools de Eclipse, conjuntamente con los plug-ins de ATL y Acceleo.
  • Conexión a Internet
  • Herramientas de gestión del proyecto (Kunagi, GitHub)
  • Entorno de desarrollo Eclipse Modeling Tools
  • Eclipse Plugins de ATL, OCL y ACCELEO
 


Bibliografía

La bibliografía se divide en básica y específica. 

La bibliografia básica para desarrollar este proyecto de estas características es la siguiente:

  1. Agile Project Management with Scrum. Ken Schwaber. Microsoft Press, 2004.
  2. Documentación sobre herramientas de desarrollo, control de versiones, entre otras, necesarias para realizar el TFG.
  3. Pascal Roques (2009) “Modeling Software Systems Using Uml 2”. Wiley India Pvt. Limited.
  4. M. Fowler. (2004) “UML Distilled Third Edition: A Brief Guide to Standard Object Modeling Language”.
  5. Ken Schwaber and Jeff Sutherland (2011) “The Scrum Guide”, ScrumAlliance.
  6. Anneke Kleppe (2003): MDA Explained, The Model Driven Architecture: Practice and Promise. Addison-Wesley. ISBN: 978-0321194428.
  7. Steve Mellor (2004): MDA Distilled, Principles of Model Driven Architecture. Addison-Wesley Professional. ISBN: 978-0201788914.
  8. Oscar Pastor, Juan Carlos Molina (2007): Model-Driven Architecture in Practice. A Software Production Environment Based on Conceptual Modeling. Springer, ISBN: 978-3540718673.
  9. OMG (2013): MDA: The Model Driven Architecture http://www.omg.org/mda. OMG (2013): MOF: the Meta Object Facility http://www.omg.org/mof/. 
  10. OMG (2013): OCL: The Object Constraint Language http://www.omg.org/spec/OCL/2.2/. The Eclipse Fundation (2013):
  11. ATL: The Atlas Transformation Language http://www.eclipse.org/atl/. 
  12. Orbeo (2013) Acceleo http://www.acceleo.org/pages/home/en. 

La bibliografía específica se recopilará durante la Tarea 1 del proyecto.

Ésta incluye papers específicos al dominio y co-dominio del álgebra.

 


Tutor


TESORIERO, RICARDO
 

Alumno


MARTÍNEZ MOROTE, CHRISTIAN