mde: ingeniería dirigida por modelos. otra forma de...
TRANSCRIPT
![Page 1: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/1.jpg)
MDE: Ingeniería dirigida por modelos.Otra forma de construir software
Dr. Juan Manuel Cueva LovelleDra. B. Cristina Pelayo García-Bustelo
Departamento de Informática
Universidad de Oviedo
Universidad Distrital Francisco José de CaldasBogotá, Noviembre de 2008
![Page 2: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/2.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 3: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/3.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 4: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/4.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 5: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/5.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 6: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/6.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 7: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/7.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 IntroducciónResumenPlanteamiento del problema
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 8: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/8.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEResumen
El Desarrollo de Software Dirigido por Modelos(DSDM) es una propuesta para la construcción desoftware en la que se le atribuye a los modelos el papelprincipal de todo el proceso, frente a las propuestastradicionales basadas en lenguajes de programación,plataformas de objetos y componentes software.
![Page 9: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/9.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEResumen
DSDM persigue elevar el nivel de abstracción en eldesarrollo de software, convirtiendo a los modelos y alas transformaciones entre ellos en los principalesartefactos de todas las fases del proceso de desarrollode software: captura y gestión de los requisitos, diseño,análisis, implementación, despliegue, con�guración,mantenimiento, evolución, etc. [BBC+06]
![Page 10: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/10.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEResumen
El éxito de esta iniciativa ha originado la evolución dedistintos paradigmas englobados dentro del contextodel DSDM, como por ejemplo:
la iniciativa MDA (Model Driven Architecture) de laOMGlas técnicas de Agile Model-Driven Development(AMDD)las propuestas de Domain Speci�c Modeling (DSM)las estrategias de Domain-Oriented Programming(DOP)las Software Factories (SF)
Cada una de ellas aborda el proceso de DSDM dediferente forma, y con distintos mecanismos.
![Page 11: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/11.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEResumen
En particular, la iniciativa MDA cubre un amplioespectro de áreas de investigación:
metamodelos basados en MOFper�les UMLtransformaciones de modelos y de�nición de lenguajesde transformación (QVT)construcción de modelos PIM y PSM ytransformaciones de PIM a PSMconstrucción de herramientas de soporteaplicación en métodos de desarrollo y en dominiosespecí�cos
Algunos de estos aspectos están bien fundamentados yse están empezando a aplicar, otros sin embargo estántodavía en fase inicial
![Page 12: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/12.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEResumen
MDE es el acrónimo de Model Driven Engineering(Ingeniería Dirigida por Modelos) y hace referencia aluso sistemático de modelos, como los elementosprincipales en la ingeniería de software, durante el ciclode vida completo del proyecto [Sch06]
Concibe al desarrollo de software bajo la idea centralde que los artefactos fundamentales son los modelos (yno los programas)
Implica la generación automática de programas a partirde modelos. Model Driven Engineering (MDE) es unaforma genérica de de�nir el DSDM y los MDA
![Page 13: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/13.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEResumen
El principal objetivo del MDE es bajar el coste ymejorar la calidad de las inversiones en software.Las soluciones que aportan este tipo de modelos son:
Separar los aspectos del dominio de los aspectos de latecnologíaEl conocimiento queda registrado en los modelos y lastransformaciones y puede ser rehusadoSe automatizan partes signi�cantes del procesoImplementación de componentes usables por otraspartes
![Page 14: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/14.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 IntroducciónResumenPlanteamiento del problema
![Page 15: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/15.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
En la sociedad actual:
Demanda del Software ⇑ y el coste ⇑Se intenta aumentar la productividad:
⇑ nivel de abstracción⇑ nivel de reutilización
Premisa
¾Cómo aumentar la productividad en la construcción de
software a través del aumento de la abstracción y el
aumento del nivel de reutilización?
![Page 16: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/16.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
En la sociedad actual:
Demanda del Software ⇑ y el coste ⇑Se intenta aumentar la productividad:
⇑ nivel de abstracción⇑ nivel de reutilización
Premisa
¾Cómo aumentar la productividad en la construcción de
software a través del aumento de la abstracción y el
aumento del nivel de reutilización?
![Page 17: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/17.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
La iniciativa Model Driven Architecture (MDA)Es una iniciativa del Object Management Group (OMG)
Planteamiento de los MDA's
El proceso de crear software debería ser dirigido por laformulación de MODELOS en lugar de por la escrituramanual de código fuente.
Con ello se conseguiría: ⇑ nivel de abstracción + ⇑ nivel dereutilización + Interoperabilidad
![Page 18: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/18.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
La iniciativa Model Driven Architecture (MDA)Es una iniciativa del Object Management Group (OMG)
Planteamiento de los MDA's
El proceso de crear software debería ser dirigido por laformulación de MODELOS en lugar de por la escrituramanual de código fuente.
Con ello se conseguiría: ⇑ nivel de abstracción + ⇑ nivel dereutilización + Interoperabilidad
![Page 19: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/19.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
La iniciativa Model Driven Architecture (MDA)Los modelos de MDA [RFW+04] representaran todos losaspectos del programa �nal ejecutable, por tanto deben ser:
formales
precisos
semántica bien de�nida
Deben conseguir un nivel de abstracción que permita surealización en múltiples plataformas [MRM03]
Transformación [KWB03]
El proceso de transformar una especi�cación software en unprograma ejecutable será automático, por tanto el códigofuente de las aplicaciones se debería generar a partir de losmodelos en un proceso de transformación
![Page 20: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/20.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
La iniciativa Model Driven Architecture (MDA)Los modelos de MDA [RFW+04] representaran todos losaspectos del programa �nal ejecutable, por tanto deben ser:
formales
precisos
semántica bien de�nida
Deben conseguir un nivel de abstracción que permita surealización en múltiples plataformas [MRM03]
Transformación [KWB03]
El proceso de transformar una especi�cación software en unprograma ejecutable será automático, por tanto el códigofuente de las aplicaciones se debería generar a partir de losmodelos en un proceso de transformación
![Page 21: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/21.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Desarrollo ágil de softwareDe�ne nuevas metodologías para afrontar el desarrollo delsoftware de una forma más e�ciente, y por tanto menoscostosa [Lar03]
Los métodos ligeros asumen el cambio como algo inevitabley están centrados en el código, que será la principaldocumentación del proyecto.Los métodos ágiles suponen procesos y relaciones con elcliente y su mantenimiento, no código.
Modelos ejecutables [Amb04]
Si asumimos que un modelo ejecutable es código, se puedenaplicar los principios ágiles a la construcción de modelosejecutables
![Page 22: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/22.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Desarrollo ágil de softwareDe�ne nuevas metodologías para afrontar el desarrollo delsoftware de una forma más e�ciente, y por tanto menoscostosa [Lar03]
Los métodos ligeros asumen el cambio como algo inevitabley están centrados en el código, que será la principaldocumentación del proyecto.Los métodos ágiles suponen procesos y relaciones con elcliente y su mantenimiento, no código.
Modelos ejecutables [Amb04]
Si asumimos que un modelo ejecutable es código, se puedenaplicar los principios ágiles a la construcción de modelosejecutables
![Page 23: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/23.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
La propuesta MDA de OMG tiene dos importantes carenciasrelacionadas con el tratamiento de los modelos iniciales:
No se aclara cómo deben manejarse los modelosligados al negocio, lo que se conoce como modelosindependientes de la computación ó CIM.
No se describe cómo deben asociarse esos modelosCIM con los primeros modelos del software adesarrollar, es decir, con los PIM (modelosindependientes de plataforma).
Las metodologías de desarrollo ágil de software tiene comopunto fuerte la conexión de los aspectos asociados alnegocio con los tecnológicos. Sin embargo, no se ajusta a laespeci�cación MDA.
![Page 24: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/24.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Hipótesis
La combinación de la especi�cación MDA con
la idea del desarrollo ágil resultaría muy
ventajosa de cara a un desarrollo de software
�exible y asociado a los procesos del negocio.
![Page 25: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/25.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Objetivo PrincipalDe�nir una metodología para el desarrollo de software quepermita la creación de software a partir del modelado deprocesos del negocio de acuerdo a la especi�cación MDA yel desarrollo de software ágil.
Centrado en las etapas iniciales del proceso de desarrollo,aquellas relacionadas con los modelos CIM y PIM de MDA.
![Page 26: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/26.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Objetivo PrincipalDe�nir una metodología para el desarrollo de software quepermita la creación de software a partir del modelado deprocesos del negocio de acuerdo a la especi�cación MDA yel desarrollo de software ágil.
Centrado en las etapas iniciales del proceso de desarrollo,aquellas relacionadas con los modelos CIM y PIM de MDA.
![Page 27: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/27.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Objetivos Parciales
Objetivo Parcial 1:Realizar un estudio de las áreas relacionadas con elobjetivo principal, es decir, MDA, desarrollo ágil desoftware, patrones de diseño y estándares.
Objetivo Parcial 2:De�nir una metodología para el desarrollo de softwareágil de acuerdo a la especi�cación MDA.
Objetivo Parcial 3:Crear un prototipo que implemente la metodología.
Objetivo Parcial 4:Desarrollar una aplicación usando la metodología yutilizando el prototipo.
![Page 28: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/28.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Objetivos Parciales
Objetivo Parcial 1:Realizar un estudio de las áreas relacionadas con elobjetivo principal, es decir, MDA, desarrollo ágil desoftware, patrones de diseño y estándares.
Objetivo Parcial 2:De�nir una metodología para el desarrollo de softwareágil de acuerdo a la especi�cación MDA.
Objetivo Parcial 3:Crear un prototipo que implemente la metodología.
Objetivo Parcial 4:Desarrollar una aplicación usando la metodología yutilizando el prototipo.
![Page 29: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/29.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Objetivos Parciales
Objetivo Parcial 1:Realizar un estudio de las áreas relacionadas con elobjetivo principal, es decir, MDA, desarrollo ágil desoftware, patrones de diseño y estándares.
Objetivo Parcial 2:De�nir una metodología para el desarrollo de softwareágil de acuerdo a la especi�cación MDA.
Objetivo Parcial 3:Crear un prototipo que implemente la metodología.
Objetivo Parcial 4:Desarrollar una aplicación usando la metodología yutilizando el prototipo.
![Page 30: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/30.jpg)
Introducción
ResumenPlanteamiento delproblema
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlanteamiento del problema
Objetivos Parciales
Objetivo Parcial 1:Realizar un estudio de las áreas relacionadas con elobjetivo principal, es decir, MDA, desarrollo ágil desoftware, patrones de diseño y estándares.
Objetivo Parcial 2:De�nir una metodología para el desarrollo de softwareágil de acuerdo a la especi�cación MDA.
Objetivo Parcial 3:Crear un prototipo que implemente la metodología.
Objetivo Parcial 4:Desarrollar una aplicación usando la metodología yutilizando el prototipo.
![Page 31: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/31.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 32: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/32.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 33: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/33.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDESoftware Ágil
Métodos ligeros de desarrollo
Desarrollado por Kent Beck [BEC99a]
Proceso de desarrollo de Software es impredecible
Debe ser FLEXIBLECaso de Estudio: Extreme Programming
MDA ágiles
Código = los modelos ejecutablesUn modelo ejecutable puede ser construido, ejecutado,probado y modi�cado en ciclos cortos e incrementales.
![Page 34: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/34.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDESoftware Ágil
Métodos ligeros de desarrollo
Desarrollado por Kent Beck [BEC99a]
Proceso de desarrollo de Software es impredecible
Debe ser FLEXIBLECaso de Estudio: Extreme Programming
MDA ágiles
Código = los modelos ejecutablesUn modelo ejecutable puede ser construido, ejecutado,probado y modi�cado en ciclos cortos e incrementales.
![Page 35: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/35.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPrincipios del Software Ágil (1/2)
Los métodos ligeros están centrados en el código
Solución de compromiso entre la ausencia de proceso yel exceso de proceso
Diferencias entre métodos pesados y ágiles según Fowler[FOW95]
Adaptación al Cambio:Los métodos ágiles son adaptables,los métodos pesados que plani�can el proceso de desarrollosólo funciona mientras las cosas no cambian.Aceptación a la naturaleza de las personas: Centrados en laspersonas no en el proceso.
![Page 36: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/36.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPrincipios del Software Ágil (2/2)
Mani�esto para el Desarrollo de Software Ágil [BEC01]
Se pre�ere frente a
las personas y las relaciones los procesos y herramientasel software que funciona la documentaciónla colaboración del cliente los contratosresponder a los cambios seguir un plan
Procesos y relaciones con el cliente y sumantenimiento, no código.
![Page 37: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/37.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEMétodos del Software Ágil
Extreme Programming (XP)
Scrum
Adaptive Software Development (ASD)
Crystal Clear y otras metodologías de la familia Crystal
DSDM
Feature Driven Development
Lean software development
![Page 38: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/38.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDELas 12 Prácticas de Extreme Programming (XP)
1 Plani�cación (historias, iteracciones y tareas)2 Versiones Cortas3 Metáfora4 Diseño Simple5 Pruebas continuas6 Factorización7 Programación en parejas8 Propiedad colectiva del código9 Integración continua10 Trabajo de 40 horas semanales11 Cliente en el sitio12 Estándares de codi�cación
![Page 39: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/39.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 40: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/40.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Arquitectura formulada por el Object ManagementGroup (OMG)Proporciona un enfoque para:
Especi�car un sistema de manera independiente a laplataforma de soporteEspeci�car plataformasElegir una plataforma particular para el sistemaTransformar la especi�cación del sistema para unaplataforma en concreto.
Objetivos [PGBCLST05]
Separación arquitectónica de conceptos para:
Portabilidad
Interoperatibilidad
Reusabilidad
![Page 41: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/41.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Arquitectura formulada por el Object ManagementGroup (OMG)Proporciona un enfoque para:
Especi�car un sistema de manera independiente a laplataforma de soporteEspeci�car plataformasElegir una plataforma particular para el sistemaTransformar la especi�cación del sistema para unaplataforma en concreto.
Objetivos [PGBCLST05]
Separación arquitectónica de conceptos para:
Portabilidad
Interoperatibilidad
Reusabilidad
![Page 42: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/42.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Conceptos Básicos (1/4)
Sistema: Los conceptos de MDA serán expresados entérminos del sistema existente.Modelo: Descripción o especi�cación del sistemamediante un modelo.Dirigido por modelos: aporta los medios para usar losmodelos directamente para el entendimiento, diseño,construcción, despliegue, operación, mantenimiento ymodi�cación.Arquitectura del sistema es una especi�cación de laspartes y los conectores del sistema y las reglas para lainteracción de las partes usando conectores.Punto de vista es la técnica para la abstracciónutilizando un conjunto seleccionado de conceptos de laarquitectura y reglas estructurales
![Page 43: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/43.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Conceptos Básicos (2/4)
Vista: representación del sistema desde la perspectivadel punto de vista elegido
Plataforma: hace referencia a los detalles tecnológicosy de ingeniería que no son relevantes de cara a lafuncionalidad esencial del sistema
Aplicación: funcionalidad que se está diseñando
Independencia de Plataforma
El modelo de computación independiente (CIM): noenseña la estructura de los sistemas, el principalusuario son los conocedores del dominio. Es un puenteentre los expertos del dominio y sus requisitos, y losexpertos en el diseño y construcción de artefactos quejuntos satisfacen los requisitos del dominio.
![Page 44: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/44.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Conceptos Básicos (3/4)
El modelo de plataforma independiente (PIM): vistadel sistema centrada en la operación del mismo queesconde los detalles necesarios para una determinadaplataforma, puede ser utilizado con varias plataformasdiferentes de forma similar. Una técnica muy común esa través de una máquina virtual
![Page 45: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/45.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Conceptos Básicos (4/4)
El modelo de plataforma especi�ca (PSM): combina lasespeci�caciones del PIM con los detalles que especi�cacómo utiliza el sistema un tipo particular de plataforma
Transformación del modelo: proceso de convertir unmodelo en otro del mismo sistema.
Servicios difundidos: servicios disponibles en unaamplia gama de plataformas.
Implementación: especi�cación, que suministra toda lainformación necesaria para la construcción del sistema.
![Page 46: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/46.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Transformaciones de modelos (1/3)
Las transformaciones son un punto clave de MDA
![Page 47: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/47.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Transformaciones de modelos (2/3)
Transformaciones de PIM a PSM:
Implementaciones del estándar QVT(Query/View/Transformation) de OMG:
Borland Together ArchitectSmartQVTMOMENT
VIsual Automated model TRAnsformation (VIATRA 2)ATLAS Transformation Language (ATL)Motor de Transformaciones de BOA 2Model-To-Model Transformation (M2M)
![Page 48: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/48.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Transformaciones de modelos (3/3)
Transformaciones de PSM a Código:
Sistemas de Generación de Código:
Code mungingExpansor de código en línea (inline-code expander)Generación de código mezclado (mixed-codegeneration)
Motores de Plantillas
![Page 49: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/49.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEModel Driven Architecture (MDA)
Implementaciones de MDAs
En el mercado existen múltiples herramientas queimplementan total o parcialmente los conceptos deMDA
Herramientas analizadas:
AndroMDA (version 3 y papers de la version 4)OpenArchitectureWare (oAW)Software Factories de MicrosoftBorland Together Architect Edition
![Page 50: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/50.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 51: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/51.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPatrones de Diseño
Conceptos
Los Patrones de Diseño [GHJV95] son la base para labúsqueda de soluciones a problemas comunes en eldesarrollo de softwareLos patrones de diseño software describen solucionessimples y elegantes a una serie de problemas concretosque tienen lugar en el diseño orientado a objetosCuatro elementos esenciales:
1 El nombre del patrón permite describir un problema dediseño así como sus soluciones y consecuencias
2 El problema describe cuándo aplicar el patrón3 La solución describe los elementos que constituyen el
diseño, sus relaciones, responsabilidades ycolaboraciones
4 Las consecuencias son los resultados de aplicar elpatrón, así como sus ventajas e inconvenientes
![Page 52: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/52.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPatrones de Diseño
Clasi�cación
Patrones de Creación: tienen un propósito de creaciónde objetos
Patrones Estructurales: tratan con la composición declases u objetos
Patrones de Comportamiento: caracterizan el modo enque las clases y objetos interactúan y se reparten laresponsabilidad
![Page 53: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/53.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 54: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/54.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEUni�ed Modeling Language (UML)
El lenguaje uni�cado de modelado es unaespeci�cación del Object Management Group (OMG)
UML es un lenguaje estándar para escribir planos desoftware
UML es un lenguaje
para visualizarpara especi�carpara construirpara documentar
![Page 55: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/55.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEUni�ed Modeling Language (UML)
Modelo conceptual de UML
Elementos principales:
los bloques básicos de construcción de UMLlas reglas que dictan cómo se pueden combinar estosbloques físicosmecanismos comunes que se aplican a través de UML
![Page 56: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/56.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEUni�ed Modeling Language (UML)
Arquitectura
Vista de Casos de Uso
Vista de Diseño
Vista de Procesos
Vista de Implementacion
Vista de Despliegue
![Page 57: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/57.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEUni�ed Modeling Language (UML)
UML ejecutable
Es un per�l de UML que de�ne una semántica deejecución para un subconjunto de UML [Mel04]
Toma un subconjunto del lenguaje UML sinconstrucciones semánticamente ambiguas y les añadela semántica de ejecución a través de Action Semantics
Se obtiene una propuesta computacionalmentecompleta
![Page 58: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/58.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 59: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/59.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEObject Constraint Language (OCL)
OCL es un lenguaje para la descripción precisa derestricciones que se aplican a los modelos grá�cos UML
Desarrollado por IBM y adoptado en octubre de 2003por el grupo OMG como parte de UML 2.0
Características del Lenguaje
Lenguaje de expresión puro: garantiza que unaexpresión OCL no tendrá efectos colaterales, no puedecambiar nada en el modelo
Lenguaje de modelado no es un lenguaje deprogramación: no es posible escribir lógica de programao �ujo de control en OCL
Lenguaje Formal: todos los constructores tienen unsigni�cado formalmente de�nido, por ser OCL parte dela especi�cación UML
![Page 60: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/60.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEObject Constraint Language (OCL)
Utilización de OCL
Como lenguaje de consulta
Dentro del modelo de clase para expresar invariantessobre clases y tipos
Para especi�car tipos invariantes para Estereotipos
Para describir pre y postcondiciones sobre Operacionesy Métodos
Para describir controles
Para especi�car objetivos para mensajes y acciones
Para especi�car restricciones sobre operaciones
Para especi�car reglas de derivación de atributos parauna expresión sobre el modelo UML
![Page 61: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/61.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEObject Constraint Language (OCL)
Elementos de OCL
Expresiones, tipos y valores en OCL
Tipos de�nidos por el usuario
Tipos Collection
![Page 62: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/62.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEObject Constraint Language (OCL)
Ejemplo de utilización OCL para invariantes
Tenemos un diagrama de clases con un clase Cliente deBanco
Restricción: La edad de cualquier cliente es siempremayor o igual a cero.
Restricción de Invariantecontext Cliente inv:
mEdad>=0
![Page 63: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/63.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEObject Constraint Language (OCL)
Ejemplo de utilización OCL para pre y postcondiciones
Extracto del diagrama de clases con dos clases Clientey Cuentas de Banco
Restricción: Retirada de efectivo si el saldo de lacuenta es mayor que el importe
Restricción de pre y postcondicioncontext Cuenta :: retirar(importe : real) : realpre : importe>0 and getSaldo()>=importepost : result=importe
![Page 64: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/64.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 65: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/65.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEMeta-Object Facility (MOF)
El Meta-Object Facility es un estándar del ObjectManagement Group (OMG)
MOF se utiliza como Metamodelo para de�nir UML
Metamodelo
Es un modelo de un modelo.Un modelo es una abstracción y un metamodelo es unaabstracción de mayor nivel, cuyo propósito es de�nir laspropiedades del modelo en sí mismo.
![Page 66: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/66.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEMeta-Object Facility (MOF)
El Meta-Object Facility es un estándar del ObjectManagement Group (OMG)
MOF se utiliza como Metamodelo para de�nir UML
Metamodelo
Es un modelo de un modelo.Un modelo es una abstracción y un metamodelo es unaabstracción de mayor nivel, cuyo propósito es de�nir laspropiedades del modelo en sí mismo.
![Page 67: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/67.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEMeta-Object Facility (MOF)
Metamodelo de UML
![Page 68: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/68.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEMeta-Object Facility (MOF)
Metanivel MOF en el ámbito de los MDA
Metanivel Descripción
M3 MOFM2 MetamodelosM1 ModelosM0 Objetos y Datos
Ejemplos:
MOF: Clase MOF, Atributo MOF,. . .
Metamodelos: Clase UML, Atributo UML,. . .
Modelos: Clase Cuenta en un banco, clase Cliente,. . .
Objetos y Datos: Cliente Cris Pelayo, Cuenta111118,. . .
![Page 69: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/69.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEMeta-Object Facility (MOF)
Implementaciones de MOF
Metadata Repository (MDR) de la plataforma deherramientas de desarrollo NetBeans
Eclipse Modeling Framework (EMF) es un frameworkde modelado y una utilidad de generación de código
![Page 70: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/70.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 71: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/71.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEXML Metadata Interchange (XMI)
XMI es un estándar del Object Management Group(OMG) para el intercambio de información vía XML
Se utiliza como formato de intercambio de modelosUML, es decir, se puede utilizar para la serialización demetamodelos.
Desde la perspectiva de modelado de OMG, los datosse dividieron:
Modelos abstractos: representan la informaciónsemántica, son instancias de lenguaje de modeladobasado en MOFModelos concretos: representan diagramas visuales,para estos se utiliza el XMI
![Page 72: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/72.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEXML Metadata Interchange (XMI)
Facilita el intercambio de los metadatos entre lasherramientas de modelado UML y los repositorios demetadatos MOF
XMI hace la correspondencia (mapping) de MOF aXML para permitir el intercambio entre herramientasde modelado
XMI integra estándares
![Page 73: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/73.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEXML Metadata Interchange (XMI)
DTD, XML Schemas y Documentos XML
Producción de DTD desde un modelo de objetos.Producción de XML Schemas desde un modelo deobjetos.Producción de documentos XML desde un modelo deobjetos.
![Page 74: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/74.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 75: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/75.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDESistemas de Persistencia
De�niciones de Persistencia
Es el tiempo en el que los datos existen y sonutilizables [AMP86] , por tanto es el mantenimiento delos valores de los datos durante todo su tiempo de vida.
Principio secundario del modelo de objetos [Boo94] :cualidad de un objeto de mantener su identidad yrelaciones con otros objetos con independencia delsistema o proceso que lo creó
![Page 76: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/76.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDESistemas de Persistencia
Desarrollo de Aplicaciones Persistentes
El modelo de datos dominante es el modelo relacionalrepresentado por el lenguaje SQLUtilización de SQL desde un lenguaje de programacióncómo Java
de forma directa: JDBC o SQLJde forma indirecta: sistemas de traducciónobjeto-relacional como JDO o Hibernate o unframework de persistencia especí�co (Enterprise JavaBeans o Spring)
![Page 77: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/77.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 78: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/78.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEGeneración automática de Interfaces
Generación de interfaces de usuario a partir de modelosconceptuales.
Dos conceptos fundamentales en la creación deinterfaces: la usabilidad y la accesibilidad
El Modelo Vista Controlador (MVC)
![Page 79: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/79.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEGeneración automática de Interfaces
El Modelo Vista Controlador (MVC)
Patrón de arquitectura de software inventado porTrygve Reenskaug e introducido en el entorno dedesarrollo del SmallTalk 80
Tres elementos:
Modelo: representación del dominio de la informaciónsobre la cual funciona la aplicación (Capa de dominioo negocio)Vista: presenta el modelo en un formato adecuadopara interactuar, es el mecanismo encargado derealizar la correspondencia entre los datos provenientesdel modelo y la interfaz.Controlador: realiza el control del �ujo de navegaciónde la aplicación.
![Page 80: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/80.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEGeneración automática de Interfaces
Flujo de la Información en MVC
El usuario interactúa con la interfaz de usuario dealguna forma, por ejemplo pulsando un botón.
El controlador gestiona el evento que llega.
El controlador accede al modelo, modi�cándolo deforma adecuada a la acción solicitada por el usuario.
El controlador delega a los objetos de la vista la tareade desplegar la interfaz de usuario. La vista obtiene susdatos del modelo para generar la interfaz apropiadapara el usuario donde se re�eja los cambios en elmodelo.
La interfaz de usuario espera nuevas interacciones delusuario, comenzando el ciclo nuevamente.
![Page 81: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/81.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEGeneración automática de Interfaces
Implementaciones del MVC orientadas a la Web
JavaServer Faces
Apache Struts
XForms
![Page 82: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/82.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del ArteDesarrollo de Software ágilModel Driven Architecture (MDA)Patrones de DiseñoUni�ed Modeling Language (UML)Object Constraint Language (OCL)Meta-Object Facility (MOF)XML Metadata Interchange (XMI)Sistemas de PersistenciaGeneración automática de InterfacesPlataformas: J2EE y .NET
![Page 83: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/83.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlataformas: J2EE y .NET
La Plataforma J2EE
Conjunto de especi�caciones diseñadas por Sun quepermiten la creación de aplicaciones empresariales
J2EE = JVM + Lenguaje Java + API Java + Utilidades
![Page 84: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/84.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlataformas: J2EE y .NET
Características de la JVM (Java Virtual Machine)
Pila de ejecución y un repertorio de instrucciones quemanipulan dicha pila.Puede dar soporte a varios hilos (threads) de ejecuciónconcurrente.Compilación JITVeri�cación estática de bytescodesGestión de memoria dinámicaDependencia del lenguaje Java
![Page 85: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/85.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlataformas: J2EE y .NET
El lenguaje Java
Este lenguaje fue desarrollado por J. Gosling en 1993
Características:
SencilloOrientado a Objetos PuroInterpretado y compiladoDistribuido y con multihilosIndependiente de la plataforma y portableRobusto y seguro
![Page 86: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/86.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlataformas: J2EE y .NET
La Plataforma .NET
Desarrollada por Microsoft.
Intenta simpli�car el desarrollo de aplicaciones en unentorno altamente distribuido como es Internet.
![Page 87: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/87.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlataformas: J2EE y .NET
Características de la CLR (Common Language Runtime)
Utilización de una pila de ejecución
Compilación JIT
Generación de código en tiempo de instalación
Veri�cación estática de tipos
Gestión dinámica de memoria
Independiente del lenguaje
Sistema de Componentes
![Page 88: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/88.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlataformas: J2EE y .NET
Los Lenguajes .NET
Lenguaje Visual Basic
Lenguaje C#
Lenguaje C++ administrado
Lenguaje Jscript .NET
Lenguaje J#
![Page 89: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/89.jpg)
Introducción
Estado del Arte
Software ÁgilMDAPatronesUMLOCLMOFXMIS.PersistenciaGeneración CódigoPlataformas
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEPlataformas: J2EE y .NET
Otros elementos de la Plataforma .NET
CTS: Sistema Común de TiposTipos de valorTipos de referencia
Biblioteca de clases de .Net
![Page 90: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/90.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 91: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/91.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDAFundamentaciónProceso de Desarrollo TradicionalProceso de Desarrollo con MDATALISMAN: Metodología ágil con MDAPrototipo asociado a TALISMANEjemplo: �Casas Rurales en Asturias�
![Page 92: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/92.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEFundamentación
Capacidad de los MDAs con metodologías ágiles frentea los métodos tradicionales.
Analizar el impacto de los MDAs en el proceso dedesarrollo de software.
Disciplina de Ingeniería
Algunos autores consideran que el desarrollo deherramientas MDA es un requisito indispensable paraconvertir el proceso de crear software en una verdaderadisciplina de ingeniería. [Fra03] [KWB03] [RFW+04]
![Page 93: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/93.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEFundamentación
Capacidad de los MDAs con metodologías ágiles frentea los métodos tradicionales.
Analizar el impacto de los MDAs en el proceso dedesarrollo de software.
Disciplina de Ingeniería
Algunos autores consideran que el desarrollo deherramientas MDA es un requisito indispensable paraconvertir el proceso de crear software en una verdaderadisciplina de ingeniería. [Fra03] [KWB03] [RFW+04]
![Page 94: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/94.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDAFundamentaciónProceso de Desarrollo TradicionalProceso de Desarrollo con MDATALISMAN: Metodología ágil con MDAPrototipo asociado a TALISMANEjemplo: �Casas Rurales en Asturias�
![Page 95: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/95.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (1/9)
Etapas básicas
Análisis de requisitos
Modelo de análisis
Modelo de diseño
Escritura del códigofuente
Despliegue del sistema
![Page 96: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/96.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (2/9)
Etapas básicas del proceso de desarrollo de Software,propuesto inicialmente por Royce [Roy70]
Modelo de ciclo de vida en cascada (waterfall model)
Modelo en espiral de Boehm [Boe88]
Evolucionario [MZ96]
Modelo incremental [Som01]
Uni�ed Proccess (UP), la implementación másadoptada de este método es el Racional Uni�edProccess (RUP) [Kru00]
![Page 97: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/97.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (3/9)
La iteración como respuesta al cambio
Todos estos modelosadoptan la iteración cómoherramienta principal paraabordar los cambios en elsoftware
Se acepta que los cambiosen los requisitos delsoftware son inevitables[Bec99a]
El proceso de desarrollodebe estar preparado paraabsorberlos
![Page 98: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/98.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (4/9)
Problemas con la Iteración
Los métodos con ciclo de vida iterativo producen grancantidad de artefactos en forma básicamente dedocumentos de texto y diagramas, pero estos estándesconectados entre sí y del código fuente querepresentan [KWB03]
Dos alternativas opuestas:
Retroceder a la fase de desarrollo apropiada y
acometer el cambio, provoca un �exceso deburocracia� [Fow05]
Realizar los cambios únicamente en el código. Lastareas de análisis, modelado y documentaciónprevias a la codi�cación dejan de considerarseimprescindibles
![Page 99: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/99.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (5/9)
Métodos ágiles
Acortan el plazo de iteración y apuestan por undesarrollo evolutivo
Utilizan una plani�cación adaptativa
Apuestan por la entrega incremental
Incorporan prácticas de desarrollo que buscan permitiruna respuesta rápida y �exible a los cambios
Uni�ed Proccess (UP)
Considerarlo pesado o ágil dependerá de su implantaciónconcreta. Martin Fowler en [Fow05] señala que en laindustria pueden encontrarse utilizaciones del UP que vandesde rígidos modelos en cascada a instanciasperfectamente ágiles
![Page 100: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/100.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (5/9)
Métodos ágiles
Acortan el plazo de iteración y apuestan por undesarrollo evolutivo
Utilizan una plani�cación adaptativa
Apuestan por la entrega incremental
Incorporan prácticas de desarrollo que buscan permitiruna respuesta rápida y �exible a los cambios
Uni�ed Proccess (UP)
Considerarlo pesado o ágil dependerá de su implantaciónconcreta. Martin Fowler en [Fow05] señala que en laindustria pueden encontrarse utilizaciones del UP que vandesde rígidos modelos en cascada a instanciasperfectamente ágiles
![Page 101: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/101.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (6/9)
Problemas de los Métodos ágilesFalta de datos empíricos que prueben su efectividadNo escalabilidad a la hora de su aplicación en proyectosgrandes [TFR02]
Excesiva dependencia del conocimiento tácito de losmiembros del equipo de desarrollo debido a la ausenciade una documentación formal [Coc01]Alto acoplamiento entre las diferentes prácticas de XPy la falta de documentación de sus interrelaciones[Van05]
Métodos ágiles = Métodos anárquicos
Esta consideración es errónea dado que en el �Mani�esto Ágil�(Agile Manifesto) [Bec01], en el principio número 10 se señalaque la excelencia técnica y los buenos diseños aumentan laagilidad
![Page 102: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/102.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (6/9)
Problemas de los Métodos ágilesFalta de datos empíricos que prueben su efectividadNo escalabilidad a la hora de su aplicación en proyectosgrandes [TFR02]
Excesiva dependencia del conocimiento tácito de losmiembros del equipo de desarrollo debido a la ausenciade una documentación formal [Coc01]Alto acoplamiento entre las diferentes prácticas de XPy la falta de documentación de sus interrelaciones[Van05]
Métodos ágiles = Métodos anárquicos
Esta consideración es errónea dado que en el �Mani�esto Ágil�(Agile Manifesto) [Bec01], en el principio número 10 se señalaque la excelencia técnica y los buenos diseños aumentan laagilidad
![Page 103: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/103.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (7/9)
Modelado y Codi�cación
Un error en muchos enfoques metodológicos dedesarrollo software ha sido obviar la importancia de laactividad de codi�cación.
Royce equiparó la codi�cación a la fase de construcciónde otras ingenierías [Roy70]
Fowler [Fow05] señala que en otras ingenierías:El diseño es más difícil de predecir y requiere la gentecon mayor formación y creatividadLa actividad de construcción es más fácil de predecir,requiere gente con menos formación y es, en general,mucho más costosa¾Puede obtenerse un diseño que haga de lacodi�cación una actividad de construcción predecible?Y si esto es posible ¾será rentable en términos decostes?
![Page 104: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/104.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (8/9)
Modelado y Codi�caciónEl problema fundamental es la gran distancia existenteentre:
Los modelos software o descripciones del softwarerealizadas a un elevado nivel de abstracción.El código fuente que comprende la aplicación y querealiza los modelos desarrollados sobre una plataformatecnológica concreta.
Enfoque pragmático: Modelado ágil [AJ02]
El modelado es importante, como herramienta decomunicación, NO de documentaciónNo se construyen modelos detallados del softwareLos modelos sólo especi�can las partes más complejas de laaplicación, los problemas sencillos de diseño se resuelvendirectamente en la fase de codi�cación
![Page 105: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/105.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (8/9)
Modelado y Codi�caciónEl problema fundamental es la gran distancia existenteentre:
Los modelos software o descripciones del softwarerealizadas a un elevado nivel de abstracción.El código fuente que comprende la aplicación y querealiza los modelos desarrollados sobre una plataformatecnológica concreta.
Enfoque pragmático: Modelado ágil [AJ02]
El modelado es importante, como herramienta decomunicación, NO de documentaciónNo se construyen modelos detallados del softwareLos modelos sólo especi�can las partes más complejas de laaplicación, los problemas sencillos de diseño se resuelvendirectamente en la fase de codi�cación
![Page 106: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/106.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo Tradicional (9/9)
Problemas en los Procesos de Desarrollo Actuales
La desconexión entre los artefactos de modelado, yentre éstos y el código fuente del programa, hacedesaconsejable la realización de un modelado formal,detallado e integral.
Si no se realiza un modelado formal se plantea unproblema importante de mantenimiento.Otros problemas comunes a los métodos de desarrolloiterativos son:
ProductividadCalidadTrazabilidad de requisitosReutilización
![Page 107: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/107.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDAFundamentaciónProceso de Desarrollo TradicionalProceso de Desarrollo con MDATALISMAN: Metodología ágil con MDAPrototipo asociado a TALISMANEjemplo: �Casas Rurales en Asturias�
![Page 108: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/108.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo utilizando MDA (1/4)
El Enfoque MDA de OMG
Importantes cambios en cómo se acometen las fases enel proceso de desarrolloCambios sustanciales en las fases del análisis y deldiseño debido a la doble transformación automática:
entre un PIM y un PSMentre un PSM y el código fuente de la aplicación
PIM se corresponde con la fase de diseño del modelotradicional
La transformación es el conocimiento experto sobre laplataforma tecnológica
![Page 109: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/109.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo utilizando MDA (2/4)
El Enfoque MDA de OMG
Se favorece la reutilización de:
Mismos modelos con diferentes de�niciones detransformaciónMismas de�niciones de transformación con diferentesmodelos
La doble transformación automática (PIM-PSM yPSM-código fuente) implica que los modelos seperciban como ejecutables:
Permite validar los modelos realizados
Permite determinar cuándo se ha terminado de
modelar: cuando el PIM veri�que todos los casos de
pruebas diseñados [RFW+04]
![Page 110: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/110.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo utilizando MDA (3/4)
Especi�cación e implementación con MDA
Separación del análisis ydel diseño, realizados porgrupos de especialistasdiferentesLa herramienta MDAacepta como entradas:
Modelo de diseño(PIM)De�nición de latransformación
A partir de las entradas segenera el PSM
El PSM será transformadoa código fuente
![Page 111: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/111.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEProceso de Desarrollo utilizando MDA (4/4)
Ciclo de Vida con MDA
Iteración para afrontar elcambio en los requisitos,pero son más efectivas
Cambio en requisitostecnológicos ⇒ ajusteen las transformacionesque son reutilizablespara otras aplicacionesCambio en requisitosde negocio ⇒modi�caciones en elmodelo de análisis.
Como la transformación PIM - Código fuente esautomática se pueden validar los modelos de análisisejecutando los PIM
![Page 112: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/112.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDAFundamentaciónProceso de Desarrollo TradicionalProceso de Desarrollo con MDATALISMAN: Metodología ágil con MDAPrototipo asociado a TALISMANEjemplo: �Casas Rurales en Asturias�
![Page 113: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/113.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (1/11)
Los métodos ágiles de desarrollo constituyen unarespuesta a la realidad cambianteEl proceso de desarrollo propuesto en TALISMAN secaracteriza por:
Generación de código automática a partir deespeci�caciones en XMLSer ágil en base a XP basada en la simplicidad,comunicación y retroalimentaciónSer dirigido por modelos especi�cados en XMLSer un proceso AMDD (Agile Model DrivenDevelopment)
![Page 114: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/114.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (2/11)
Proceso de Desarrollo Ágil con TALISMAN
![Page 115: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/115.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (3/11)
Análisis
Basado en Casos de Uso
Escenarios que especi�canlos Casos de Uso
Especi�cación completadel proceso (story board)
de cada Escenario
Interfaz Grá�ca ligada acada Escenario
![Page 116: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/116.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (4/11)
Diseño
Diccionario de Clases
Comportamiento internode los métodos de cadaclase
Especi�cación de laarquitectura software
Especi�cación de laarquitectura hardware
Otros tipos de Modelos
![Page 117: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/117.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (5/11)
Modelo especi�cado en XML
Especi�cación de requisitos en XML
Aporta contenido semántico a UML a través deextensiones
Especi�cación del comportamiento de los métodos(algorítmica de los métodos)
Información de los per�les
Implementación de Patrones de Diseño
![Page 118: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/118.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (6/11)
Arquitectura de TALISMAN
Utiliza el Modelo especi�cado en XML para generarcódigoRealiza la validación semánticaConstruye el sistema de persistencia, los interfaces deusuario con ayuda de herramientas generadoras deinterfaces y genera el código por medio detransformaciones
![Page 119: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/119.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (7/11)
Arquitectura de TALISMAN
La arquitectura tiene varios modelos
CIMPIMPSM
Guías de transformación entre modelos:
PIM a PIMPIM a PSMPSM a PSM
![Page 120: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/120.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (8/11)
Modelo CIM de la Arquitectura de TALISMAN
Centrado en el dominio del negocio
Especi�cado en XML
![Page 121: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/121.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (9/11)
Modelo PIM de la Arquitectura de TALISMAN
Especi�cación del funcionamiento propias del sistemajunto a la especi�cación para la implementación en unmedio informático
Especi�cado en XMLN-Capas
Diccionario de ClasesModelo de interfaz de usuarioEscenarios que se utilizan para de�nir la lógica denegocio
![Page 122: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/122.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (10/11)
Modelo PSM de la Arquitectura de TALISMAN
Se combina el punto de vista independiente de laplataforma con los detalles y características propias deluso de una plataforma de desarrolloN-Capas
Base de Datos a través de especi�cación XMLInterfaces de usuario a través de especi�cación XMLModelo de negocio a través de especi�cación XML
![Page 123: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/123.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEMetolodología propuesta (11/11)
Guías de transformación entre modelos de TALISMAN
CIM a PIM: los aspectos independientes decomputación se transforman en una especi�caciónformal de la estructura y forma del sistema
PIM a PIM: con objeto de re�namiento
PIM a PSM: un PIM re�nado se transforma en unmodelo dependiente de la infraestructura �nal deejecución
PSM a PSM: con objeto de re�namiento
PSM a Código: un PSM re�nado se transforma encódigo fuente en la plataforma de destino
![Page 124: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/124.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDAFundamentaciónProceso de Desarrollo TradicionalProceso de Desarrollo con MDATALISMAN: Metodología ágil con MDAPrototipo asociado a TALISMANEjemplo: �Casas Rurales en Asturias�
![Page 125: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/125.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (1/16)
Objetivos
Construir un prototipo utilizando la MetodologíaTALISMAN
Orientado al mundo Web
Plataforma .NET
Generación automática de código ASP.NET y C#
Se crean los modelos en XML y a partir de ellos serealiza el proceso de desarrollo, transformación yconstrucción del sistema hasta obtener el código deforma automática
![Page 126: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/126.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (2/16)
Características de las aplicaciones Web
En el desarrollo de aplicaciones Web se mezclan:Métodos tradicionales de desarrolloPropuestas de ingeniería WebMétodos para hipermedia
La agilidad en los desarrollos Web es fundamentalPronta disponibilidad del software en la redCiclos de desarrollo generalmente más cortosRequisitos de usuario desconocidosDesarrollos aparentemente muy sencillosNecesidad de entrega de versiones previas
![Page 127: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/127.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (3/16)
Adaptación de TALISMAN a los Sistemas Web:
La adaptación de TALISMAN se realiza de�niendonuevos artefactos adaptados a la Ingeniería WebCon los Diagramas y la información del Análisis y delDiseño se genera la documentación en XML coninformación de:
Clases con la información del Diagrama de ClasesFragmentos con la información semántica de las clasesdel Diagrama de FragmentosNavegación con la información sobre la navegación delDiagrama de NavegaciónUsuarios con sus roles que de�nidos en el Diagrama deUsuariosServicios Web de�nidos en los Diagrama de serviciosWeb y Servicios Web ClienteModelo de la lógica de Negocio
![Page 128: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/128.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (4/16)
Clases más representativas del Prototipo
Model
Resources
Generator
GeneratorASPNET2
Utils
Associations
Class
MultipleAssociation
ClassTest
Compiles
DataAccessBase
Links
![Page 129: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/129.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (4/16)
Clase Generator
![Page 130: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/130.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (5/16)
Diagrama de Estados de la Clase Generator
![Page 131: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/131.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (6/16)
Con�guración del Prototipo
![Page 132: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/132.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (7/16)
Construcción del PIM
El PIM de TALISMAN con la información de laaplicación se almacena en un archivo �pim.xml�
Se permite selecionar los modelos de entrada que seránutilizados
![Page 133: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/133.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (8/16)
Construcción del PSM
A partir del PIM se genera el PSM
A partir del PSM se genera el código fuente de laaplicación
Proceso completamente automático
![Page 134: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/134.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (9/16)
Generación de Código fuente
Se genera un proyecto de Visual Studio 2005denominado �solution.sln�
La solución consta de cinco proyectos
![Page 135: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/135.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (10/16)
Interfaz de Usuario (WebUI)
Proyecto principal
Páginas WebASPX generadas
Web.con�g con la con�guración de la aplicación
Servicios Web que se ofrecen y que se consumen
Archivos generadores de menús.
![Page 136: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/136.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (11/16)
Lógica de Negocio (Business)
Contiene las clase para las tablas que se generarán enla base de datos
Contiene los archivos que utiliza NHibernate paraindependizar el acceso a datos de la lógica de negocio
Lógica de Negocio (BusinessFacade)
Puente entre la capa de negocio y la capa de acceso adatos
![Page 137: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/137.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (12/16)
Persistencia (DataAccess)
Independiza el acceso a la base de datos del resto de laaplicación
Contiene métodos para guardar, obtener o borrarelementos de la base de datos
![Page 138: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/138.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (13/16)
Pruebas (TestUnit)
Pruebas unitarias generadas automáticamente
![Page 139: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/139.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (14/16)
Tablas de la base de datos
Script que genera la estructura de la base de datos
Para Sql Server 2005 se generará un archivo llamadoDataBase.sql
![Page 140: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/140.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (15/16)
Administración de usuarios y per�les de usuario
Se realiza la gestión de usuarios a través de lainformación generada en el archivo web.con�g
Se especi�can roles y permisos de acceso a toda oparte de la aplicación
Fragmento de web.con�g<location path=�Reserva.aspx�><system.web><authorization><allow roles=�Admin� /><deny users=�?� /></authorization></system.web></location>
![Page 141: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/141.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEConstrucción del prototipo (16/16)
Registros(logs)Registro de proyecto generado con todas lasactividades de TALISMAN dividido en secciones:
Beginning: creación directorios y copia de archivoscomunes a todos los proyectosPIM to PIMPIM to PSMPSM to PSMPSM to Code
Registro de la ejecución del proyecto generadoAcciones que realiza el usuario de la aplicaciónMensajes de NHibernate generados durante laejecución
![Page 142: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/142.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDAFundamentaciónProceso de Desarrollo TradicionalProceso de Desarrollo con MDATALISMAN: Metodología ágil con MDAPrototipo asociado a TALISMANEjemplo: �Casas Rurales en Asturias�
![Page 143: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/143.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (1/11)
Objetivo y Características generales
Objetivo: Comprobar la validez del prototipo creadosiguiendo TALISMAN
Características:
Plataforma ASP.NET 2.0Sistema de gestión de bases de datos Sql Server 2005
Casas Rurales en Asturias
Aplicación Web con información de casas rurales dediferentes zonas en Asturias y de las actividades que en ellasse pueden realizar
![Page 144: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/144.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (1/11)
Objetivo y Características generales
Objetivo: Comprobar la validez del prototipo creadosiguiendo TALISMAN
Características:
Plataforma ASP.NET 2.0Sistema de gestión de bases de datos Sql Server 2005
Casas Rurales en Asturias
Aplicación Web con información de casas rurales dediferentes zonas en Asturias y de las actividades que en ellasse pueden realizar
![Page 145: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/145.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (2/11)
Análisis y Diseño
Especi�cación en XML de los Requisitos
Diagramas:
Diagrama de ClasesDiagramas de Interfaz de Usuario a través de:
Diagrama de FragmentosDiagrama de Navegación
Diseño de la Lógica de Negocio a través de:
Diagrama de clases de servicios WebDiagrama de servicios Web ClienteDiagrama de usuarios
![Page 146: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/146.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (3/11)
Análisis y Diseño: Diagrama de Clases
![Page 147: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/147.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (4/11)
Análisis y Diseño: Diagrama de Fragmentos
![Page 148: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/148.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (5/11)
Análisis y Diseño: Diagrama de Navegación
![Page 149: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/149.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (6/11)
Análisis y Diseño: Lógica de Negocio
![Page 150: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/150.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (7/11)
Modelo especi�cado en XML
A partir de los Diagramas del Análisis y Diseño serealiza la documentación en formato XML
ClasesFragmentosNavegaciónUsuariosServicios WebServicios Web Cliente
Un único archivo que constituye la entrada aTALISMAN
![Page 151: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/151.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (8/11)
TALISMAN: Modelo PIM
Almacenado en el archivo �pim.xml�
Esqueleto del PIM<?xml version=�1.0� encoding=�utf-8�?><PIM><classes><fragments><navigation><users><webservices><webservicesClients>
</PIM>
![Page 152: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/152.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (9/11)
TALISMAN: Transformaciones mediante archivos XSLT yCSS
Especi�cación de transformaciones con archivos XSLT(eXtensible Stylesheet Language Transformations)
Actividad.xsltActPropia.xsltCasa.xsltDefault.xsltError.xsltReserva.xsltZona.xslt
Estilo de la aplicación Web a través de archivos CSS deHojas de Estilo (StyleSheet.css).
![Page 153: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/153.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (10/11)
TALISMAN: Recursos adicionales
Para crear la interfaz de usuario se proporcionanimágenes
![Page 154: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/154.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
FundamentaciónProceso TradicionalProceso con MDATALISMANPrototipoEjemplo
Conclusiones
Referencias
MDEEjemplo de utilización del Prototipo (11/11)
Salida GeneradaEl prototipo genera todos los archivos necesarios parala ejecución de la aplicación sobre la plataforma ASP.NET.Se generan más de 60 archivos
![Page 155: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/155.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 156: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/156.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEConclusiones
Aportaciones en el ámbito de MDA
De�nición de un entorno de desarrollo basado en MDA
De�nición de modelos CIM a partir de los procesos delnegocio
Directrices para la creación de modelos PIM a partir demodelos CIM
Una metodología que mejora la conexión entre lasreglas de negocio y las tecnologías MDA
![Page 157: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/157.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEConclusiones
Aportaciones en el ámbito del software ágil
Una metodología para el desarrollo de software ágil quepueda adaptarse a las necesidades y característicasparticulares de cada empresa
Una metodología de desarrollo de software quecombina las ventajas del MDA y el desarrollo ágil
![Page 158: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/158.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEContenidos
1 Introducción
2 Base teórica y Estado del Arte
3 Desarrollo ágil con MDA
4 Conclusiones
5 Referencias
![Page 159: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/159.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEReferencias
[Amb04] S.W. Ambler Agile Model Driven Development withUML 2. Cambridge University Press, 3rd edition, 2004.
[BBC+06] L. Balmelli, D. Brown, M. Cantor y M. MottModel-driven systems development. IBM Systems Journal,volumen 45 número 3, páginas 569 a 585. 2006.
[Bec01] K. Beck. Manifesto for agile softwaredevelopment.Technical Report, 2001.http://www.agilemanifesto.org/
[Fra03] David S. Frankel. Model Driven Architecture. ApplyingMDA to Enterprise Computing. OMG Press, 2003
[KWB03] A. Kleppe, J. Warmer y W. Bast MDA Explained. TheModel Driven Architecture: Practice and Promise.Addison-Wesley. 2003.
[Mel04] S. J. Mellor Agile MDA.The MDA Journal, páginas 144a 160, 2004
[MM03] J. Miller y J. Mukerji MDA Guide Version 1.0.1. ObjectManagement Group, 2003
![Page 160: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/160.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEReferencias
[MSU+04] S.J. Mellor, K. Scott, A. Uhl, y D. Weise. MDADistilled. Principles of Model-Driven Architecture. ObjectTechnology. Addison-Wesley, 2004.
[PCJ06] B. C. Pelayo García-Bustelo, J. M. Cueva Lovelle, yA.A. Juan Fuente. C3NET: Smart Environment For .NET CodeGeneration Using MDA. WORLDCOMP'06 Proceedings: The2006 World Congress in Computer Science, ComputerEngineering, and Applied Computing. Las Vegas, USA (2006).
[PC06a] B. C. Pelayo García-Bustelo y J. M. Cueva Lovelle.Arquitecturas dirigidas por modelos (MDA). El frameworkC3NET. II Congreso Internacional de Ingeniería de Computacióny Sistemas (IICIIS). Trujillo, Perú (2006).
[PC06b] B. C. Pelayo García-Bustelo y J. M. Cueva Lovelle.Usabilidad, accesibilidad y métricas de sitios Web. II CongresoInternacional de Ingeniería de Computación y Sistemas (IICIIS).Trujillo, Perú (2006).
![Page 161: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/161.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEReferencias
[PCS+05] B.C. Pelayo García-Bustelo, J.M. Cueva Lovelle, M.C.
Suárez Torrente, y A.A. Juan Fuente. C3NET: Framework para
la construcción de MDA en la Plataforma .NET. III Simposio
Internacional de Sistemas de Información en la Sociedad del
Conocimiento (SISOF 2005). Instituto Tecnológico de las
Américas, República Dominicana (2005)
[PC05] B. C. Pelayo García-Bustelo y J. M. Cueva Lovelle.
Evolución de las directrices de accesibilidad del W3C. III
Simposio Internacional de Sistemas de Información en la
Sociedad del Conocimiento (SISOF 2005). Instituto Tecnológico
de las Américas, República Dominicana (2005)
[RFW+04] C. Raistrick, P. Francis, J. Wright, C. Carter y I.Wilkie. Model Driven Architecture with Executable UML.Cambridge University Press, 2004.
![Page 162: MDE: Ingeniería dirigida por modelos. Otra forma de ...di002.edv.uniovi.es/~cueva/asignaturas/masters/2008/MDE_udistrital.pdfResumen Planteamiento del roblemap Estado del Arte Desarrollo](https://reader034.vdocuments.pub/reader034/viewer/2022052423/5f0bd5727e708231d4327097/html5/thumbnails/162.jpg)
Introducción
Estado del Arte
Desarrollo ágil conMDA
Conclusiones
Referencias
MDEReferencias
[Sch06] Douglas C. Schmidt. Model - Driven Engineering. IEEEComputer Society, páginas 25 a 31. Febrero 2006
[SFP04] Richard Soley, David S. Frankel, y John Parodi. TheMDA Journal: Model Driven Architecture Straight From TheMasters. Meghan Ki�er Pr, Noviembre 2004