SIDE-ALPHA:BlueXML Developer Studio/fr
From SIDE-Labs.org
| |
|
|
|
|---|
Contents |
Aide d'BlueXML Developer Studio
|
Comment convertir un fichier ArgoUML vers un fichier OBL ?
Ce tutoriel explique comment convertir vos fichiers ArgoUML vers des fichiers OBL dans le cas où vous souhaitez utilisez l'éditeur fourni par BlueXML Developer Studio. |
|
Comment créer un nouveau diagramme ?
Ce tutoriel explique comment créer un nouveau diagramme à partir d'Eclipse. |
|
Comment configurer un diagramme de cas d'utilisation ?
Ce tutoriel explique comment créer un cas d'utilisation simple et de le configurer. |
Road Map
- Transformations ATL
- Créer une transformation ATL pour convertir des modèles UML2 vers OBL.
- Créer une transformation ATL pour obtenir les métriques d'un modèle (KM32Metrics ; ModelMeasurement with ATL)
- Documentation HTML
- Utiliser Acceleo pour générer la documentation HTML
- Donner la possibilité de publier sur un serveur FTP
- Possibilité de cliquer sur une classe dans un diagramme et de voir la documentation de la classe concernée
- Intégrer dans la documentation d'une classe, la liste des diagrammes contenant cette classe
- Ajouter une barre de progression pendant la génération
- BlueXML Diagram Editor
- Intégrer la traduction des classes et des attributs dans les modèles
- Intégrer des contraintes OCL dans les modèles
- Ajouter un éditeur pour simplifier la saisie de la vue et du layout (avec un aperçu)
- Ajouter un hyperlien sur les éléments du modèles
- Intégrer des tests JUnit
- Ajouter deux boites à cocher dans les fenêtres de dialogues des classes pour indiquer si elles sont UI ou nomenclature. La validation devra connecté la classe à un stéréotype et le créer si besoin.
- Ajouter 2 booléens pour savoir si on doit générer le getter et le setter en Java
- BlueXML Developer Studio
- Créer une perspective PortalAdministrator pour générer simplement le portail, la documentation (à publier après), pour vérifier les modèles et les évaluer, pour organiser toutes les fonctionnalités d'un administrateur dans une perspective.
- Créer un assistant de création de fichiers REF et d'éditeur de fichiers REF permettant de cocher simplement les modèles que l'on souhaite activer et disponibles dans l'espace de travail. C'est une méthode pour oublier la syntaxe des fichiers REF.
- Comparaison/Différence de modèles EMF Compare
- Créer un utilitaire pour naviguer dans les modèles
Schéma global
Nous expliquons dans cette partie le travail réalisé par BlueXML Developer Studio en général. Auparavant, les modèles étaient créés à l'aide de l'outil ArgoUML. BlueXML souhaitait changer d'éditeur pour créer facilement des diagrammes et que l'éditeur s'adaptent aux modèles et non l'inverse. Nous avons choisi de créer plusieurs plugins à intégrer dans l'IDE Eclipse.
La première partie expliquée est le métamodèle créé. Après, nous expliquerons comment convertir nos fichiers ArgoUML vers des fichiers OBL. Ensuite, nous étudierons l'éditeur pour finir sur les transformations disponibles.
Description de notre métamodèle
Bien sûr, nous avons plusieurs éléments en commun avec le métamodèle UML. Nous avons besoin dans le projet BlueXML de créer 2 types de diagrammes : les cas d'utilisation et les diagrammes de classes.
Elements communs
- Package : C'est le noeud principal de chaque diagramme
- ModelElement : C'est un élément abstrait qui est relié avec des commentaires des tags, des méta-infos et des stéréotypes.
- Stereotype
- Tag
- Enumeration
- Generalization
- Meta-info : Cet élément est utile pour représenter des informations supplémentaires pour configurer le portail.
- Comment
Elements spécifiques aux cas d'utilisation
- Profile (or actor)
- Use case
- Link : C'est le lien entre un acteur et un cas d'utilisation.
- Include : C'est le lien entre deux cas d'utilisations.
Elements spécifiques aux diagrammes de classes
- Class
- Association
- Attribute
- Operation
- Parameter (of an operation)
Conversion à partir d'ArgoUML
Si nous créons un éditeur spécialisé, nous devons convertir nos modèles sous ArgoUML vers notre nouveau métamodèle. Nous devons donc créer une transformation de modèles. Nous avons fait le choix d'utiliser un autre plugin pour commencer. C'est le plugin Argo2Ecore qui permet de transformer des fichiers ArgoUML vers des fichiers eCore. Le format eCore est utilisé pour décrire des métamodèles et pas des modèles. La syntaxe est quasi équivalente à un diagramme de classes.
Nous avons créé un nouveau plugin basé sur le plugin Argo2Ecore pour transformer nos fichiers ArgoUML vers des fichiers OBL. Nous avons créé une transformation à partir des fichiers XMI conformes au métamodèle UML1.x mais nous avons ajouté un raccourci à partir de nos fichiers ArgoUML. Les fichiers ArgoUML sont de simple fichiers compressés. Le raccourci consiste donc à extraire le fichier XMI, le convertir puis le supprimer.
Génération de notre éditeur
Nous avons généré notre éditeur avec Topcased. Topcased est basé sur GEF et permet de créer un éditeur simplement avec un métamodèle. Nous créons notre métamodèle, puis une configuration pour l'éditeur et deux configurations de diagramme et nous obtenons notre éditeur.
Il est important de noter que l'éditeur généré à cette étape est utilisable mais pas très pratique à utiliser. Dans le projet BlueXML, nous souhaitons que les modèles puissent être créés facilement. Nous avons donc ajouté des fenêtres de dialogues sur chaque élément si vous double cliquez dessus.
Une méta-information est une information ajoutée à un élément pour configurer le portail généré. Cet élément ne doit pas être créé à lam main mais automatiquement grâce aux fenêtres de dialogues. Toutes les possibilités sont offertes à l'utilisateur.
Génération du format PIVOT
Auparavant, une transformation à partir du fichier XMI vers le format PIVOT existait. Le fichier XMI était obtenu après décompression du fichier ArgoUML. Le PIVOT est utilisé pour générer le portail. Avec le nouvel éditeur et le nouveau métamodèle, nous devons créer une transformation à partir du format OBL vers le format PIVOT.
Beaucoup de similitudes existent entre la transformation XMI2PIVOT et la transformation OBL2PIVOT. Nous créons une nouvelle transformation basée sur la transformation XMI2PIVOT. Avec le nouvel éditeur, un modèle peut inclure d'autres modèles externes, nous devons donc ajouter le concept de modèle global qui inclue plusieurs fichiers OBL. Pour générer le portail avec plusieurs fichiers OBL ou pour voir le PIVOT, nous devons créer un fichier REF qui contient tous les fichiers OBL utilisés. Nous avons fusionné les deux transformations et nous pouvons regarder le format PIVOT comme cela : http://demo.BlueXML.org:9999/UMLFormsDesigner/xmi2pivot/REF_FILE/FOLDER
La régénération du portail utilise maintenant des fichiers ArgoUML et des fichiers de référence REF. Ainsi nous devons déplacer les fichiers ArgoUML dans un autre dossier si nous ne voulons pas que la génération utilise les fichiers ArgoUML.
Génération de fichier XMI
Nous travaillons sur une autre transformation. Cette transformation permet d'extraire de nos modèles conformes à notre méta-modèle, un fichier XMI conforme au méta-modèle UML. Cette transformation permet d'importer nos modèles dans d'autres outils de modélisation tels qu'argoUML, Rational Rose...
Cette transformation est faite avec ATL (Atlas Transformation Language). Elle peut être utilisée avec des outils intégrant ATL tels que la nouvelle version d'AndroMDA.
Outils supplémentaires
Nous travaillons actuellement sur d'autres outils pour simplifier la gestion des modèles. Nous avons presque fini le premier outil qui valident un fichier de référence. Cette validation permet de savoir si la génération du PORTAIL sera correcte et si tous les éléments sont présents.
Un autre outil développé actuellement doit créer des images de tous les modèles automatiquement.
Nous travaillons aussi sur un autre outil permettant de créer une carte avec tous les modèles. Cette carte permettra de voir les dépendances entre modèles et voir aussi les liens cassés.



