Articles Marqués ‘MDSD’
Par Cédric Vidal • 20 avr, 2010 • Catégorie: Eclipse RCP, Java, Model Driven
Je viens de découvrir Actifsource, un environnement commercial de modélisation et de génération de code. Les captures d’écran sur le site de l’outil ont immédiatement attiré mon attention car elles montrent l’éditeur positionné sur un template de génération de code Java avec coloration syntaxique des mots clefs du langage !
Hors, le saint graal de la génération de code, du point de vue de l’auteur de templates, c’est justement de pouvoir éditer un template de génération de code de la même manière qu’il écrirait le code avec son éditeur moderne favori (le JDT par exemple). Avec un éditeur de template traditionnel moderne comme Acceleo, on bénéficie de la complétion des éléments du méta-modèle d’entrée mais les mots clefs du langage cible sont de simples caractères ASCII, ce ne sont pas des éléments de modèle reconnus par l’éditeur.
J’ai donc suivi le tutorial de création d’un service simple. Le premier point remarquable est que l’environnement permet d’éditer le méta-modèle ET le modèle dans le même diagramme:
Cette possibilité offre une grande souplesse, cela permet d’instancier le modèle et de vérifier le méta-modèle au fur et à mesure que le méta-modèle est conçu.
Par contre, comme EMF (le framework de méta-modélisation de prédilection …
Par Grégory Levilain • 12 fév, 2010 • Catégorie: Model Driven, news
Obeo a profité du premier PMC Obeo Network, jeudi soir, pour annoncer à ses partenaires l’arrivée prochaine d’Acceleo 3, prévue fin Juin.
Il reste néanmoins du travail pour finaliser cette version dont les fonctions de “traçabilité” ne sont pas encore opérationnelles. La traçabilité tient un rôle essentiel dans le développement de générateurs en offrant la capacité de “remonter” du code généré au template de génération ou au modèle d’entrée.
Acceleo 3 introduit un nouveau format pour les “templates” de génération.
Se pose du coup la question de la migration des modules actuels du network Obeo, c’est à dire ceux qui sont publiquement disponibles. Obeo ne prévoit pas cette migration dans l’immédiat. Elle pourra être faite par la suite par le biais d’une “moulinette” qui transformera les anciens templates (.mt) dans le nouveau format (.mtl). Obeo a choisi cette méthode plutôt que d’assurer une compatibilité directe entre la version 3 et la version 2.6 actuelle.
Ce choix n’est pas surprenant pour une société dont le cœur de métier repose justement sur les “transformations”.
Quelques vidéos de démonstration sont disponibles sur le wiki Eclipse : vidéos de démonstration Acceleo.
Par Cédric Vidal • 3 juil, 2009 • Catégorie: Model Driven
Récemment, j’expliquais ce que pouvais donner le scaffolding appliqué au MDSD. Voici maintenant un exemple de scaffolding “aveugle” prenant en entrée un modèle UML et implémenté à l’aide du langage de transformation modèle à modèle ATL. Nous utilisons la toute dernière version 3.0.0 d’ATL sortie avec Eclipse Galileo.
Voici un diagramme présentant la vue d’ensemble:
Nous reprenons le cas décrit dans les slides de l’article précédent, une architecture 3-Tiers classique avec les concepts d’Entity et de DAO modélisés avec le langage UML. Voici un diagramme du modèle UML d’entrée. Le diagramme a été créé avec UML2Tools qui fait partie de la release train Galileo:
Voici le modèle UML attendu en sortie:
Il s’agit ici de scaffolding “aveugle” pour reprendre la taxonomie proposée précédemment. Il est aveugle parce que les éléments du modèle d’entrée ne peuvent pas “voir” les éléments scaffoldés comme l’illustre le diagramme suivant:
Le scaffolding est ici généré de manière statique avec le langage de transformation modèle à modèle ATL. La transformation que nous allons définir peut se résumer ainsi:
Pour chaque Entity qui n’a pas de DAO associé, créer un nouveau DAO et l’associer à …
Par Arnaud Buisine • 3 juil, 2009 • Catégorie: Java, Model Driven, Productivité, news
Cette année, les Rencontres Mondiales du Logiciel Libre se tiendront du 7 au 11 juillet à Nantes. Elles affichent un programme très riche avec pas moins de 20 thématiques différentes réparties sur 5 jours.
Parmi ces thématiques un track MDSD, centré sur ATL, sera l’occasion pour la communauté d’animer le premier Eclipse Acceleo Day. Acceleo fait partie du projet Eclipse Model to Text (M2T). Les architectes ProxiAD seront présents lors de cet événement avec notamment une intervention le vendredi 10 en début d’après midi sur le Scaffolding MDD/MDSD.
L’accès à ces rencontres est gratuit. Pour vous enregistrer : RMLL 2009
Par Cédric Vidal • 18 juin, 2009 • Catégorie: Model Driven
Le scaffolding est un principe bien connu des utilisateurs de Ruby on Rails. ROR a en effet démocratisé ce principe en le plaçant au cœur de son fonctionnement. Il constitue la pierre angulaire de la productivité et de la simplicité apportée par ROR et a depuis été copié par de nombreux frameworks comme Grails et plus récemment Spring ROO. Pour une définition de son application dans ce type de frameworks web, je vous invite à consulter la définition wikipedia ou ce tutorial ROR. Cette définition est selon moi trop limitée au cadre de la base de donnée mais bon ça donne une idée.
Donc, après m’être intéressé à ces frameworks, je me suis penché sur son application dans le domaine du MDSD. Cet article vise donc à expliquer ce que peut donner le scaffolding dans ce cadre.
Le problème, c’est que le scaffolding fait partie de ces concepts pourtant simples que j’ai paradoxalement du mal à expliquer donc plutôt que de m’attarder en de veines tentatives d’explications théoriques, j’ai préféré tenter une explication par l’exemple et en images sous la forme de slides.
Enfin, que serait une explication sans cas d’application ? Cet article constitue …
Par Cédric Vidal • 22 mai, 2009 • Catégorie: Model Driven, news
Jusqu’à maintenant, les projets sur lesquels j’ai été amené à travailler ont été des projets au forfait à forte teneur en industrialisation qui ne mettaient pas en œuvre de méthodes agiles. Je ressens cela comme un manque. A fortiori parce que je suis convaincu de l’intérêt des méthodes agiles depuis un moment mais je n’ai tout simplement pas encore eu le temps de m’y pencher. J’ai donc décidé récemment de m’y mettre sérieusement.
Le déclencheur a été le JavaCampParis 4 organisé dans les locaux de Google à Opéra. Pour ceux qui ne savent pas ce qu’est un Barcamp, Nicolas Martignole explique avec beaucoup d’humour son fonctionnement sur son blog.
Cédric chez Google au JavaCamp 4 après que beaucoup soient partis
Lors de ce Barcamp, deux sessions m’ont particulièrement marqué. Le sujet de la première était le MDSD, l’un de mes sujets de prédilection, sujet sur lequel j’aurai l’occasion de revenir très prochainement. J’ai pris grand plaisir à participer à son animation, en particulier parce qu’il y avait des agilistes présents pour confronter leur approche au model-driven. La seconde traitait de TDD, d’eXtreme Programming et de méthodes agiles. Au cours de cette séance, des agilistes expérimentés ont fait part de …
Par Cédric Vidal • 27 avr, 2009 • Catégorie: Java, Model Driven, Non classé, news
Je me présente, Cédric Vidal, Architecte Technique chez ProxiAD, spécialisé en architectures JEE Model-Driven.
Je suis confronté au quotidien à la fois à des problématiques de production touchant à la performance, la fiabilité et à des problématiques d’industrialisation des développements touchant à l’amélioration de la qualité, l’optimisation des coûts de développement et d’un point de vue général à l’amélioration continue du processus d’ingénierie des développements entreprise.
L’objectif est d’apporter une vision pertinente et pragmatique sur ce domaine, en mettant l’accent sur les bonnes pratiques, des retours d’expérience sur des architectures que j’ai rencontrées, qu’ils soient bons ou mauvais.
Je vais donc vous parler de ces sujets, de l’actualité dans ce domaine, et de mes retours d’expérience.
En vous souhaitant bonne lecture !
|