Temario
Presentaciò,n:
Mejora substancialmente tu práctica profesional mediante el conocimiento y la práctica de la arquitectura dirigida por modelos (MDA), la cual abarca principalmente:
El manejo de técnicas para aprovechar modelos que sean independientes de la plataforma tecnológica, y que destaquen la lógica de la institución o negocio, pero que puedan ser transformados en modelos útiles para el desarrollo y mantenimiento de sistemas informáticos. El manejo de técnicas para convertir un modelo tecnológicamente neutro en modelos y soluciones dirigidos hacia plataformas y lenguajes específicos. El manejo de técnicas para generar código a partir de modelos dirigidos hacia plataformas y lenguajes específicos. El manejo de cambios en los alcances y requisitos, así como su reflejo y propagación hacia los modelos anteriormente especificados.
Temario
1- Breve introducción al OMG y sus estándares Breve reseña de qué es el OMG
Conceptos de interconexión y estandarización
Importancia del Lenguaje Unificado de Modelado (UML)
Revisión de un ejemplo práctico realizado con UML
Ejemplo práctico de aprovechamiento del estándar XMI para migrar elementos de un modelo UML entre dos herramientas distintas
2- Conceptos de ingeniería de dominio
Análisis y reutilización de elementos comunes a un dominio
Conveniencia del análisis del dominio y de la ingeniería de dominio
Ejemplo práctico de exportación e importación de modelos
3- Qué es MDA
Definición de arquitectura dirigida por modelos (MDA, Model Driven Architecture) El modelo independiente de la plataforma de cómputo (CIM)
El modelo independiente de plataforma (PIM)
Transformación del PIM en un modelo especifico a una plataforma (PSM)
Transformación del PSM a un lenguaje específico del dominio (DSL) y a un lenguaje de definición de datos (DDL)
Qué se puede lograr, a corto y largo plazo, mediante MDA Independencia de los puntos de vista de negocios, de análisis y diseño informáticos, y del desarrollo orientado a plataformas específicas
Transformabilidad de un CIM hacia un PIM, y de un PIM hacia un PSM
Facilitar la integración entre ambientes y bases de datos diferentes
Mayor mantenibilidad de los modelos y aplicaciones
Facilidad para la validación y verificación de los modelos y de las aplicaciones derivadas de ellos
Aprovechamiento a largo plazo de la inversión en análisis y diseño de procesos de negocio, así como en el análisis y diseño informáticos, mediante facilitar la migración entre distintas plataformas de aplicación
Presentación de un ejemplo, y realización de una pequeña práctica
4- Motivación y desarrollo de la arquitectura dirigida por modelos
Este módulo busca familiarizar a los participantes del curso con los factores y condiciones determinantes que motivaron el origen y desarrollo de MDA.
La exacerbada competencia entre proveedores de ambientes y soluciones no ha resultado en un claro ganador
MDA requiere de modelos formales ¿,Qué es un modelo formal?
El concepto de mapeo de un modelo hacia otro
Qué es una transformación en MDA
Las transformaciones como medios de automatización para convertir PIMs hacia modelos orientados a DSLs
5- Análisis, diseño y el PIM
Qué es el proceso de ingeniería de software
MDA y el Proceso Unificado
Relación entre CIM, PIM y PSM con análisis y diseño de software
MDA y el proceso de manejo del proyecto
El concepto de ciclo de vida y el plan del proyecto
Fortalezas y debilidades de las &ldquo,metodologías&rdquo,
6- Generación de documentación a partir de modelos
La generación de documentación de requisitos, análisis y diseño
Ejemplo práctico
7- MDA y la base de datos
Transformación del PIM hacia el modelo de la base datos
Generación directa del esquema en DDL
Definición de plantillas para generar el código de paquetes y procedimientos almacenados
8- Del PIM al PSM
Transformaciones directas del PIM a clases de un lenguaje específico
Creación de plantillas ad hoc para nuevos lenguajes y plataformas
9- Generación de código
Uso de las facilidades de la herramienta para generar código
Las plantillas para generación de código
Definición de plantillas para lenguajes no soportados directamente por la herramienta
10- Qué hacemos con las aplicaciones legadas
Exploremos las alternativas:
Nuevo desarrollo
Tardado, de alto costo y alto riesgo
Adquirir un producto o paquete
El tiempo, el costo y el riesgo dependen del grado de cumplimiento con los requisitos, y de la habilidad y experiencia del equipo implantador
Refactorización (refactoring)
Tiempo y costo ajustables, bajo riesgo (si es correctamente ejecutado)
Si, además, se realiza retroingeniería, el costo se incrementará, aunque habrá mayores beneficios a largo plazo
Experimentar con el empaquetado (wrapping)
Podría funcionar... o no