|
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:
- Definición de un álgebra para representar un modelo de tareas y el meta-modelo asociado
- Definición de un álgebra para representar un modelo de interfaces de usuario abstracto y el meta-modelo asociado
- Definición de un morfismo para representar la correspondencia entre los elementos de cada álgebra y el modelo de transformación asociado
- Desarrollo de los editores de modelos asociado a cada meta-modelo
- Aplicación en un caso de estudio
Para llevar a cabo este objetivo se proponen las siguientes tareas:
- Estudio de los modelos de tareas en HCI.
- Estudio de los modelos de interfaces abstractas.
- 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.
- Definición formal de un modelo de transformación derivado del álgebra definida en el punto 3.
- 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:
- Agile Project Management with Scrum. Ken Schwaber. Microsoft Press, 2004.
- Documentación sobre herramientas de desarrollo, control de versiones, entre otras, necesarias para realizar el TFG.
- Pascal Roques (2009) “Modeling Software Systems Using Uml 2”. Wiley India Pvt. Limited.
- M. Fowler. (2004) “UML Distilled Third Edition: A Brief Guide to Standard Object Modeling Language”.
- Ken Schwaber and Jeff Sutherland (2011) “The Scrum Guide”, ScrumAlliance.
- Anneke Kleppe (2003): MDA Explained, The Model Driven Architecture: Practice and Promise. Addison-Wesley. ISBN: 978-0321194428.
- Steve Mellor (2004): MDA Distilled, Principles of Model Driven Architecture. Addison-Wesley Professional. ISBN: 978-0201788914.
- Oscar Pastor, Juan Carlos Molina (2007): Model-Driven Architecture in Practice. A Software Production Environment Based on Conceptual Modeling. Springer, ISBN: 978-3540718673.
- OMG (2013): MDA: The Model Driven Architecture http://www.omg.org/mda. OMG (2013): MOF: the Meta Object Facility http://www.omg.org/mof/.
- OMG (2013): OCL: The Object Constraint Language http://www.omg.org/spec/OCL/2.2/. The Eclipse Fundation (2013):
- ATL: The Atlas Transformation Language http://www.eclipse.org/atl/.
- 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 |
| |