Le petit framework Flampy va évoluer afin de proposer une approche de type MDA : Model Driven Architecture.
Le but est désormais de réaliser un framework PHP équivalent à la 'suite' Spring/Hibernate/AndroMDA du monde Java.
C'est très ambitieux mais surtout prometteur.
Je viens enfin de trouver un éditeur totalement libre et gratuit pour faire des diagrammes de classes afin de les exporter en XMI 2.1, ce qui était le gros pré-requis pour une utilisation simplifiée pour tout le monde (AndroMDA conseille MagicDraw qui est payant)
Les gratuits :
- Eclipse MDT (difficilement intégrable avec PDT pour le moment, il faut un eclipse 3.4, et l'éditeur graphique a des bugs)
- Bouml (export XMI 2.1 mais je trouve l'utilisation très pénible et peu conviviale)
Les payants :
- MagicDraw
- RSA/RSM 7 (XMi à la sauce Rose-IBM, possède beaucoup de fonctionnalités mais prix exorbitant)
- Eclipse UML Omondo (XMI non testé)
- Papyrus (XMI non testé)
Mon choix s'est donc porté sur le tout nouveau MDT qui m'a agréablement surpris. Il présente une ergonomie similaire à celle de RSA/RSM (notion de perspective et vues d'eclipse) que je trouve moins sympatique que l'ancien Rational Rose 2003 qui faisait appel à des boîte de dialogue plus grande.
Mais bon avec un bi-écran ou un très grand écran (pensez à moi c'est bientôt mon anniversaire ...), ce petit problème disparaît et vous arriverez à créer vos modèle assez rapidement !!
Voici 2 captures d'écrans montrant un diagramme de classe simplifiée et l'écriture du modèle UML au format XMI 2.1.


Flampy sera bientôt capable de lire le fichier de modèle XMI et de générer le code qui va avec (je travaille activement dessus) !!!!
Pour le moment Flampy dispose d'un installeur (un exemple ici) qui construit l'arborescence du projet en fonction d'un paramètrage, et qui à terme générera les classes de vos objets métiers ainsi que celles de vos services.
Dans un deuxième temps il générera également les scripts SQL et le mapping pour une utilisation directe avec l'ORM de Flampy.
Au final le développement de votre application sera composé de seulement quelques étapes :
- Conception du modèle UML
- Utilisation de l'installeur de Flampy
- Ecriture de la logique métier de vos services
- Ecriture des l'IHM de votre application (En Flex ou XHTML)
L'installeur fonctionne, et je travaille sur l'amélioration du traitement du fichier Xmi (Uml).
Je mettrai bientôt une préversion en téléchargement de cette nouvelle version 0.2 ;)
Comme on dit Work In Progress !!!