¿Qué es AndroMDA? Definición | Desarrollo de software

AndroMDA es un marco generador basado en el desarrollo de software basado en modelos. Proporciona los requisitos previos básicos para convertir diagramas UML en código de programa utilizando herramientas externas.

El marco de código abierto se diseñó originalmente con Java en mente. Se basa en el desarrollo de software basado en modelos (Model Driven Architecture, MDA) y, por lo tanto, se basa en la generación de software basado en modelos. Puede procesar modelos estáticos y dinámicos en código de programa para diferentes plataformas.

Gracias al enfoque de código abierto, sin embargo, es posible adaptar el marco para cualquier lenguaje de computadora, el proyecto también menciona HTML y PHP, entre otras cosas.

Desarrollo basado en UML

El marco del generador usa diagramas UML para crear aplicaciones a partir de ellos: un desarrollador trabaja relativamente poco en el código fuente real, pero mapea las funcionalidades, capas y relaciones planificadas en forma de UML.

AndroMDA no ofrece su propia herramienta para modelar las estructuras UML para este propósito; se requiere una herramienta externa con la que primero se debe crear un modelo del software. Al elegir una herramienta, lo único importante es que puedes generar diagramas en formato XMI (XML Metadata Interchange) y ofrece características como restricciones UML o la creación de diagramas de clases y diagramas de actividades.

El proceso de construcción real también está controlado por una herramienta de gestión de construcción externa, por ejemplo, Apache Ant o Maven. AndroMDA simplemente proporciona el «kit de herramientas» con el que los diagramas UML se pueden convertir en código de programa.

Desarrollo basado en modelos para varias plataformas Java

Desarrollo basado en modelos para varias plataformas Java
Desarrollo basado en modelos para varias plataformas Java

Una idea central de MDA es el mapeo de software independiente de la plataforma en diagramas, que por lo tanto se puede reutilizar según sea necesario. AndroMDA también acepta diagramas UML generales y los usa para generar automáticamente código de programa para varias arquitecturas de destino. Por tanto, es posible generar software para una amplia variedad de plataformas con un solo modelo.

AndroMDA lee la información de los archivos XMI y la convierte internamente en su propio metamodelo. Este modelo se puede transformar según sea necesario para la plataforma correspondiente.

Módulos

Los módulos individuales con los que AndroMDA UML genera código para diferentes arquitecturas de destino se denominan cartuchos en el marco. Contienen toda la información necesaria para una generación de código exitosa: descripción del modelo, plantillas, descriptores y archivos de prueba.

La descripción del modelo proporciona metafachadas que sirven como interfaz entre el modelo UML y el metamodelo generado. Las plantillas contienen las plantillas necesarias para generar los archivos de salida específicos de la plataforma. Los descriptores contienen definiciones para todos los componentes del cartucho, por ejemplo, plantillas, metafachadas o estereotipos. Y los archivos de prueba contienen información para probar el código generado.

AndroMDA viene con cartuchos para las siguientes tecnologías:

  • BPM4Struts
  • jBPM
  • JSF
  • EJB
  • EJB3
  • Java
  • Meta
  • Servicio web
  • XmlSchema

AndroMDA ofrece la posibilidad de sobrescribir recursos individuales de un cartucho y así adaptar ciertos aspectos del cartucho. También es posible crear tus propios módulos si es necesario.

Deja un comentario