Construit sur Eclipse 3.4 (Ganymede) et embarquant le moteur de transformation agile Blu Age, M2Improve Foundations est un générateur d’applications dirigé par des modèles qui transforme les diagrammes UML 2 en applications Java prêtes à être déployées.
M2Improve Foundations permet de générer automatiquement l’ensemble des couches applicatives, de la représentation des données métiers à la gestion des actions de navigation et formulaires de données. Le processus de génération des applications exécute une série de transformation de modèles UML et de génération du code source selon les technologies cibles. Ces transformations sont paramétrées dans les cartouches de génération (BSP).
La représentation des interfaces utilisateurs est décrites dans des pages JSP, constituées principalement de composants ‘Struts Layout’. Pour cela, M2Improve Foundations intègre l’outil ‘EasyStrutsLayout’ d’Improve Foundations. Cet outil est un éditeur de JSP adapté à la bibliothèque ‘Struts Layout’ pour faciliter la création des interfaces utilisateurs, offrant plusieurs fonctionnalités dont :
Le processus de génération est décrit dans un workflow de transformation ‘M2Improve.workflow’, permettant de définir l’enchaînement de plusieurs cartouches (BSP), chacune étant dédiée à une couche applicative ou technologie cible (persistance, services...).
Le workflow de transformation génère trois projets, chacun correspondant à l'une des couches traditionnelles des applications basées sur Improve Foundations. On retrouve ainsi les différentes couches avec leur code source et leurs fichiers de configuration respectifs :