Tendencias y HERRAMIENTAS de

 MDA y MDD


Aproximación mda


En primer lugar, de la aproximación MDA podemos extraer varios aportes. 
El principal de ellos es la abstracción promovida por la aproximación. Los sistemas se pueden definir y diseñar desde un alto grado de abstracción, lo que permite a los desarrolladores aislarse de los detalles técnicos. 
El procedimiento de diseño se hace mediante modelos especificados en un lenguaje de modelado preferentemente no textual. Esto simplifica la generación, entendimiento y modificación de los modelos a desarrollar. 

Aproximación MDA

  • Facilitan la comunicación con los usuarios y a la vez son el germen del código de la aplicación.
  • Se deriva de las transformaciones sucesivas sobre los mismos. 
  • Pueden ser procesados por un computador, por lo que las transformaciones se pueden hacer de forma automática. 
  • Resuelven los problemas de la portabilidad y de la interoperabilidad.
  • Resuelve el problema de la productividad, derivado del desarrollo de software tradicional. MDA permite aumentarla básicamente por dos motivos:

Aproximación MDA

 

     La agilidad en la generación y actualización de los modelos

     La generación automática de transformaciones sucesivas cuyo resultado final es el código de la aplicación en un lenguaje determinado. 

Herramientas MDA




El Ciclo de Vida del Desarrollo al utilizar MDA consta de un modelo independiente de la plataforma (PIM), un modelo específico a la plataforma (PSM) y un Código. 

MDA plantea que del análisis de requisitos se obtiene un Modelo Independiente de la Plataforma (PIM), posteriormente este modelo se transforma con la ayuda de herramientas en uno o varios Modelos Específicos de la Plataforma (PSM), y por último los PSM se transforman en código.

ArcStyler


Es un sistema basado en uso de cartuchos para descripción de transformaciones que permite generar aplicaciones de n capas codificadas en java/J2EE y c#/.NET a partir de diagramas UML y la especificación de los procesos del negocio. 

Permite extender las capacidades de transformación, generando nuevos cartuchos a partir de UML, cuyo objetivo sea cualquier plataforma o lenguaje.

ArcStyler


Integra herramientas de modelado (UML) y desarrollo (ingeniería inversa, explorador de modelos basado en MOF, construcción y despliegue) con la arquitectura CARAT que permite la creación, edición y mantenimiento de cartuchos MDA (MDA-Cartridge) que definen transformaciones. 

También incluye herramientas relacionadas con el modelado del negocio y el modelado de requisitos por lo que cubre todo el ciclo de vida.

OptimalJ


Este es una herramienta producida por la compañía Compuware, el cual genera aplicaciones J2EE partiendo de los modelos. Implementa completamente la especificación MDA. Está desarrollado en Java, lo que le hace portable a cualquier plataforma para su ejecución.

Se trata de un entorno de desarrollo que permite generar aplicaciones J2EE completas a partir de un PIM. 

OptimalJ


Destaca

  • Generación automática a partir del PIM de los modelos PSM de la capa de presentación (web), capa de negocio EJB y base de datos, estableciendo la conexión (puentes) entre las tres capas. 
  • Distinción entre bloques libres y protegidos en el código para impedir la modificación del código generado

Tendencias MDA


Tendencias MDA

La investigación con respecto a MDA, es muy extensa. Existe un gran volumen de publicaciones y estudios sobre MDA que aportan conocimiento y experiencias de aplicación práctica de la misma, predominan los autores del entorno académico, existiendo en proporción, poca presencia de la industria como impulsores de estos estudios. 

Se observa que la mayoría de las ponencias presentadas en conferencias o talleres realizados en el ámbito de MDA, suelen ser de autores del ámbito académico.

MoDELS

  • Una de las conferencias existentes a nivel internacional es la conferencia MoDELS que se realiza de de forma anual y se centra en la ingeniería dirigida por modelos propulsada por MDA. 
  • Las conferencias MoDELS son un punto de encuentro para el intercambio y la innovación tecnológica entorno a ideas y experiencias relativas a la arquitectura MDA en desarrollo de sistemas Software.

Otras Conferencias



  • European Conference on Model Driven Architecture (EC-MDA) enfocada en la difusión del conocimiento y el impulso de la industrialización de la metodología  


  • MDA Modeling in Software Engineering (MiSE), taller que se celebra dentro del marco de la International Conference of Software Engeenering [ICSE], centrada sobre todo en la promoción del uso de modelos en los sistemas software.


Aplicaciones Prácticas en la Industria


Basándonos en los estudios realizados y presentados en las conferencias MODELS se pueden extraer como resumen, varias ideas básicas. En primer lugar, la industria está presente en conferencias sobre MDA, aunque se detecta que en muchos casos van de la mano de colaboradores del mundo académico. Así, se presentan ponencias en donde los autores no son exclusivamente del ámbito industrial.


Aplicaciones Prácticas en la Industria



Conclusiones sobre

MDA


El éxito de la aproximación MDA se ha circunscrito básicamente al ámbito académico, teniendo una repercusión en menor en entornos industriales. Bajo un punto de vista del impacto de las nuevas tecnologías, hoy por hoy las tecnologías aplicadas por la industria, evolucionan de forma vertiginosa. 

Las comunidades de desarrolladores trabajan de forma colaborativa, avanzando, depurando y mejorando las mismas en un tiempo relativamente corto. En el caso de MDA, se observa que la comunidad Eclipse enseguida entendió que podía ser una metodología interesante.


Por otro lado el impacto que la aproximación MDA ha tenido sobre la industria no ha sido especialmente relevante. Sólo las grandes empresas dedican un esfuerzo en investigar para aplicar esta metodología a sus propios procesos productivos, sobre todo en el ámbito de sistemas empotrados o sistemas hardware, pero las ideas más importantes de la aproximación MDA, el metamodelado y las transformaciones, no parece que despierten interés en la industria.



Model Driven Development


MDD

Es un paradigma para el desarrollo de software que tiene los modelos como principal elemento del proceso del desarrollo.

Genera código (semi) automáticamente a partir de modelos.

Características


- Permite el desarrollo ágil 
Mejora la productividad 
Simplifica el proceso de diseño
Aumenta la calidad del software 
Mejor comprensión del sistema a desarrollar 
Facilita evolución y mantenimiento 
Promueve la comunicación entre desarrolladores y arquitectos

Tendencias mdd




mdd_mda

By Brian Díaz

mdd_mda

Tendencias y Herramientas de MDA y MDD

  • 1,068