Police plus grande
Police plus petite
Accueil > Produits > Mia-Studio > Description

Mia-Studio : l'expérience du MDA

Imprimer

Mia-Studio est fourni sous deux modes :

  • La licence Architect permet d'écrire les générateurs de code. Ces générateurs garantissent le respect des normes d'architecture dans le code généré ;
  • La licence Developer permet de générer du code applicatif à partir d'un  modèle des spécifications. Ce code généré sera complété de fragments de code manuel en totale traçabilité.
     

Mia-Studio est fourni sous deux modes
 

Cycle de vie MDA

La pratique du MDA repose de manière simplifiée sur :

  • La modélisation du besoin métier/fonctionnel
    par exemple en UML avec un modeleur du marché (MagicDraw, RSA, Enterprise Architect, etc...). Ces modèles UML contiennent des stéréotypes qui sont définis pour le projet ;
  • L'écriture de générateurs de code
    qui exploitent les modèles UML stéréotypés et respectent les standards d'architecture et les règles de codage projet. Ces générateurs  comprennent des zones balisées destinées à être complétées par les développeurs.
     

Le cycle de travail des développeurs est :

  1. Récupérer la dernière version du modèle,
  2. Lancer une génération (qui n'écrase pas les compléments manuels entrés jusque là),
  3. Compléter les zones qui leur sont réservées.
     

Le développeur utilise Mia-Studio Developer pour lancer de la génération, analyser des erreurs éventuelles, analyser les zones et composants qui ont évolués...

Mia-Studio dispose de nombreuses fonctionnalités permettant l'écriture, la mise au point, la traçabilité, la réutilisabilité, l'industrialisation agile de générateurs de code.
 

Le cycle de travail des développeurs
 

 

Features

 

Edition Architect Developer
Distribution Enterprise Community Enterprise Community
Lancement d’une génération         
Création de lanceurs  X X X X
Possibilité de générer dans un répertoire différent de la source  X   X  
Préinitialisation possible d’un dictionnaire de valeurs  X   X  
Ecriture des fichiers uniquement si différents  X   X  
Pilotable par programmation (APIs)  X X X X
Lancement de transformations de modèles X   X  
Traçabilité d'une génération        
Différences entre deux générations  X   X  
Visualisation des zones manuelles/générées  X   X  
Liste des fichiers non regénérés  X   X  
Détection du code manuel hors balise  X   X  
Détection des balises non regénérées  X   X  
Métriques de génération  X   X  
Edition des scripts de génération        
Edition de templates X X n/a n/a
Edition de scripts Java X X n/a n/a
Edition de règes de transformation de modèles X   X  
Complétion automatique  X X n/a n/a
Colorisation syntaxique  X X n/a n/a
Références croisées  X X n/a n/a
Recherche par nom / contenu / type  X X n/a n/a
Optimisation par cache X   n/a n/a
Préservation du code manuel par tags paramétrables  X X n/a n/a
Possibilité de tags sur une seule/plusieurs ligne(s)  X X n/a n/a
Préconditions sur les templates  X X n/a n/a
Environnement extensible par plugin  X   n/a n/a
Export et Cryptage des générateurs (prx, dat, html doc) X   n/a n/a
Packaging par archive  X   n/a n/a
Modèles        
Browser de modèle  X X n/a n/a
Comparaison de modèles X   n/a n/a
Browser de métamodèle  X X n/a n/a
Support de UML 1.x X X n/a n/a
Support de UML 2.x  X  X n/a n/a
Support des profils UML X X n/a n/a
Support de méta-modèles MOF X   n/a n/a
Support de méta-modèles eCore  X   n/a n/a
Support de méta-modèles DTD X   n/a n/a
Support de méta-modèles XMLSchema X   n/a n/a
Debugging         
Notification des scripts en erreur  X X n/a n/a
Notification des erreurs de génération (erreurs clickables)  X X n/a n/a
Lancement de générations unitaires X X    
Trace de génération navigable  X   n/a n/a
Plugins de génération        
Eclipse X X X X
RSA X   X  
MagicDraw X   X  
Maven X X X X
Travail en équipe         
Notification automatique lors d’une modification concurrente  X   n/a n/a
Eclipse Ready